基于组通信服务集群研究与应用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于组通信服务集群研究与应用

基于组通信服务集群研究与应用   【摘 要】组通信是构造高可靠分布式系统的重要基石。以组通信技术为基础,提出了基于Internet的多媒体考试系统平台中集群管理器的结构和设计,详细描述了实现中所采用的可靠全序组播算法、组成员管理、流量控制算法、负载平衡及失效转发算法。通过主动状态复制,该集群系统提供了高可靠和高扩展性,并且具有较高的性能,它已经在多个烟草公司和高校得到成功使用。   【关键词】集群;组通信;可靠组播;流量控制;负载平衡   引言   当前,企业级的计算系统应用日益广泛,而高可用性、高容错性和高可靠性是这些企业级的关键性应用所必须具有的特性,使用集中式的服务架构将无法满足这些需求。除使用专用硬件冗余设备(如磁盘阵列、双机热备份等)外,构建一个集群环境,将多个服务节点有机组织起来,对数据和服务进行复制,统一对外提供服务,是一种更加灵活、扩展性更强、成本较低的方法。但是集群系统的开发是一项复杂的工作,面临一些关键问题的挑战。   本文以我们开发的基于Internet的多媒体考试系统平台作为实例,具体描述了将组通信技术应用于构造服务集群系统的方法,总结了我们在实现中对于关键问题的解决方案。该系统已经被多所高校和政府机构成功使用。   1.系统需求和体系结构   基于Internet的多媒体考试系统平台是一项实用推广产品,它基于Internet,提供从题库系统、成卷系统、考试规划一直到计算机考试、自动阅卷、答卷信息评价的全线服务,自动化程度高,实现了考试的完全无纸化。由于该系统一般应用在基于Internet的大规模环境下,作为关键性的应用,它对于系统的性能提出了以下需求:   高扩展性:由于可以通过Internet进行考试,考生人数不受局域网计算机数的限制,因此要求系统必须能够承受大量考生同时参加多门课程的考试,而不会产生性能瓶颈。   高可靠性:考试信息、试题、考生答案等重要数据不能丢失,系统能够自动检测软它所管理的软硬件故障,局部的失效不影响系统的功能,具有高容错性。   高可用性:当系统出现故障时,应该在限定时间内(秒级)自动恢复,不影响考试的进行。   为了满足以上需求,我们基于组通信技术将系统设计为一个集群结构,其包含多个考试服务器,客户端通过负载平衡技术选择一个服务器进行通信,当连接的服务器失效后,客户端可以重新连接到其他服务器,继续进行相关的操作而考试不受影响,这一过程对于用户(考生)是透明的。显然,为了达到这一目的,考试服务器之间需要进行实时的相互通信以维持状态的一致性。图1显示了系统的体系结构。   每个服务器结点主要由web服务、集群管理器(Cluster Manager,CM)、考试服务器(Exam Server,ES)和数据库服务器四种服务组成,其中CM主要负责使用组通信协议和其它结点的CM进行可靠通信以实现状态复制,ES和数据库服务器进行交互,具体实现应用逻辑如登陆、交卷、查询等。我们以考生登录为例说明系统各组件间的交互,图1显示了一个具有两个结点的集群。首先考生浏览器从一个结点的Web服务器下载ActiveX控件(①),运行之(②),考生输入认证信息后,ActiveX将认证信息发送到结点的CM(③),该CM首先和其它结点的CM通信(④),复制状态,然后将信息发送到ES(⑤),ES和数据库服务器交互(⑥),进行相应处理。   集群管理器CM主要包括以下处理模块:   可靠全序组播:由于一个节点的消息要发送给集群内所有其他节点,为了使节点之间进行高效的消息传输,一个很自然的想法就是采用组播(multicast)方式,实现一对多通信。但是其缺陷是不能保证消息的可靠传递,此外为了保证各节点的状态一致,使各个节点按照相同的顺序接收消息也很重要(即全序,Total order)。可靠全序组播模块就是要保证节点之间使用IP multicast达到消息的可靠、全序传递的目的。   组成员管理:将集群内的服务节点有机组织起来,负责节点的加入、离开和失效的处理,保证所有生存的节点保持相同的组成员视图。   流量控制:如果一个结点由于不能及时处理接收的消息而导致其缓冲区溢出,从而引起大量消息重传。为此采用流量控制机制控制消息的发送速率,以达到流控的目的。   负载平衡和失效转发:解决系统负载平衡和容错的问题。   下面我们就这几个模块的算法进行阐述。   2.可靠全序组播算法   每个结点都各自维护着一个本地消息计数器,作为发送的消息的顺序号,称为结点顺序号。当某个结点要向全组的结点发送消息m时,给m设置结点顺序号,然后将m发送给集群内一个称为sequencer的结点S(sequencer的产生见下一节)。S还维护着一个全局消息计数器,称为全局顺序号。S每收到一个消息,就给

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档