[发明专利]队列消息处理方法及终端设备有效
申请号: | 201710879900.1 | 申请日: | 2017-09-26 |
公开(公告)号: | CN107766160B | 公开(公告)日: | 2019-12-13 |
发明(设计)人: | 李斌;丁明珠 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 44237 深圳中一专利商标事务所 | 代理人: | 官建红 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 队列 消息 处理 方法 终端设备 | ||
本发明适用于数据处理技术领域,提供了队列消息处理方法及终端设备。该方法包括:设置运行队列和等待队列;获取运行队列中的未处理消息,根据运行队列中的未处理消息计算运行队列的当前负载度;根据运行队列的当前负载度判断运行队列中的未处理消息是否超过运行队列的当前限度;在运行队列中的未处理消息未超过运行队列的当前限度时,将等待入列的队列消息存储至运行队列中;在运行队列中未处理消息超过运行队列的当前限度时,将等待入列的队列消息存储至等待队列中。上述队列消息处理方法及终端设备,能够提高消息的实时性,淘汰时间较久的数据,提高消息传输的效率。
技术领域
本发明属于数据处理技术领域,尤其涉及队列消息处理方法及终端设备。
背景技术
消息队列用于在消息的传输过程中保存消息,传统的消息队列采用“先进先出”或“后进先出”的方式实现消息的入列和出列。而对于大量的消息需要传输处理时,传统的消息队列由于需要周期性等待查询队列的状态,因此导致效率较低,消息转发的实时性较差。
发明内容
有鉴于此,本发明实施例提供了队列消息处理方法及终端设备,以解决现有技术中由于需要周期性等待查询队列的状态导致效率较低、实时性较差的问题。
本发明实施例的第一方面提供了一种队列消息处理方法,包括:
设置运行队列和等待队列,所述运行队列基于分布式文档存储数据库的固定集合构建,所述等待队列基于分布式文档存储数据库的无界集合构建;
获取运行队列中的未处理消息,根据所述运行队列中的未处理消息计算所述运行队列的当前负载度,所述运行队列基于分布式文档存储数据库的固定集合构建;
根据所述运行队列的当前负载度判断所述运行队列中的未处理消息是否超过所述运行队列的当前限度;
在所述运行队列中的未处理消息未超过所述运行队列的当前限度时,将等待入列的队列消息存储至所述运行队列中;其中,将等待入列的队列消息存储至所述运行队列中后,所述运行队列的当前负载度增加;
在所述运行队列中的未处理消息超过所述运行队列的当前限度时,将等待入列的队列消息存储至等待队列中;所述等待队列基于分布式文档存储数据库的无界集合构建;
其中,所述根据所述运行队列的当前负载度判断所述运行队列中的未处理消息是否超过所述运行队列的当前限度为:
计算所述运行队列的当前限度:其中A为所述运行队列可容纳的消息容量,B为预设的平均消息大小,C为预设的负载度比例阀值;
在大于所述运行队列的当前负载度时,判定所述运行队列中的未处理消息未超过所述运行队列的当前限度;
在小于等于所述运行队列的当前负载度时,判定所述运行队列中的未处理消息超过所述运行队列的当前限度。
可选的,所述根据所述运行队列中的未处理消息计算运行队列的当前负载度为:
根据预设负载和所述未处理消息占用的负载,计算所述运行队列的当前负载度。
可选的,所述队列消息处理方法还包括:
在所述运行队列中未处理消息未超过所述运行队列的当前限度且所述等待队列中存在队列消息时,将所述等待队列中的队列消息存储至所述运行队列中。
可选的,所述队列消息处理方法还包括:
监测所述队列消息在所述运行队列中的时间、所述队列消息的入队耗时信息、所述队列消息的出队耗时信息和所述队列消息的大小,并生成日志文件进行存储。
本发明实施例的第二方面提供了一种队列消息处理终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710879900.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种页面换出方法
- 下一篇:用于电梯远程监控平台的MVC框架