如何在Python中通过网络同步列表更改

时间:2015-03-25 12:53:16

标签: python networking server synchronisation

我正在开发一个小组管理系统,其中有两种不同类型的服务器。 “客户端服务器”,可以在“管理服务器”上加入和离开组。

多播组中有多个管理服务器。因此,客户端服务器将加入和请求发送到此多播组。由于IPv6组播不可靠,因此某些管理服务器可能无法接收请求。所以他们的会员资格列表不是最新的。

所以我需要一个可以用来在列表发生变化时同步列表的函数。有三种类型的变化:

  • 客户端服务器离开组
  • 客户端服务器加入群组
  • 客户端服务器更新其完整的成员列表(以便管理服务器替换其列表)

我想在每个管理服务器上创建一个记录最近更改(可能是最近60秒)的日志列表。如果服务器注意到更改,它会通知其他管理服务器有关更改并使用此信息发送时间。如果接收者有更新的更改,则忽略发送者的信息。如果没有,它会更新其列表。

但这是最好的方法吗?这种东西有特殊的图案吗?或者甚至可能是python框架?

1 个答案:

答案 0 :(得分:0)

听起来好像要使用gevent。它对于您正在讨论的场景,您希望在多个节点之间同步事件的位置非常有用。它也会为你抽象掉大部分网络层,所以你可以专注于完成工作。