一种基于ActiveMQ的客户端在线状态更新的方法、程序和系统技术方案

技术编号:26606663 阅读:42 留言:0更新日期:2020-12-04 21:31
本发明专利技术属于通信领域,功能了一种基于ActiveMQ的客户端在线状态更新的方法,所述方法为:在接收到ActiveMQ中间件发送的客户端上线消息时,更新数据库中会话ID和客户端ID的映射关系,并使客户端的状态处于在线状态;在接收到ActiveMQ中间件发送的客户端下线消息时,查询数据库中是否存在包含会话ID的映射,若存在,则清除该会话ID和客户端ID的映射关系并将客户端的状态更新为下线状态,若不存在,则保持客户端的状态为在线状态不变;所述客户端上线消息包括客户端ID和客户端和ActiveMQ中间件之间建立连接时生成会话ID,所述客户端下线消息包括会话ID。基于该方法可以避免客户端的在线状态更新错误,同时,本发明专利技术还公开了基于该方法的程序和系统。

【技术实现步骤摘要】
一种基于ActiveMQ的客户端在线状态更新的方法、程序和系统
本专利技术涉及通信领域,具体为一种免基于ActiveMQ的客户端在线状态更新的方法、程序和系统。
技术介绍
现有技术中,设备(即客户端)和中间件建立和断开连接时,由业务系统的上下线程序通过监听ActiveMQ主题"ActiveMQ.Advisory.Connection"处理上线下线逻辑。其逻辑过程为:设备A连接activemq,中间件生成客户端上线消息,该消息包含了会话ID和客户端ID,会话ID每建立一次连接都会生成且每次连接都是新的会话ID,上下线程序通过监听主题获取上线消息,更新设备端的状态为在线;设备A断开和activemq的连接时,会通过中间件,中间件会生成客户端下线消息并断开连接,客户端下线消息被上下线程序监听后更新客户端状态为下线;存在的问题在于:设备A是在线连接activemq状态,当设备A网络突然断开,这时设备A来不及发送下线消息给activemq,此刻的设备A在activemq仍然是处于在线状态,短暂时间后本文档来自技高网...

【技术保护点】
1.一种基于ActiveMQ的客户端在线状态更新的方法,其特征在于:所述方法为:/n在接收到ActiveMQ中间件发送的客户端上线消息时,更新数据库中会话ID和客户端ID的映射关系,并使客户端的状态处于在线状态;/n在接收到ActiveMQ中间件发送的客户端下线消息时,查询数据库中是否存在包含会话ID的映射,若存在,则清除该会话ID和客户端ID的映射关系并将客户端的状态更新为下线状态,若不存在,则保持客户端的状态为在线状态不变;/n所述客户端上线消息包括客户端ID和客户端和ActiveMQ中间件之间建立连接时生成会话ID,所述客户端下线消息包括会话ID。/n

【技术特征摘要】
1.一种基于ActiveMQ的客户端在线状态更新的方法,其特征在于:所述方法为:
在接收到ActiveMQ中间件发送的客户端上线消息时,更新数据库中会话ID和客户端ID的映射关系,并使客户端的状态处于在线状态;
在接收到ActiveMQ中间件发送的客户端下线消息时,查询数据库中是否存在包含会话ID的映射,若存在,则清除该会话ID和客户端ID的映射关系并将客户端的状态更新为下线状态,若不存在,则保持客户端的状态为在线状态不变;
所述客户端上线消息包括客户端ID和客户端和ActiveMQ中间件之间建立连接时生成会话ID,所述客户端下线消息包括会话ID。


2.根据权利要求1所述的基于ActiveMQ的客户端在线状态更新的方法,其特征在于,通过订阅ActiveMQ中间件的上下线主题获取客户端上线消息和客户端下线消息。


3.一种上下线处理程序,其特征在于,包括如下模块:
数据库:用于存储会话ID和客户端ID的映射关系;
上线消息处理模块:用于在接收到ActiveMQ中间件发送的客户端上线消息时,更新数据库中会话ID和客户...

【专利技术属性】
技术研发人员:余燕威何奎陶洋
申请(专利权)人:广州鲁邦通物联网科技有限公司
类型:发明
国别省市:广东;44

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

1