一种离线消息的处理方法与系统技术方案

技术编号:37678632 阅读:31 留言:0更新日期:2023-05-26 04:44
本发明专利技术公开了一种离线消息的处理方法与系统,服务端通过消息队列记录客户端的离线消息获取请求,并启动预设个数的消息处理线程;所述消息处理线程从消息队列中获取所述离线消息获取请求,并获取所述离线消息获取请求关联的离线消息,实时监测服务端与客户端的长连接是否空闲,仅在长连接空闲时进行离线消息的发送;客户端对服务端发送的在线消息进行即时展示,并在收到离线消息时根据时序信息对离线消息与页面中的在线消息进行重新排列后展示;本发明专利技术能够降低服务端的并发压力,避免循环发送离线消息导致正常的在线消息堵塞,避免历史的离线消息的延时发送导致与实时的在线消息发生展示时序错乱的情况。发生展示时序错乱的情况。发生展示时序错乱的情况。

【技术实现步骤摘要】
一种离线消息的处理方法与系统


[0001]本专利技术涉及互联网
,特别涉及一种离线消息的处理方法与系统。

技术介绍

[0002]在现在很多系统或者APP中,都存在使用消息推送这样的功能。而实际情况是,一般APP系统的客户端数量会达到几十上百万之多。如此多的APP每一个均需要与服务器保持有一个长连接,这样就有几十上百万的长连接连接到服务器上。同时,已建立长连接的APP需要每隔一定时间发送心跳包给服务器,由服务端来明确该个APP设备是否已经断线的标识。
[0003]在这种存在几十万到几百万的长连接连接到服务器的情况,就已经会给服务器带来了很大的压力了。由于手机客户端的网络情况不稳定,经常会出现断网,上网,或者网络切换等等网络上的问题,造成推送消息存在在线推送和离线推送两种情况。当网络稳定时通道建立,手机客户端在线,进行消息的在线推送。当断网或者其他情况,通道未成功建立,则表示手机客户端不在线,服务端保持离线消息,待客户端下次上线时,进行离线消息的发送。
[0004]此时,存在一种情况。当服务器重启时,大量的离线用户连接上来,均本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种离线消息的处理方法,其特征在于,包括步骤:S1、服务端通过消息队列记录客户端的离线消息获取请求,并启动预设个数的消息处理线程;S2、所述消息处理线程从消息队列中获取所述离线消息获取请求,并获取所述离线消息获取请求关联的离线消息,实时监测服务端与客户端的长连接是否空闲,仅在长连接空闲时进行离线消息的发送;S3、客户端对服务端发送的在线消息进行即时展示,并在收到离线消息时根据时序信息对离线消息与页面中的在线消息进行重新排列后展示。2.根据权利要求1所述的一种离线消息的处理方法,其特征在于,所述步骤S1之前还包括步骤:S01、服务端判断是否与用户建立长连接,若未与用户建立长连接,则接收用户的离线消息并存储至缓存或数据库中;所述步骤S2具体为:所述消息处理线程从消息队列中获取所述离线消息获取请求,并从缓存或数据库中获取所述客户端的离线消息,实时监测服务端与客户端的长连接是否空闲,仅在长连接空闲时进行离线消息的发送。3.根据权利要求1所述的一种离线消息的处理方法,其特征在于,所述步骤S1之前还包括步骤:服务端接收客户端的长连接建立请求,与所述客户端建立长连接。4.根据权利要求1所述的一种离线消息的处理方法,其特征在于,客户端与服务端之间设有消息中间件,所述消息队列位于所述消息中间件中,客户端的所述离线消息获取请求发送至所述消息中间件,服务端通过消息中间件的消息队列记录所述离线消息获取请求,并由消息处理线程从所述消息中间件的消息队列中获取客户端的所述离线消息获取请求。5.一种离线消息的处理系统,包括服务端与客户端,所述服务端包括第一处理器、第一存储器以及存储在所述第一存储器中并可在所述第一处理器上运行的第一计算机程序,所述客户端包括第二处理器、第二存储器以及存储在...

【专利技术属性】
技术研发人员:刘德建郭孟祺陈娟郭凤英郑坦陈宏
申请(专利权)人:福建天泉教育科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1