我正在开发iOS和
Android应用程序.基本功能是在没有中央服务器的情况下,在Wi-Fi网络中的所有设备上保持一定数量的数据同步.每个设备都可以修改该组数据.
目前的方法是通过Bonjour / Zeroconf发现其他设备,然后通过ZeroMQ将“更改消息”发送到所有设备.
由于两个框架都会导致相当多的问题来实现,我在问这是否是正确的方法来实现这一点.
我将Bonjour和HTTP请求中的大部分逻辑都发送到所有设备.问题只是网络请求,即使在三次尝试后也不会收到,因为网络失败.我想要一些一般状态的重建或更可靠的消息传递框架.
某种Gossip方法传播信息以及发现所有设备会更好吗?
解决方法
使客户端 – 服务器的东西可靠工作是非常具有挑战性的.特别是跨平台;似乎还有一个需要解决的边缘案例.而不是重建轮子,我建议使用一个现有的图书馆,其他人已经解决了所有的扭结.我没有使用它,除了原型之外的任何东西,但
AllJoyn open-source project看起来非常有希望.另一个选择是
Google Nearby APIs,目前只适用于Android和iOS.