您好,欢迎进入上海锐呈电气有限公司网站!
一键分享网站到:
您现在的位置:首页 >> 技术文章 >> 分布式系统时钟同步的重要性
分布式系统时钟同步的重要性
浏览次数:2634发布日期:2010-10-28
统中能够做到某一位置上能集收到系统的所有信息,因为分布式系统使用分布式算法。然后由某些进程检测这些信息,再做出同步决策,而这在分布式系统中常常是不可能做到分布式算法一般有以下特点:

 

1相关信息分布在多台机器上。 

 

2进程只根据外地可用的信息做出决策。 

 

3应防止系统中单机失效。 

 

4没有公共时钟或其他的全局时间源。

 

前面三点都是说在处置过程中的单个点上无法收集到系统的所有信息。例如,做资源分 

 

配(以不会出现死锁的方式分配IO设备)时,通常不应将所有的UO请求发送给一个管理进程。 

 

管理进程检查所有的I/O请求,根据其设备表中的信息决定满足请求或拒绝请求。大系统中,将 

 

所有的请求发送给单个管理进程,会使这个进程的负担过重。 

 

而且象这样的单机失效会使整个系统变得不可靠。理想情况下,分布式系统应该比单机更 

 

可靠。如果分布式系统中某台机器停止工作,剩余的机器应该能够继续完成系统功能。zui不希 

 

望看到由于某台机器的失败(如资源分配器)导致许多其他机器(如它客户)终止工作。 

 

为了没有集中控制的情况下实现同步,需要采取与保守操作系统不同的方式。 

 

上面列出的第4点也很重要。集中式系统中,时间是很明确的每个进程要知道当前时 

 

间,只要执行一个系统调用,操作系统内核就会返回当前系统时间给进程。如果进程A查询了 

 

系统时间,稍后进程B也去查询系统时间,那么进程B得到时间将在进程A得到时间值之后 

 

也可能相等)肯定不会在此之前。分布式系统中,要达到这种时间的一致性不是件简单的 

 

事。. 

 

作为一个简单例子,考虑一下缺乏全局一致的时间对UNIX中make顺序的意义。UNIX 

 

中,大型顺序通常分割成多个源文件,这样在修改某个文件时只要编译这一个文件,而不是编 

 

译所有的文件。如果顺序有一百个文件,则不需因为有一个文件发生了较大的变化而重新编译 

 

所有文件,从而大大加快了顺序员工作的速度。 

 

通常,make顺序的工作方式很简单。顺序员在修改源文件后,启动nla~eMake顺序检查 

 

源文件及与它相应的目标文件的zui后修改时间。如果源文件input.Czui后修改时间为2151而 

 

相应目标程minput.ozui后修改时间为2150make顺序就可以确定在创立input.o后,修改了源 

 

文件input.C因此要重新编译源文件input.C相反,如果output.czui后修改时间为2144而 

 

output,ozui后改时间为2145就不需要重新编译outputcMake顺序遍历所有的源文件,找 

 

出需要重新编译的文件,调用编译器编译这些文件。 

 

分布式系统时钟同步的重要性 -ntp-azmail博客

 

现在想象在没有全局—致时间的分布式系统中执行make顺序。假设ouput.ozui后修改时间还是2144随即修改了源文件output.c但是由于编辑output.c机器的时钟慢,所以修改后output.czui后时间被为2143如图11-1所示.这时,make顺序就不会重新编译output.c 

 

结果,生成的可执行文件就包括由旧的源文件生成的目标文件和新的源文件产生的目标文件。这样,顺序的运行就会存在问题,而程序员要在代码中找到问题的出处,也是大伤脑筋的事。 

 

上面我看到时间是人们考虑问题的基础,时钟之间的不同步会发生戏剧性的结果。因此,以“分布系统中的所有时钟可能同步吗?这样一个简单问题开始研究同步是比拟合适的 

 

上海锐呈电气有限公司是国内外专业的NTP服务器,网络时间服务器,GPS同步时钟,NTP时间服务器,时间服务器,时间同步服务器,GPS时间服务器生产(供应)商,主营产品有:NTP服务器,网络时间服务器,GPS同步时钟,NTP时间服务器,时间服务器,时间同步服务器,GPS时间服务器等,上海锐呈电气有限公司不仅具有国内外的技术水平,更有良好的售后服务和的解决方案,洽谈

 

  

传真:   

: ruichengdianqi

:http://www.ruichengdianqi.com

 

沪公网安备 31011002000425号