分散式聊天通信协议
我正在设计一个聊天应用程序,其中没有中央服务器或数据库处理所有传入和传出的消息。 它将完全分散。
总结我的项目和它的要求
每个用户都将通过android手机与分配给他们的特定node
通信。 然后该节点将直接与属于他希望消息的用户的node
进行通信
聊天消息将通过从Ethereum
使用的一个库中Ethereum
的p2p
协议在nodes
之间进行通信
聊天的用户数量有限,1500-2500
将节点映射到用户将通过DHT完成,这不是问题
我想尽可能少地依赖GCM
服务器将完全写入Node js。 我已经详细阅读了XMPP,socketio和websockets,但无法就使用什么做出结论。 请记住,我编写的代码将部署在多个nodes
即服务器)上
当然,应用程序将运行一个后台服务,并且当应用程序处于后台或根本不运行时,需要显示新消息的通知
快速部署对我来说是最不重要的因素。 我只是在寻找最强大和可定制的最终产品
我想坚持服务器的nodejs
XMPP的主要优点是与XMPP中的websockets相比,聊天所需的许多功能都是开箱即用的? 或者还有更多吗?
我有一个从各种堆栈问题中获得的库的列表,以及xmpp和websocket实现的例子。
延迟1-2秒的延长对我来说不是问题,但电池交谈很重要。
这个链接建议使用websockets的电池消耗不是问题。
检查MQTT协议。 它重量轻,使用最少的数据。
链接地址: http://www.djcxy.com/p/94173.html上一篇: Decentralized Chat Communication Protocol
下一篇: How to retrieve one to one chat history from Openfire using asmack android