分布式系统中的拉协议与推协议

来源:互联网 发布:巨人网络待遇 编辑:程序博客网 时间:2024/06/06 00:48

        在分布式系统中,主副本与多个副本之间往往会涉及到数据更新的问题,此时就需要考虑是基于拉协议还是推协议来实现更新了。

        拉协议:就是有人来访问副本服务器上的数据时,副本服务器会检查主副本服务器上要被访问的数据是否有更新,有更新的话,则从主副本服务器获取最新数据缓存到本地,然后向访问者返回最新数据;否则,则直接返回本地缓存的副本数据;

        推协议:与拉协议相反,在主副本与多个副本之间存在着这种关系:一旦主副本的数据有更新,则它会主动向所有副本服务器推送此更新,以便使所有副本之间保持高效的一致性;

        通过对比二者,我们很容易想到,推协议更适用于读与更新比率较高的场景,否则的话,如果数据更新较频繁,而又采用推协议,将会费时费力;相对应,拉协议更适用于读与更新比率较低的场景

1 0
原创粉丝点击