2011-05-20 38 views
2

是否存在一个C库,用于对两个不同节点上的数据结构进行序列化和/或同步。如果同步不与序列化交织在一起,这将是理想的。总而言之,我想要的是以透明的方式分配数据结构(树,结构等)的同步。序列化并通过网络同步数据结构C

最接近我回答的是Client-server synchronization pattern/algorithm?,但没有提供链接。

+0

这是否相关? [Maemo | GObject与DBUS](http://maemo.org/maemo_training_material/maemo4.x/html/maemo_Platform_Development_Chinook/APPENDIX_D_Source_code_for_the_GLibDBus_synchronous_example.html) – qwrty 2011-05-20 10:33:20

+0

更新:libopensync似乎很有前途(可以同步任意数据),AFAIK如果插件不是一个服务器类型(dosent直接读取套接字..编组传输层由库处理)其他AFAIK我们必须提供它(您可以使用AMQP,beanstalkd,zeromq等)以及google协议缓冲区等[libopensync]( http://www.opensync.org/) – qwrty 2011-08-02 10:21:09

回答

0

据我所知,C/C++没有预制的数据同步库。

您可以使用MessagePack,并为您的结构添加last_updated时间戳字段。然后,您可以使用MessagePack比较时间戳并在节点之间传输数据。

MessagePack甚至在http://wiki.msgpack.org/pages/viewpage.action?pageId=1081387提供了一个有用的快速启动教程。

+0

Uodate:查看我的评论以获取可能的解决方案 – qwrty 2011-08-11 07:31:16