如第一代:中心服务器式,这种网络缺点是连不上服务器就惨了
第二代:洪泛式无服务器网络,这种网络缺点是规模一大就会自动崩溃,效率不高
第三代:基于Kademlia技术的无服务器网络,没有明显缺点。如BT中的DHT网络,eMule中的Kad网络。您好,大话四下服务器主要有以下几种:1云服务器:云服务器是一种基于云计算技术的虚拟服务器,可以提供灵活、可扩展的计算资源,可以满足企业的业务需求。2虚拟专用服务器:虚拟专用服务器是一种可以实现虚拟化的服务器,可以满足企业的业务需求。3共享服务器:共享服务器是一种可以实现资源共享的服务器,可以满足企业的业务需求。4分布式服务器:分布式服务器是一种可以实现资源分布的服务器,可以满足企业的业务需求。5高性能计算服务器:高性能计算服务器是一种可以实现高性能计算的服务器,可以满足企业的业务需求。分布式系统是其组件分布在联网计算机上,组件之间通过传递信息进行通信和动作协调的系统。从硬件方面来看,一个分布式系统是一组有网络连接的能够独立工作的计算机;从软件方面来看,分布式系统则是多个进程/线程相互协调工作,并支持特定目标完成的软件系统。实际中存在着多种多样的硬件组织结构,分布式系统软件也根据不同的硬件结构和应用领域展现出多种多样的模型和设计风格,同时,在因特网域的应用非常广泛。
当今世界,计算机网络已无处不在,因特网也是其中一个,它是有许多种网络组成的。移动电话网、企业网、校园网、家庭网等等。这些网络既可以单独使用,又可以结合使用,因为它们具有相同的本质特征。为此,人们开始发掘其中的潜力,寻求将网络中的计算机联合为一个整体,协同合作,以达到资源共享,从而发挥更大的计算效力。于是,分布式系统应运而生。
分布式系统发展的背景及推动因素
分时系统产生于7 0年代,不仅作为提高计算机利用率的手段,也使用户离计算机更
近。分时是迈向分布式系统的第一步:用户可以在不同的地点共享并访问资源。8 0年代是个人计算的1 0年:人们有了自己个人专用的计算机PC。到了9 0年代,基于微处理器的系统所提供的出色的性能/价格比和网络技术的稳步提高,分布式系统开始走进历史舞台。
分布式系统发展的主要推动因素有:
1、固有的分布式应用。分布式系统以一种很自然的方式开始存在,例如,在我们的社会中,人群在地理上是分布式的并且分布式地共享信息。一方面,一个分布式数据库系统中的信息产生于不同的分支机构(子数据库),因此本地访问可以很快进行;另一方面,系统也提供了全局视图来支持各种全局 *** 作。2、性能/成本。分布式系统的并行性减少了处理瓶颈,全方位提高了性能,也就是说,分布式系统提供了更好的性能价格比。3、资源共享。分布式系统能有效地支持不同地方的用户对信息和资源(硬件和软件)的共享。4、灵活性和可扩展性。分布式系统可以增量扩展,并能方便地修改或扩展系统以适应变化的环境而无需中断其运行。5、实用性和容错性。依靠存储单元和处理单元的多重性,分布式系统具有在系统出现故障的情况下继续运行的潜力。6、可伸缩性。分布式系统容易扩大规模以包括更多的资源(硬件和软件)。
分布式系统的定义
一个分布式系统是一个看似为普通系统,而又运行在一系列自治处理单元( P E)上的系统,每个P E都有各自的物理存储器空间并且信息传输延迟不能忽略不计。在这些P E间有紧密的合作。系统必须支持任意数量的进程和P E的动态扩展。
分布式系统可以有不同的物理组成:一组通过通信网络互连的个人计算机,一系列不仅共享文件系统和数据库系统而且共享C P U周期的工作站(而且在大部分情况下本地进程比远程进程有更高的优先级,其中一个进程就是一个运行中的程序),一个处理机池(其中终端不隶属于任何一个处理机,而且不论本地进程还是远程进程,所有资源得以真正的共享)。
物理的系统机构和逻辑的系统机构表示了这样一个系统,其属性要求为:
• 任意数目的进程。每个进程也被称做一个逻辑资源。
• 任意数目的P E。每个P E也被称做一个物理资源。
• 通过消息传递的通信。这提供了比主/从方式更合适的合作式消息传递方式。
• 合作式进程。进程间以一种合作的方式交互,或者说多个进程用于解决一个共同的应用而不是几个独立的应用。
• 通信延迟。两个P E间的通信延迟不可忽略。
另外,一个分布式系统还应有以下属性:
• 资源故障独立。没有任何单个逻辑或物理的资源故障会导致整个系统的瘫痪。
• 故障化解( graceful degradation)。系统必须提供在资源故障的情况下重新配置系统拓扑和资源分配的手段。
分布式系统的显著特征
分布式系统的主要目的是使用户方便简捷的访问远程资源,从而达到某种程度的资源共享。资源可以是任何东西:可以是硬件,如磁盘、打印机、处理器(CPU)、存储器、传感器或通信线路;也可以是软件,如进程、文件、视窗、网页、数据库等。基于此,分布式系统的基本特征为:资源共享、透明性、开放性、可调节性(可拓展性)。
资源共享:资源共享可以带来显著的经济效益,且便于协同工作,一般通过“资源管理器程序”模块来实现。不同的资源可能需要不同的管理方法和访问认证策略。资源管理器程序有两种常用的实现模型:1、客户\服务器模型;2、面向对象模型。在实现资源共享是,还必须妥善考虑系统的安全性。
透明性:分布式系统的目的是资源共享,而实现资源共享的目标之一为系统的透明性。我们希望一个系统在用户界面前呈现为一个透明的整体,而不是一组支离的构件。固然,由网络相连的一组相互分离的构件是分布式系统的基本属性,但正是这种相互分离彼此独立的属性才使我们能够进行并发计算、资源共享以及冗余容错。同时,这些内部属性不希望被用户所看见,故通过各种隐蔽技术,使得一个分布式系统像一台功能完备的计算机,而这正是透明性的真正含义所在。ISO RM-ODP所定义的8种透明性形式:访问、位置、迁移、重定位、复制、并发、故障、持续。
开放性:其是分布式系统实现中另一个重要目标。一个系统的开发程度取决于该系统所允许的扩展能力和包容力度。一个理想的开放性系统在接纳新的系统服务时,需要保证不影响不间断用户的使用,保证这些新增的服务于原来存在的服务之间不产生冲突和矛盾。实现开放性的关键在于标准化,目前,为了实现分布式系统的开放性所普遍采用的方法为:针对不同的资源提供相应的一套标准规则,用以描述各种服务的语义和语法。
可调节性:如果一个分布式系统能够自动地适应系统的结构规模,能够接受各种各样静态或动态的规模调整,则这个系统具备可调节性。对分布式系统进行系统调节就是要改善系统的性能,其性能的决定因素主要为两个:网络传输能力和服务器吞吐量。针对此,调节方法主要有3个:隐蔽通信延迟、资源分布和资源复制。
分布式系统的拓扑结构
基于网络的多机系统是分布式系统硬件结构的主流,这类系统价格低廉,组织灵活,结构多样,易于扩充,应用广泛。网络可以用来连接多处理器或者多计算机,而连接计算机的网络同时也呈现着多样性,故而,利用拓扑图可以实现描述这类系统的普遍特征。分布式系统的拓扑结构是一种抽象的示图方法,如下各图中,用结点代表网络中的计算机,边代表网络连接,在此主要给出以下5中典型的分布式系统拓扑结构,依次为:环形,星形,二叉树形,2维圆环形(正则形),全连通形。
在分析一个互连网络的拓扑结构时,通常使用以下度量参数:
1、结点数:网络中结点的个数体现了其规模大小,记作N;
2、结点:构成网络的结点,用Vi标注任意一个结点,1≤ i ≤N;
3、结点距离:两个结点(Vi ,Vj)之间的边的条数,记作Dij;
4、网络直径:网络中任意两结点间的最长的距离,记作Dm;
Dm = MAX(Dij),任意Vi,Vj∈网络
5、结点度:通向一个结点的边的条数,记作degree(Vi)。
根据上述参数的定义,可以得到以下期望的5个分布式系统拓扑结构的网络属性:
1、当网络结点数任意增长时,网络直径增长渐变缓慢,即:
LimN→∞(Dm/N)= 0 ;
2、存在一个与网络无关的常数K,使得:
K ≥ degree(Vi),任意Vi∈网络;
3、网络的路径算法(routing algorithm)易于实现,而且与网络规模增长无关;
4、当网络中某些结点或者某些边出现故障时,网络连通性不受致命的损坏;
5、网络负载在所有结点和边上均匀分布。
我们希望一个基于网络的多机系统具备上述给出的5个网络性质,但在实际中,很难找到一种满足所有这些性质的网络拓扑结构。一般而言,不同的拓扑结构对一些性质表现得不错,而对另一些则表现很差。在此,对上述五种典型的拓扑结构做出如下简单性质平价:
典型的分布式系统拓扑结构及其性质评价
环形 星形 二叉树形 正则形 全连通形
LimN→∞(Dm/N) 否(D=N-1) 是(D=2) 是(D=2logN) 是(D=√N) 是(D=1)
K≥degree(Vi) 是(K=2) 否 是(K=3) 是(K=4) 否
路径算法 易 易 易 易 易
连通性 差 差 较差 较好 好
负载均匀 是 否 否 是 是
当设计一个基于网络的分布式系统时,我们首先要决定选取什么样的网络拓扑结构,影响这个决定的主要因素有:性能、价格、可扩展性以及具体的应用。
分布式系统的设计
在设计一个分布式系统时,除了综合考虑上述的分布式系统的显著特征及其拓扑结构,最重要的一点就是:在设计分布式系统之前,我们必须首先考虑用户或潜在用户的需求。对于一个普通的分布式系统,最基本也是相对重要的用户需求:功能性(Functionality)和服务质量(Quality of Service)。
功能性,主要包括的方面有:用户可以使用什么服务或者开发什么类型是应用,系统可以为用户带来多大的经济利益,同时,系统的性能/价格比是否合理等。
服务质量,要考虑的主导性因素有:性能(performance)、可靠性(reliability)和安全性(security)。度量性能的指标主要是系统对用户请求的反应时间(response time)。可靠性可以衡量一个系统具有的商业价值的大小。一个系统可靠并不代表其安全,当引入网络和分布式概念,安全性则变得极为重要。
分布式系统的应用
开发一个分布式系统的目的在于应用,如今,分布式系统的应用领域极为广泛,从普通意义上的分布式计算机到电子商务(旅游、订票、购物、个人银行等等),分布式系统的应用几乎渗透到计算机应用的每一个角落。在人类探索自然的过程中,我们有太多的问题需要解决,而解决的方法往往需要巨大的计算能力。分布式系统的应用之一就是通过网络技术把被浪费的计算资源充分的利用起来。在此例举一个典型的分布式系统应用实例——搜索外星文明(SEIT,Search for Extraterrestrial Intelligence)。
搜索外星文明是世界上一个规模巨大的分布式计算项目,是美国加州大学伯克利分校进行的搜索地球以外星上可能存在的球文明的科学实验。实验的目的是通过对电磁波信号的分析来寻找其他星球上可能存在的具有文明智慧的生命,从目前的技术水平来看,探索“外星人”是否存在的有效手段是对来自遥远星球的电磁波信号进行研究。然而,即使外星人向我们发出无线信号,当这些电磁波信号经过漫长的路途达到地球时则会变得非常微弱。同时,科学家们所获取的此类信号是一个无比庞大的数据,仅用实验室有限的大型计算机来计算则显得力不从心,而只能选取比较强的并且具有代表性意义的无线信号。如此一来,势必会忽略掉某些真正具有意义的信号。为了能够分析所有的微弱的信号以及不同的信号,SEIT号召分布于世界各地的计算机用户参与这个伟大的实验。参与方式很简单,用户们只需下载一个类似电脑屏幕保护程序那样的特殊软件即可。SEIT专家们还设计了一套程序,将庞大的数据分割成细小的数据段,每个数据段代表一小块天空区域或某个波段的频率。SEIT将这些数据发送到用户的计算机上,而下载安装那个的应用程序便会自动地对这些数据进行分析。这些程序不会抢占参与者的机器时间,当用户工作时,它们停止运行,当用户离开时,它们便出来利用这段空闲时间。
分布式系统已经演化成近代计算机系统的基本组织结构,支持非常广泛的工业、商业应用。分布式系统自身也从学术界走进人们的日常生活,日益丰富完善,日益规范成熟。如何搭建分布式网站服务器,比如我有3台服务器ABC,需要搭建分布式服务。也就需要建立IIS 还由DNS WIN 服务器的 还有更改主机名 很麻烦的,这个需要专业的IT人员来 *** 作的。
以下资料作为参考:
DNS轮循
首先介绍一个DNS系统:传统的DNS解析都是一个域名对应一个IP地址,但是通过DNS轮循技术(负载平衡技术)可以做到一个域名对应到多个IP 上 这样大家难免就会问,这个技术有什么用呢
DNS轮循是指将相同的域名解释到不同的IP,随机使用其中某台主机的技术,该项技术可以智能的调整网站的访问量到不同服务器上,减轻网站服务器的压力,实现负载匀衡;如果您感觉到单一的主机已经不堪负载你网站日益增长的访问,那么建议您采用我们的DNS轮循技术。
DNS轮循系统可以根据您的需求设置N台主机作为WEB服务器。目前已有越来多大型的WEB服务器使用DNS轮循来实现负载均衡,服务的分布规划更便捷,扩展性更好,从而提高了网站的稳定性和访问效率,那些大量数据文件请求的客户也得到了更快的响应。
DNS轮循还将给您的网站提供这样的改进,诸如您的网站的数据使用量一直处于不断的增长当中,当达到服务器资源运行瓶颈的情况
下,由于采用了DNS轮循技术,您只需要增加服务器数量就可以平滑升级,而且偶然故障或其他意外情况造成的损失得以避免,7×24小时可靠性的持续的运行
成为可能。
如果您真的希望自己的网站能够一直稳定的在线运行,尽量的减少宕机的比率,那么除了采用比较好的网站空间技术支持之外,还可以采用时代互联域名的DNS轮循功能来实现网站的永久在线负载平衡
负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其
他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器独立地回应客户的请求。均衡负载
能够平均分配客户请求到服务器列阵,籍此提供快速获取重要数据,解决大量并发访问服务问题。这种群集技术可以用最少的投资获得接近于大型主机的性能。
网络负载均衡的优点
第一,网络负载均衡能将传入的请求传播到多达32台服务器上,即可以使用最多32台服务器共同分担对外的网络请求服务。网络负载均衡技术保证即使是在负载很重的情况下,服务器也能做出快速响应;
第二,网络负载均衡对外只需提供一个IP地址(或域名);
第三,当网络负载均衡中的一台或几台服务器不可用时,服务不会中断。网络负载均衡自动检测到服务器不可用时,能够迅速在剩余的
服务器中重新指派客户机通讯。这项保护措施能够帮助你为关键的业务程序提供不中断的服务,并可以根据网络访问量的增加来相应地增加网络负载均衡服务器的数
量;
第四,网络负载均衡可在普通的计算机上实现。
网络负载均衡的实现过程
在Windows Server 2003中,网络负载均衡的应用程序包括Internet信息服务(IIS)、ISA
Server 2000防火墙与代理服务器、虚拟专用网、终端服务器、Windows Media
Services(Windows视频点播、视频广播)等服务。同时,网络负载均衡有助于改善服务器的性能和可伸缩性,以满足不断增长的基于
Internet客户端的需求。
网络负载均衡可以让客户端用一个逻辑Internet名称和虚拟IP地址(又称群集IP地址)访问群集,同时保留每台计算机各自的名称。下面,我们将在两台安装Windows Server 2003的普通计算机上,介绍网络负载均衡的实现及应用。
这两台计算机中,一台计算机名称为A,IP地址为19216807;另一台名为B,IP地址为19216808。
规划网络负载均衡专用虚拟IP地址为19216809。当正式应用时,客户机只需要使用IP地址19216809来访问服务器,网络服务均衡
会根据每台服务器的负载情况自动选择19216807或者19216808对外提供服务。具体实现过程如下:
在实现网络负载均衡的每一台计算机上,只能安装TCP/IP协议,不要安装任何其他的协议(如IPX协议或者NetBEUI协议),这可以从“网络连接属性”中查看。
第一步,分别以管理员身份登录A机和B机,打开两台机的“本地连接”属性界面,勾选“此连接使用下列项目”中的“负载均衡”项并进入“属性”对话框,将IP地址都设为19216809(即负载均衡专用IP),将子网掩码设置为2552552550;
第二步,分别进入A机和B机的“Internet协议(TCP/IP)”属性设置界面,点击“高级”按钮后,在d出的“高级TCP/IP设置”界面中添加IP地址19216809和子网掩码设置为2552552550。
第三步,退出两台计算机的“本地连接属性”窗口,耐心等一会儿让系统完成设置。
以后,如果这两台服务器不能满足需求,可以按以上步骤添加第三台、第四台计算机到网络负载均衡系统中以满足要求。分布式概念还是简单的吧,主要是理解为什么要分布式,和分布式主要做什么。
首先分布式的主要作用有以下几点:
1、提高应用的可用性:服务器要保持长时间能够有效的使用,但是现实情况又是很不稳定的,例如电脑会死机,会断电,硬件设备会损坏,使用分布式可以一定程度的解决这些问题。
2、分散服务器运行压力,这本身也是提高应用可用性的一个方面,例如你的应用功能很多,逻辑很复杂,或者 *** 作的数据量较大,单个应用或者机器难以甚至无法处理你的业务,那么就需要使用分布式。
分布式的概念其实也很简单,就是一个应用做不了或者难以做的事情,让多个应用去做,这就好比让一个人去完成的事情让多个人去完成,举个现实中很简单的例子,例如造车,造车这个工作本身一个造车厂可以完成这个任务,只是一个工厂造车,成本、技术、人员等等都会提高制作成本,而且因为技术过于驳杂,一个厂能造,但是成本和难度都会增加,但是拆分给多个厂来造车,例如一个厂造发动机,一个厂造底盘,一个厂造外壳,一个厂做电子仪表盘等等,把各个配件分散给不同的厂制作,这样每个厂专心做自己更专业的事情,这样既降低了成本,有提高了工作效率。
回到我们的web应用,一般来说,一个系统就是一个应用,系统里面有各种功能,例如学生信息管理系统,系统里面包含各种功能,例如用户登录和认证、权限配置和授权、学生信息的管理、学生的入学管理、学生的毕业管理、校友信息管理等等各种功能,但是当学生的数量特别多,内部业务逻辑特别复杂的时候,一个应用可能不能够承担起这个系统的正常运转,那么就可以考虑分布式,来使用多个应用完成这个系统的功能,例如做一个应用负责登录认证模块,一个应用处理授权的功能,另外一个应用处理学生信息的内容等等。
总结分布式,其实就是一个应用的事情让多个应用来解决,分布式是应用级别的分工,在一台机器的多个应用,我们叫垂直分布式,在多台机器上的分布式叫水平分布式,在一台机器的分布式实现起来比较简单,只需要实现应用之间的内存数据共享即可,内存数据共享方式很多,可以使用共享文件等等方式,多台机器的分布式就需要借助网络通信来共享数据,如果是通语言同技术的应用,可以直接共享内存数据,如果是不同语言的分布式应用,就需要参照一些通用传输协议的数据,例如xml json。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)