- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分布式锁服务算法.pdf
分布式锁服务--debby设计与实现
单栋栋,赵东升,樊楷,苏飞
摘要:
我们实现了一个分布式锁服务系统,并能提供可靠的存储服务。系统的接口非常简
单,类似普通文件的接口。我们设计的重点在于系统的可靠性与可用性,而系统的性能放
在次要位置。同时我们也实现paxos协议,并用它为整个系统提供可靠容错的系统日志。
1.背景介绍
随着计算机网络技术的飞速发展,出现了越来越多的分布式系统,我们利用这些系统
已提高现有系统的性能,可用性和稳定性。尽管分布式系统的设计已日趋成熟,但要在分
布式系统中进行协调和信息交流仍然不是一件容易的,特别在松耦合的分布式系统中,所
有的信息传递只能通过网络来完成,必须面临网络丢包、延迟甚至瘫痪等等复杂的问题。
要在这样的系统中都实现可靠的一致性协议来进行信息的交流,对于系统设计而言是非常
困难的,而且有一些是在应用中没有办法实现的。因此,我们希望提供一种非侵入式的服
务来帮助分布式系统各个成员间的动作协调和信息交流,通过使用这一服务,各个分布式
系统的成员可以非常简单的达成同步,而不需要在系统内部加入复杂的协调机制。因此,
我们设计并实现了debby分布式锁服务系统,这是一个类似于提供全文件读写的分布式文
件系统的结构,它设计的目标并非提供海量数据的存储,而是用于提供具有高可靠性和高
可用性的锁服务,同时可以方便高效的信息发布机制。为了保证debby系统的可靠性,我
们的系统设定了5个服务器来组成一个debby实例,只有一个服务器用来向外提供服务,
而其它服务器都作为备份服务,用来在主服务器崩溃时继续提供服务。为了在5个服务器
之间提供一致性保证,我们还在底层实现了Paxos协议,只要有半数以上的debby服务器
能够正常运行,就可以提供服务。
利用debby系统,现在分布式系统可以非常便捷的进行同步协调和信息发布。比如当多
台服务器提供同一服务时,往往需要选择其中一台服务器来作为主服务器,把其他服务器
作为备份服务器,而且当主服务器崩溃时,又要能及时选出新的主服务器来提供服务。如
果没有debby系统,在分布式系统内部实现这样的备份机制非常困难,唯一的办法或许就
是通过Paxos协议来达到一致性,而有的时候甚至Paxos协议也无法派上用场,比如当只
有一个备份服务器的时候。然而利用的debby,实现上述功能变得非常简单,只需要所有
的服务器都到debby系统中去获取一个互斥锁,然后获得锁的服务器就自动成为主服务
器。只要所有的服务器都遵守这一约定,就保证了系统中只会有一个主服务器。debby提
供了非常简单易用的信息发布机制,在获取到互斥锁后,服务器可以通过debby提供的分
布式文件服务,在文件写入自己的地址,其他服务器以及客户就可以非常容易的通过读取
debby文件内容来得到服务器的地址。如果主服务器崩溃,debby系统会自动释放互斥
锁,并且通过事件机制来通知其它服务器来重新选择主服务器。
Google公司已经实现了类似的分布式锁服务系统Chubby,并广泛的应用于内部系统
中,他们的经验表明这样的系统具有非常好的可用性和可靠性,能够给其他分布式应用的
构建带来非常大的帮助。
2.系统设计
2.1整体设计
Debby结构图
如图所示,一个debby 服务器可以同时为多个客户端提供服务。客户端通过调用
debby的client library ,和服务器通信。客户端和服务器的通信建立在ICE远程过程调用
的基础上。在服务器端,可以同时有多个debby server,其中一个是leader,另外的是
replica (图中有3个server )。每个debby server上面独立运行服务器端的程序,包括文
件管理,事件管理,Session管理等。服务器端的操作的一致性通过底层的paxos协议来
实现。服务器提交给paxos的操作,都会记录日志信息。
2.2服务器设计
服务器通过向客户端提供接口,并且调用底层的 paxos协议,来实现最终的锁机制,
并提供最终的可靠服务。
2.2.1 服务器的通信部分
服务器通过ICE的远程过程调用机制,来和客户端通信。通过服务器为客户端提供的
接口,debby的客户端库可以连接到服务器,并且得到一个唯一的连接标识。通过这个标
识,客户端库可以关闭连接,创建文件、目录,删除文件、目录,读写文件,注册事件,
删除事件,保持心跳,判断文件的类型等等。当某些操作发生错误的时候,服务器端会向
客户端抛出一个异常。
2.2.2一致性的保证
服务器端
您可能关注的文档
- 做社会主义事业的建设者和接班人.doc
- 偶然与必然的数学思想.pdf
- 偶然中的必然.doc
- 偶然性与必然.doc
- 儒家学说的实践性格.pdf
- 儿童少年是生长发育过程中一个十分重要的时期少儿缺钙.doc
- 儿童的阅读非常重要.doc
- 儿童需要什么样的科学_对我国儿童科.pdf
- 充分利用信息化手段推进反腐倡廉工作.pdf
- 先导式溢流阀动画图解.ppt
- 2025年中国铸管沥青漆喷涂机市场调查研究报告.docx
- 2025至2031年中国聚四氟乙割管料行业投资前景及策略咨询研究报告.docx
- 2025至2031年中国屏蔽箱行业投资前景及策略咨询研究报告.docx
- 2025年中国B级电源电涌保护器市场调查研究报告.docx
- 2025至2031年中国陶瓷印章行业投资前景及策略咨询研究报告.docx
- 2025至2031年中国保冷材料行业投资前景及策略咨询研究报告.docx
- 2025至2031年中国金彩立雕玻璃行业投资前景及策略咨询研究报告.docx
- 2025至2030年中国机箱螺母柱数据监测研究报告.docx
- 2025至2030年中国小GS管装饰头数据监测研究报告.docx
- 2025至2030年中国气动电阻焊机数据监测研究报告.docx
最近下载
- 2024-2025学年高二下学期物理人教版(2019)选修第二册——互感和自感(课件).pptx VIP
- 机械制造业的环境保护知识讲解.ppt
- 2024国家能源集团纪律检查中心招聘53人笔试模拟试题及答案解析.docx
- 学前特殊儿童教育(全套课件558P).docx
- 2024年湖南水利水电职业技术学院单招职业技能测试题库含答案(考试直接用).docx VIP
- 2023年中国石油化工行业现状分析及发展趋势观察报告.pdf VIP
- 阿尔茨海默病早期筛查新进展和智能监测技术学习班题库答案-2024华医网继续教育.docx VIP
- 个体工商户转让协议样本5篇.docx
- 湘教版劳动实践五年级上册劳动实践第一单元任务3《整理冰箱》课件.pptx
- Unit 3 Learning better教案 人教PEP英语(2025)三年级下册.docx VIP
文档评论(0)