T_world 2017-10-21 03:10 采纳率: 56.3%
浏览 968
已采纳

分布式系统小程序的时延问题

课程要求,我要开发一个分布式系统的小程序。
这个系统的功能是这样:服务器是一个时间服务器,也就是说,假设客户端不知道当前时间,需要向服务器发送请求,获取当前时间。但是由于网络原因,从服务器端开始发送当前时间的时刻开始,到客户端接收到这个时间的时刻会有一定的延迟,通过什么方式可以矫正这个时间,从而得到真正的当前时间呢?
请大大们给个解决思路,谢谢啦!

  • 写回答

2条回答 默认 最新

  • 摩西云 2017-10-22 01:44
    关注

    如果这样,那就只能求大概的时间了,客户端可以获取发送命令的时间,可以获取收到时间的时间,减去服务器执行命令的生成时间,就剩下客户端发命令至开始生成的时间和服务端发送到客户端收的时间,假设完成整个步骤的网络状况是没有发生变化的,那么这2个时间就基本是对等,除2得到的就是你需要的时间

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 摩西云 2017-10-22 00:50
    关注

    客户端和服务端的格林威治时间是一样的,只需要当前客户端收到时间数据的格林威治时间减去服务器发送的格林威治时间就是网络发送延迟的时间

    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 eclipse无法正常运行
  • ¥15 定义了函数,但是无法根据函数定义触发器
  • ¥20 5变量卡诺图化简得出与非门电路图
  • ¥20 位置依赖的碱基序列独热编码
  • ¥15 Python爬取交通拥堵指数数据
  • ¥15 使用vba抓取重定向网页问题
  • ¥20 付费需求测试程序(细谈)。
  • ¥15 为什么这段c++代码会报这么多语法错误?
  • ¥20 如何利用C语言实现用最小二乘法选配两个经验公式
  • ¥50 vue-codemirror如何对指定行 指定位置的 字符进行背景颜色或者字体颜色的修改?