- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
分布式系统之7、同步1
3、环算法 基本过程 所有进程按照物理或者逻辑的顺序组成一个逻辑的环 当任何一个进程注意到协调者不工作时,它就自己构造一个带有它自己进程号的ELECTION消息,发给它的后继者 如果后继者崩溃了,则跳过发给下一个 接收者将自己的进程号加入消息中,继续传递消息。 最后消息返回到选举发起者,它计算出协调者之后发送COORDINATOR消息宣布协调者 消息环系统环一周后被删除 环选举算法 四、互斥 基本概念 分布式互斥 解决分布式共享资源并发访问问题 比单机系统互斥复杂 算法 集中式互斥算法 分布式互斥算法 令牌环算法 1、集中式算法 最简单的一种互斥算法 基本过程: 选举一个协调者 任何一个进程要进入临界区,向协调者发送申请消息 协调者根据临界区的使用情况同意或者拒绝申请者的请求 协调者拒绝申请者的方式可以发送拒绝消息或者不应答,但都将请求放入队列中 集中式互斥算法 优点: 保证了互斥的实现 公平——先来先服务 没有进程会处于永远等待状态,不会出现饿死 易于实现 缺点: 协调者是一个单故障点,如果协调者崩溃,则整个系统瘫痪 协调者可能成为性能的瓶颈 集中式算法 2、分布式互斥算法 基本过程: 当一个进程想进入临界区时,它构造一个含有目标临界区名字、本进程号和当前时间的消息,发给所有进程。 一个进程收到另一个进程的请求消息时,根据自己与目标临界区的状态关系反应: 若接受者不在也不想进入临界区,发送OK消息 接受者已经在临界区则不应答,只是把请求放入队列 接受者亦欲进入临界区,则将收到的请求时间戳与它发送的请求时间戳比较,早的获胜进入。 发送者一直等待至其他所有进程返回OK消息,之后进入临界区,使用完毕向队列中的进程发送OK消息,删除自己的任务。 分布式互斥算法 优点: 实现了分布式互斥 不会发生死锁或饿死 不存在单个故障点 缺点: 反而有n个故障点,实际上比集中式算法差了n倍 需要自己维护组成员清单,处理进入、离开组和崩溃进程的能力比较差 总之,实际上比集中式算法更慢,更复杂,花费更高,而且更脆弱。 意义:说明分布式算法至少可以实现。 分布式互斥算法 3、令牌环算法 算法基本思想: 构造一个逻辑环 初始化时,进程0得到一个令牌,令牌绕环运行 收到令牌的进程如果要使用临界区,则使用完临界区后再传递令牌 不允许用同一个令牌进入另一个临界区。 令牌环算法 令牌环算法 优点: 不会发生饿死 进程崩溃比较容易处理 缺点: 令牌丢失的情况,检测令牌丢失非常困难 同步(1) 物理时钟同步 逻辑时钟同步 选举算法 互斥 内容 一、物理时钟同步 1、基本概念 一致的系统时间是 分布式同步的基础 事件的顺序关系问题的解决基础 两个层面的时钟同步 绝对同步(物理同步)——物理时钟 相对同步(逻辑同步)——逻辑时钟 物理时钟——计算机系统的绝对时间 UTC:一种国际统一的科学物理时间,称为统一协调时间。 基本概念 时钟精确度 设UTC时间为t,机器的时间为C,则机器时钟的精确度可以用一个常数ρ来表达: 1-ρ ≤ dC/dt ≤ 1+ρ 一般来说, ρ由生产厂商规定,称为最大偏移率。 同步间隔 最坏的情况下,两个计算机的时钟以相反的方向偏离UTC时间,则要保证两个时钟误差不超过δ,就必须至少δ/(2ρ)秒钟重新同步一次。 时钟速率不正确时,机器时间与UTC之间的关系 基本思想 系统中有唯一一台时间服务器接收UTC时间,其他机器则必须与时间服务器同步。 每台机器以不大于δ/(2ρ)秒的周期定期向时间服务器发送消息询问当前时间 时间服务器收到后发送消息告知当前时间CUTC 发送者收到服务器消息后将时钟调整为CUTC 2、Cristian时钟同步算法 Cristian算法:从服务器得到当前时间 问题 时间回调——将导致严重后果 逐步调整时钟:即正常一个时钟中断将时钟加10毫秒,而需要慢下来时则一个中断加9毫秒,需要快时加11。 传输延迟的问题 测量估算法 Cristian时钟同步算法 思想 主动式服务——与Cristian算法中的被动式时间服务器相反 过程 服务器主动定期询问每台机器的时间 服务器基于客户的回答,告知它们拨快或者拨慢 3、Berkeley时钟同步算法 Berkeley时钟同步算法 Cristian算法和Berkeley算法——集中式的算法。 平均值算法——非集中式算法 将时间划分为固定长度的再同步间隔R 第i次同步开始于T0+iR,结束于T0+(i+1)R 每次同步间隔开始,每台机器广播自己的时间 对于某一具体的机器,当所有的同步广播都到达后,它根据所有的时间执行某一平均算法得一新值,再根据新值调整时钟。 思考:各机器计算的新值一样吗? 4、平均值算法 二、逻辑时钟同步 1、基本概念 许多应用中,并不严格需要所有机器都与UTC时间保持一致,而只
您可能关注的文档
- 冀教版下册Unit 2 Plant a Plant Lesson 11.ppt
- 冀教版五年级数学下册《分数除法应用题》2.ppt
- 冀教版七年级上lesson28.ppt
- 冀教版八下:Unit 2 Plant a PlantLesson 11 Amazing Plants(共25张PPT).ppt
- 冀教版八年级下册Lesson24_精品课件.ppt
- 冀教版八年级下册:Unit 6 Be a Champion! Lesson 31Don’t Fall, Danny!(26张PPT).ppt
- 冀教版八年级下Lesson4The_Spring_City 2.ppt
- 冀教版八年级上册英语lesson3.ppt
- 冀教版八年级上Lesson 35.ppt.ppt
- 冀教版八年级下册lesson 11. Amazing Plants..ppt
文档评论(0)