基于netty的企业即时通讯系统的设计与实现-离线消息处理
来源:互联网 发布:正在进行另一java安装 编辑:程序博客网 时间:2024/05/17 01:49
客户端与服务器保持长连接,服务器可以很轻松的向客户端推送消息。由于网络不稳定、程序不可能24小时都被程序运行,客户端与服务器没有建立长连接的时候,服务器怎么向客户端推送消息呢??
一种方式:只要是客户端开机,自动运行程序,自动和服务器保持长连接。
ios手机如果程序退到后台,必须断开长连接,一直保持长连接不可能,如果你使用voip技术在后台保持长连接,这个做法不能被appstore审核通过
android手机后台运行service,如果用户强制关闭或者手机自动启动,一般程序是不能启动的~~
另一种方式:使用离线推送方式
ios推送离校消息,苹果有自己的规则,并且做的很好。
android的离线消息推送需要连接google地址,由于国内访问国外的网址太不稳定了,直接使用google提供的推送方式不理想。
android手机的离线推送消息是个难解的题,第一种方式程序很难一直在后台运行,总有被杀死的时候,程序自动启动这个功能google已经安全优化了,不是任何程序都能随意启动!!
第二种方式使用google提供的离线推送消息机制,由于国内访问国外的限制,也不能有效的解决问题。
离线消息和在线消息只能分开,离线消息因为安卓上面会被各种因素影响,只能用大厂的推送通道,他们有足够多的app可以互相叫醒,在线消息得自己做,因为推送通道的响应速度不行。
手机首次和服务器端建立长连接成功之后,客户端同样也要和极光服务器端建立信任关系。客户端在线状态下,和服务器的消息交互都走自己的网络通信架构,不经过极光服务器。自己服务器重点处理在线用户的消息。
当客户端与服务器失去联系,服务器有消息需要推送给这个客户端的时候,服务器直接把消息推送给极光服务器,再通过极光推送给客户端。这个过程我们可以理解成不要求及时性~~~
- 基于netty的企业即时通讯系统的设计与实现-离线消息处理
- 基于netty的企业即时通讯系统的设计与实-离线消息处理
- 基于netty的企业即时通讯系统的设计与实-服务器消息重发
- 基于SOA架构的企业集成系统设计与实现
- 基于SOA架构的企业集成系统设计与实现
- 基于WCF的即时通讯软件的设计与实现
- 基于netty的消息队列设计(一)
- 基于Netty与RabbitMQ的消息服务
- 基于Netty与RabbitMQ的消息服务
- 基于Netty与RabbitMQ的消息服务
- 基于Netty与RabbitMQ的消息服务
- 基于GUI的简易图像处理系统设计与实现
- 基于java web的企业人事管理系统的设计与实现
- 基于总线的消息服务(BBMS)的设计与实现
- 基于Android 平台简易即时通讯的研究与设计
- 基于Android 平台简易即时通讯的研究与设计
- 基于蓝牙的家居网关数据采集处理系统的设计与实现
- 基于DSP的图象采集与处理系统的设计
- Invert Binary Tree
- 三种快速排序以及快速排序的优化
- Effective Modern C++ 条款37 在所有路径上,让std::thread对象变得不可连接(unjoinable)
- 获取主机信息
- javaweb环境配置:java,tomcat,maven
- 基于netty的企业即时通讯系统的设计与实现-离线消息处理
- 整形输入优化
- 一碗香喷喷的心灵鸡汤——初入行业的感悟总结
- 大数据时代:传统BI还能走多远?
- Animation动画
- Docker-SSH服务的配置
- [JS]JS面向对象编程——创建对象
- iOS App 引导页开发
- Python 数据处理:Pandas 模块的 12 种实用技巧