文件名称:
基于Openfire推送服务的消息防丢失机制.pdf
开发工具:
文件大小: 280kb
下载次数: 0
上传时间: 2019-09-13
详细说明:针对现有消息推送技术应用于无线网络信号不稳定的环境中容易导致消息丢失这一问题,以电力生产领域的移动应用为例,提出基于Openfire推送服务的消息防丢失机制,即在现有的消息推送架构中增加消息管理服务器并设计消息队列与回执机制.仿真实验与实际应用结果均证明该机制具有较高的鲁棒性与有效性.第2期
刘聪睿,等:基于 Openfire推送服务的消息防丢失机制
223
执机制
业务系统
Openfile
客户端
2.1加入防丢失机制后的推送架构
为解决消息在推送过程中的丢失问题,
建立 Openfile长连接
生成推送消息
在消息推送架构中添加了消息管理服务器和
连接成功
消息队列,取代原先业务系统直接推送消息
的模式,如图3所示
查询用户是否在线
返回在线
在图3中,消息管理服务器负责管理消息
调用推送方法
的推送及消息推送历史的记录,消息队列负责
推送消息
返回凋用成功
推送消息的缓存和排序在新的架构中,业务系
统仅需将消息插入消息队列中,后续推送工作
图2消息推送流程
由消息管理服务器执行
Fig 2 Message push flow
2.2消息回执机制
消息丢失问题的本质是消息发送端认为「业务系统
Openfile
班立连该」客户端」
消息已成功发出,将消息标注为已发送,并且
消息推送
不再重新发送,但接收端实际上并未接收到
该消息,从而导致该消息在发送过程中丢失
还吗
架
要解决该问题,就需要修改发送端发出消息
的机制基于此,本文引人了消息回执机制消
息回执是消息接收端在收到消息时向发送端
发送的一条消息,表示推送消息已成功被接
≤
取/删除消
消息管理
收,发送端只有接收到消息回执才认为该消
服务器
息发送成功
图3加入防丢失机制后的推送架构
2.3上位机消息推送
Fig 3 The push architecture with loss prevention mechanism
增加消息队列、消息管理服务器和消息
回执机制后,消息推送流程更新如图4所示.
消息管理服务器
Openfile
客户端
建立 Openfile长连接
从消息队列删除消息
连接成功
查询用户是否在线
返回在线
调用推送方法
返国调用成功
推送消息
调用回拟接口
从消息队列删除消息
返回调用成功
图4更新的消息推送流程
Fig 4 Updated message push flow
当业务系统生成消息时,不再直接调用推送方法推送,而是将消息插入消息队列中消息管理服务器
定期查询消息队列中的消息,消息队列中的消息均认为是未被推送的消息,判断消息发送的目标客户端是
否与 Openfire连接,如果连接则调用 Openfire方法将该消息推送至客户端客户端接收到该消息后,调用
消息管理服务器所发布的消息回执接口,告知消息管理服务器消息已收到消息管理服务器收到该通知
后,将推送成功的消息从消息队列中移除,消息推送流程结東
224
西安工程大学学报
第31卷
2.4下位机消息接收
通过消总回执机制,服务端可确保消息在客户端接收后才会删除,但是相应的也会带来新的问题:若
客户端一直未发送回执,则该消息将被轮询推送多次,考虑到实际场合多种因索影响下客户端可能在收到
消息后未能及时调用回执接囗,客户端有可能重复多次收到同一条消息推送,因此客户端需要对重复消息
进行处理.
在消息队列中,使用自增流水号作为消息的唯一编码,服务端在推送时将该流水号打包在推送消息中
推送给客户端客户端每次接收到消息后,根据流水号判断本地数据库中是否已有此数据若没有,则存人
本地数据库并进行相应操作,反之则忽略操作,最终客户端调用消息回执接口提示服务端消息已被接收
3仿真与实际应用
为了验让提出的基于 Openfire推送服务的消息防丢失机制,文中设计∫原型系统进行仿真实验在实
验室环境下,对添加了消息回执机制的推送服务进行了上万条数据的消息推送测试,实验结果显示没有仟
何一条消息数据丢失为了将该技术在电力生产领域推广应用,目前,原型系统在电厂生产现场试运行,同
样取得了较好的效果经过多次实践检验,相比于传统的消息推送方法,本文提出的基于 Openfile推送服
务的消息防丢失机制在增加了小量资源消耗的情况下,可以确保消息在推送过程中不会丢失,使消息可以
在电厂生产现场的复杂环境下正常传输,提高日常生产环节的工作效率
4结论
(1)提出的基于 Openfile推送服务的消息防丢失机制具有较高的鲁棒性与有效性
(2)在小量资源消耗情况下,可保证消息在复杂环境的推送过程中不丢失
參考文献( References)
L1]林东岱,田有亮,田呈亮移动安全技术研究综述[J]保密科学技术,2014(3):4-25,
LIN Dongdai, TIAN Youliang, TiAN Chengliang, Survey on mobility security technology[J]. Secrecy Science and Tech-
2914,(3):4-25
[2」刘永玲,刘兀,郭克华.一种面向移动终端的自适应消息推送策略[J计算机工程与科学,2013,35(12):114-119
LIU Yongling, LIU Wu, GUO Kehua, An adaptive massage pushing strategy for mobile devices[J]. Computer Engineer-
ing8 Scicncc,2013,35(12):114-119.
[3]邱杰,朱晓姝,孙小雁基于Epol模型的消息推送研究与实现[J合肥工业大学学报(白然科学版),2016,39(4);476
480
QIU Jie, ZHU Xiaoshu, Sun Xiaoyan. Research and implementation of message push based on Epoll modelLJJ.Journal of
Hefei University of Tcchnology( Natural Sciencc), 2016, 39(4): 476-480
[4]许金喜,张新有 Android平台基于MQTT协议的推送机制[J二计算机系统应用,2015,24(1);185-190
XU Jinxi, ZHANG Xinyou Push mechanism on android platform based on MQTT protocolLJ] Computer Systems
Applications,2015,24(1):185-190
[5] CIIEN Mingming, TANG Hong, CHEN Yuzhi, ct al. Design and implementation of communication system based on
android platform[J]. RISTI-Revista Iberica de Sistemas e Tecnologias de Informacao, 2016, 17(E5): 459-470.
[6]刘晓光,刘剑锋,兰洁基于 Openfile服务器的用户行为审计插件设计与实现[J]电子设计工程,2016,24(13):7-12
LIU Xiaoguang, LIU Jianfeng, LAN Jie, Design and implementation of users' action monitoring and auditing plugin
ased on openfire serverLJJElectronic Design Engineering, 2016,24(13): 7-12.
[7]周谦,刘志勤,王耀彬等基于XMPP的智能小区远程控制系统研究与设计[门计算机测量与控制,2015,23(2):481
484,
ZHOU Qian, LIU Zhigin, WANG Yaobin, et al. Research and design on a XMPP-based remote control system of the in
telligent community[J]. Computer Measurement Control, 2015,23(2): 481-484.
(下转第250页)
250
西安工程大学学报
第31卷
L9] KIIALILI A, SAMI A Systeln detect: A systematic approach to critical state determination for industrial intrusion de-
tection systems using Apriori algorithm[J]Journal of Process Control, 2015, 27(6): 154-160
[10] VIALARDI C, BRAVO J, SHAFTI L, et al. Recommendation in higher education using data mining techniques[J]
Journal af Animal Ecology, 2015, 14(2):326-336
[ll] CZIBULA G, MARiAn Z, CZIBULA I G Detecting software design defects using relational association rule mining
[J. Knowledge and Information Systems, 2015, 42(3): 545-577
[12] HILLS 3, BAGNALL A, IGLESIA B D L,ct al. Brute supprcs-sion: A sizc rcduction mcthod for Apriori rule setsJ]
Journal of Intelligent InforInation Systerms, 2013, 40(3):431-454
[13] NGUYEN T C, SHEN W, ILO Z,et al. Novel data integrity verification schemes in cloud storage[M].Switzerland
Springer International Publishing, 2015:115-125
[14] JEONG S, CHIBA K, OBAYASHI S Data mining for aerodynamic design space[J] Journal of Aerospace Computing
Information Communication, 2015, 2(11):452469
[15]彭显刚,林利祥,刘艺等数据挖掘技术在电价执行稽查中的应用研究[]电气应用,2016,2(11):369-375
PENG Xiangang, LiN Lixiang,lIU Yi,et al. The application of data mining technology in the electricity price to per
form inspection J]. Electrotechnical Application, 2016, 2(11): 369-375
[6]张旭东基于混合数据挖掘方法的入侵检测算法研究[J信息安全与技术,2015,6(2):31-33
ZHANG Xudong. Research on intrusion detection algorithm based on hybrid data mining method[J] Information Secur
ity and Technology, 2015,6(2): 31-33
责任编辑:武晖
x0《0《30《03)003加0》】0【》净0》其》》0》》》0E33度3
(上接第224页)
8」刘虹多操作系统推送平台的设计与实现[D哈尔滨:哈尔滨理工大学,2015:8
LIU Hong. The design and implementation of multi-operating system push platform D]. Harbin: Harbin University of
Science and Technology, 2015: 8
9]王保义,王民安,张少敏,一种基于GCM的智能变电站报文安全传输方法[J]电力系统自动化,2013,37(3):87-92
WANG BaOyi, WANG Minan, ZHANG Shaomin, A secure message transmission method based on GCM for smart sub-
station[J]. Automation of Electric Power Systems, 2013, 37(3): 87-92
10]任享,马跃,杨海波等基于MQTT协议的消息推送服务器[]计算机系统应用,2014,23(3):77-82
REN Hong, MA Yue, YANG Haibo, et al. Message pushing server based on the MQTT protocal[J]. Computer Sys-
tems & Applications, 2014, 23(3): 77-82
11]李丽陆良虎闫荞荞等基于XMPP的在线客服系统设计与实现「J]计算机测量与控制,2012,20(5):1395-1388
LiLi, lU Lianghu, YAN Qiaoqiao, et al. Design and implementation of online customer service system based an XMPP
[31. Computer measuremcnt Control, 2012, 20(5): 1385-1388
责任编辑:武晖
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.