j磁盘阵列怎么做
发布网友
发布时间:2022-05-12 08:43
我来回答
共3个回答
懂视网
时间:2022-05-19 07:12
JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML 的<script> 元素是一个例外。利用 <script> 元素的这个开放策略,网页可以得到从其他来源动态产生的 JSON 资料,而这种使用模式就是所谓的 JSONP。用 JSONP 抓到的资料并不是 JSON,而是任意的JavaScript,用 JavaScript 直译器执行而不是用 JSON 解析器解析。
上面一段话来自百度百科,概念永远是那么抽象难懂,看例子才是最直观的表现。例子看的多了,领悟到那个点了,自然自己也会学着抽象的描述了。这就是为什么常说“学习知识是从薄到厚,又由厚到薄的过程”。好了扯远了。下面直接来看一个例子。
问题:本地现有一个页面demo.html需要从http://localhost:3561/User/GetAllNames获取数据并展示。
解答:由于问题中的两方不在同一服务器,故需要使用jsonp来跨域访问。
① 客户端编写
客户端使用jQuery中提供的$.getJson方法来跨域访问。getJson有3个参数:
I. url:请求地址;
II. data:发送到服务端的参数;
III. callback:成功时的回调函数。
getJson的使用方法和普通的$.get方法基本一致,不同的地方在于getJson需要在url后面的参数部分加上callback=?这一固定部分,jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。然后在回调函数中操作从异域返回的json对象,回调函数callback的参数即为该json对象。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<ul id="nameList"></ul>
<script src="http://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript">
$.getJSON("http://localhost:3561/User/GetAllNames?callback=?", function(json) {
for (var i = 0; i < json.length; i++) {
$("#nameList").append("<li>" + json[i] + "</li>");
}
});
</script>
</body>
</html>
② 服务端编写
服务端的逻辑主要是将数据序列化为json字符串,然后封装成"callback(json)"的形式,callback为jQuery自动生成并传到服务端的函数名称。下面使用C#实现:
public class UserController : Controller
{
public string GetAllNames(string callback)
{
string[] names = new string[] { "张三丰", "张无忌", "令狐冲", "杨过", "郭靖" };
JavaScriptSerializer jss = new JavaScriptSerializer();
string json = jss.Serialize(names);
return string.Format("{0}({1})", callback, json);
}
}
至此,便成功解决了问题。
思考:如果服务端已经写死了callback(如:return string.Format("moty({0})", json);),那么客户端该怎么写呢?
参考:
$.ajax("http://localhost:3561/User/GetAllNames", {
jsonpCallback: "moty",
dataType: "jsonp",
success: function(json) {
for (var i = 0; i < json.length; i++) {
$("#nameList").append("<li>" + json[i] + "</li>");
}
}
});
热心网友
时间:2022-05-19 04:20
如何组建
作为存储设备中的一员,硬盘起着极其重要的作用,我们的大多数数据都是通过硬盘来存储。今天我们将深入了解硬盘的内部世界,并掌握双硬盘以及RAID磁盘列阵的安装方法。
解读硬盘
尽管在外部结构方面,各种硬盘之间有着一定的区别,但是其内部结构还是大同小异的,毕竟硬盘的本质工作方式不会改变。打开硬盘外壳之后,我们也就能够看到神秘的内部世界,其核心部分包括盘体、主轴电机、读写磁头、寻道电机等主要部件。不过需要提醒大家的是,千万不要随意打开硬盘的外壳,这将100%使整个硬盘报废,因为硬盘的内部盘面不能沾染上一粒灰尘,否则必定报废。一般硬盘内部结构维修需要在要求极为严格的无尘实验室中进行。
1.盘体
盘体从物理上分为盘片、磁面(Side)、磁道(Track)、柱面(Cylinder)与扇区(Sector)等4个部分。磁面也就是组成盘体各盘片的上下两个盘面,第一个盘片的第一面为0磁面,下一个为1磁面;第二个盘片的第一面为2磁面,依此类推……。磁道也就是在格式化磁盘时盘片上被划分出来的许多同心圆。最外层的磁道为0道,号数向着磁面中心递增。事实上,硬盘的盘体结构与大家熟悉的软盘非常类似。只不过其盘片是由多个重叠在一起并由垫圈隔开的盘片组成,而且盘片采用金属圆片(IBM曾经采用玻璃作为材料),表面极为平整光滑,并涂有磁性物质。
2.读写磁头组件
读写磁头组件由读写磁头、传动臂、传动轴三部分组成。在工作时,磁头通过传动臂和传动轴以指定半径扫描盘片,以此来读写数据。磁头是集成工艺制成的多个磁头的组合,采用非接触式结构。硬盘加电后,读写磁头在高速旋转的磁盘表面相对飞行,磁头距离磁盘表面的间隙只有0.1~0.3μm。新型MR(Magnetoresistive heads)磁阻磁头采用读写分离的磁头结构,写操作时使用传统的磁感应磁头,读操作则采用MR磁头。
3.磁头驱动机构
对于硬盘而言,磁头驱动机构就好比是一个指挥官,它控制磁头的读写,直接向传动臂与传动轴传送指令。磁头驱动机构主要由音圈电机、磁头驱动小车和防震动机构组成。磁头驱动机构对磁头进行正确的驱动,在很短的时间内精确定位到系统指令指定的磁道上,保证数据读写的可靠性。一般而言,磁头机构的电机有步进电机、力矩电机和音圈电机三种,现在硬盘多采用音圈电机驱动。音圈是中间插有与磁头相连的磁棒的线圈,当电流通过线圈时,磁棒就会发生位移,进而驱动装载磁头的小车,并根据控制器在盘面上磁头位置的信息编码来得到磁头移动的距离,达到准确定位的目的。
4.主轴组件
硬盘的主轴组件主要是轴承和马达,我们可以笼统地认为轴承决定一款硬盘的噪音表现,而马达决定性能。当然,这样说并不完全,但是基本上表达了这两个部件在硬盘中的重要地位。从滚珠轴承到油浸轴承再到液态轴承,硬盘轴承处于不断的改良当中,目前液态轴承已经成为绝对的主流产品,金属之间不直接摩擦,这样一来除了延长主轴电机的寿命、减少发热之外,最重要一点是实现了硬盘噪声控制的突破。不过需要指出的是,采用液态轴承对于性能并没有任何好处,甚至反而会延长寻道时间。对于PC设备而言,似乎噪音与性能是一对永远难以平衡的矛盾。
双硬盘的安装
随着宽带网以及多媒体技术的普及,我们对于硬盘的容量需求越来越大。在各种大型软件、视频动画、3D游戏的*下,很多用户都在考虑添加一块硬盘。事实上,安装双硬盘并不是一件麻烦的事情,即便你没有任何经验,也可以在我们的帮助下轻松搞定。
目前的主流主板至少提供了一个IDE接口,而每个IDE接口能够安装两块IDE硬盘。在安装双硬盘之前我们首先要做的就是对硬盘的跳线进行设定,因为此时必须设定主从模式。一般而言,硬盘的主从跳线的位置在硬盘末端数据线接口和电源线接口的中间,由3~4组插针和1~2个跳线帽组成的。硬盘跳线的设定模式一般有三种,主(MASTER)、从(SLAVE)和自动选择(CABLE SELECT),建议大家都全设置为CABLE SELECT。
在安装硬盘之前,首先我们在两片硬盘中选择出性能好一些的硬盘来作为系统引导硬盘,将它连接在80pin数据线的末端,然后将另一块硬盘连接在数据线的中间。如果两个硬盘都支持ATA100/133,建议直接将双IDE硬盘连接在一个IDE通道,避免与ATA33的光驱共用通道。而如果其中一个老硬盘只能支持ATA66/33,那么建议将它与光驱安装在一个IDE通道。
SATA与IDE硬盘和睦相处
SATA与IDE硬盘采用完全不同的接口,因此要和睦相处并不困难。连接好数据线与电源接口之后,大家只要在BIOS中指定哪个硬盘作为启动盘即可。此时BIOS中SATA通道完全不与IDE通道共用,一般直接通过一个选项来决定将哪个硬盘作为启动盘。而如果使用PCI接口的SCSI卡安装SATA硬盘,这需要在BIOS中将第一启动设备指定为SCSI,这样其优先权就会高于IDE硬盘。需要注意的是,不同品牌的主板肯定在设置上有所区别,但是大致方法如此,大家可以举一反三。
解决盘符交错问题
安装双硬盘就不能不说盘符交错问题。什么是“盘符交错”呢?举个例子吧。假设你的第一硬盘原来有C、D、E三个分区,分别标记为C1、D1、E1,第二硬盘有C、D两个分区,分别标记为C2、D2。一般情况下,安装双硬盘后,硬盘分区的顺序将为C-C1,D-C2,E-D1,F-E1,G-D2。原来第一硬盘的D、E分区变成了E、F盘,在C、E盘之间嵌入了第二硬盘的C分区,这就是“盘符交错”。“盘符交错”会引起安装双硬盘以前原有的软件因路径错误而无法正常工作。
此时我们可以采取以下两个措施来避免“盘符交错”:
方案一:
如果两块硬盘上都有主引导分区,可在BIOS中只设置第一硬盘,而将第二硬盘设为None,这样在Windows或Linux系统中就会按IDE接口的先后顺序依次分配盘符,从而避免“盘符交错”,而且也不会破坏硬盘数据。这样做还有另外的好处,如果在两块硬盘的主引导分区分别装有不同的操作系统,可以通过改变CMOS设置激活其中的一个硬盘,屏蔽另一个硬盘,从而启动不同的操作系统。缺点是在纯DOS系统下无法看到被BIOS屏蔽的硬盘。不过现在NTFS分区时代已经与DOS彻底决裂,因此这一缺陷几乎可以被忽略。
方案二:
只在第一硬盘上建立主分区(当然还可以有其它逻辑分区),而将第二硬盘全部划分为扩展分区,然后再在扩展分区中划分逻辑分区,就可以彻底避免“盘符交错”了。当然,对第二硬盘分区前,要备份好你的数据。Windows 2000/XP/2003操作系统自带了磁盘管理器,点击“开始”→“设置”→“控制面板”→“管理工具”→“计算机管理”,切换到“磁盘管理”,此时就可以对每个分区分配盘符。由于第二块硬盘已经不全在主分区,此时调配时没有任何*。
实战RAID 0
硬盘的速度直接影响到整个系统的效率,有时甚至比CPU和内存更为显着。为此,将双硬盘并行工作的RAID 0磁盘列阵开始流行起来,RAID 0磁盘列阵在读写数据时,系统将向两块硬盘同时操作,这项技术能够在不损失硬盘总容量的前提下大幅度提高磁盘性能。
在此次IDE硬盘的RAID 0实战中,我们采用Tekram DC200芯片为例向大家介绍。尽管它与常见的Promise和HighPiont芯片不同,但是使用方法还是基本一致,而SATA RAID的使用方法也几乎完全一样。其实使用RAID 0的关键是掌握RAID控制卡BIOS的设置,当我们把RAID控制卡安装好并接上两个硬盘时,系统开机就会出现如下的画面。
在MENU菜单中选择“1. SET RAID CONFIGURATION”,按回车键,此时我们就可以进入“SET RAID CONFIGURATION”界面。RAID控制卡将使用一段时间来识别硬盘,稍候我们把光标移动到硬盘,再按空格键来进行选择,按回车键确认选择,这时将弹出一个新的窗口显示可供选择的RAID的模式。共有4 种模式:JBOD(不适用RAID)、RAID 0、RAID 1、RAID 0+1。
毫无疑问,我们当然是选择“RAID 0”。然后大家可以通过STATUS(状态)菜单查看此模式是否被真正激活。至此,我们的RAID 0硬件安装就结束了,大家可以接着分区并安装操作系统操作了。值得注意的是,由于Windows并不能识别RAID控制芯片,因此它把RAID控制器识别为普通的SCSI控制卡。强烈建达大家在安装完Windows之后为RAID控制器装上正确的驱动程序,这不仅能够提高RAID系统的稳定性,还可以大幅度提高性能。此外,不少RAID控制卡还带有功能丰富的软件,可以帮助用户在Windows下查看RAID工作状态。
热心网友
时间:2022-05-19 05:38
第一步,选择你所要做的类型;第二步,一台专业服务器或是PC加阵列卡,当然最少有两块硬盘;第三步,按照主板说明书或是服务器说明书相关说明设置磁盘阵列卡BIOS;第四步,像普通安装系统一样装系统,当提示安装驱动时,装上对应的驱动;第五步,检查是否是自己所需要的磁盘阵列系统,到此,完成。