论文部分内容阅读
随着计算机网络的不断发展以及计算机硬件价格的下降,将计算任务分布到多个物理主机上处理,以提高任务计算速度和降低任务运算成本已经成为一个趋势。在分布式环境中,发布/订阅(Publish/Subscribe)模式是实现动态、多对多通信的一种通信网络结构,在通信实体之间建立松耦合关系,广泛应用于构建信息/消息驱动的复杂分布式应用系统。然而,复杂应用系统中业务逻辑往往有一套严格执行流程,现有的发布/订阅模式忽视信息/消息在业务逻辑中的语义,缺乏流程控制功能,应用逻辑由各个发布/订阅组件单独判断,导致系统缺乏对流程全局控制。针对这个问题,本论文结合消息语义,引入消息过滤机制,提出具有流程控制功能的发布/订阅结构,实现系统对应用逻辑的全局可控。进一步,为提高系统可靠性,利用主动复制容错技术,提出容错的具有流程控制功能的发布/订阅模式,通过在现有平台中引入容错流程控制服务器加以实现。
对于采用主动复制容错技术构建的容错系统,当有组成员失败时,为不降低系统容错能力,需要有新的复制服务器加入组,新成员只有获得与当前组成员一致状态后才能正确执行后继请求。现有对新成员加入容错组的研究集中于成员加入过程组视图一致性的维护,忽视新成员与现有成员间同步状态数据的研究,实验表明新成员状态同步过程可能产生普通成员对协调者存活状态误判;协调者失效后同步重定向;同步数据较大时,客户端响应的延迟抖动较大等问题。本文提出Cordinator_Once与Cordinator_Multiple两种同步模式解决上述问题并给出新成员状态同步算法与同步重定向算法,说明其正确性并通过仿真实验说明算法的性能。
本论文的主要贡献有:(1)提出容错的具有流程控制功能的发布/订阅模式。(2)研究新成员加入组时状态同步问题,提出Cordinator_Once同步模式与Cordinator_Multiple同步模式加以解决,给出新成员状态同步算法与同步重定向算法并做优化,分析算法正确性。(3)设计实现GMS系统状态同步模块,提供应用编程接口。(4)基于CORBA规范,设计并实现了容错/非容错流程控制系统。