方案一 xmpp (太笨重)
webrtc(WebSocket) + openfire(服务器) ===> xmpp 方案
https://zhuanlan.zhihu.com/p/24345429
http://www.cnblogs.com/lixiaolun/archive/2013/12/07/3462780.html // Openfire开发配置,Openfire源代码配置,OpenFire二次开发配置
openfire spring 整合
方案二
MQTT + ApolloServer(服务器) or emqttd (服务器) ===> MQTT 方案
spring mqtt 整合
http://blog.csdn.net/boonya/article/details/51396990 MQTT+ApolloServer实现Android的消息推送功能
http://activemq.apache.org/apollo/documentation/mqtt-manual.html
http://blog.csdn.net/djun100/article/details/25752491
https://github.com/mqtt/mqtt.github.io/wiki/libraries
xmpp 和 mqtt 及 GCM 对比
https://www.zhihu.com/question/20730361
方案三
node.js + (redis or mongodb) + 数据库(mysql or other) 实现 基于websocket
方案 四
netty websocket 实现
https://mpusher.github.io/docs/
快速使用 netty 轻松打造一个 websocket服务: http://www.tuicool.com/articles/BN3uIf2
mpush(基于netty4搭建+redis+ zookeeper)
https://github.com/mpusher/mpush
方案 五
springmvc (websocket)
https://github.com/Amayadream/WebChat
http://blog.csdn.net/Amayadream/article/details/50551617
websocket 框架对比
(netty,go,node.js 等) 推荐使用 netty 或者 node.js
http://www.importnew.com/23286.html
t-io: 百万级TCP长连接即时通讯框架
https://git.oschina.net/tywo45/t-io
ActiveMQ