[发明专利]一种基于redis实现消息实时性和持久化的方法及工具在审
申请号: | 202210024169.5 | 申请日: | 2022-01-04 |
公开(公告)号: | CN114491338A | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 李敏;迟钰沛 | 申请(专利权)人: | 浪潮软件股份有限公司 |
主分类号: | G06F16/957 | 分类号: | G06F16/957;G06F16/2455;H04L67/568 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 冯春连 |
地址: | 271000 山东省*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 redis 实现 消息 实时 持久 方法 工具 | ||
1.一种基于redis实现消息实时性和持久化的方法,其特征在于,该方法基于redis的发布订阅模式和set轮询方式,实现过程包括:
消息发布方利用redis的发布模式向redis发送消息,同时,向消息处理器发送一个消息标记;
消息处理器将消息标记发送至消息接收方;
消息接收方接收消息标记,利用redis的订阅模式接收消息提醒,随后采用set轮询的方式去redis中获取未处理的消息,对获取消息进行消费,消费完成后,去redis中删除该消息。
2.根据权利要求1所述的一种基于redis实现消息实时性和持久化的方法,其特征在于,Redis接收到来自消息发布方的消息后,将消息以key-value的形式进行存储。
3.根据权利要求1所述的一种基于redis实现消息实时性和持久化的方法,其特征在于,消息接收方接收消息标记,且未接收到redis的订阅提醒时,消息接收方也会去redis中查询是否有未处理的消息,如果有,则对未处理的消息进行消费。
4.根据权利要求1所述的一种基于redis实现消息实时性和持久化的方法,其特征在于,如果消息接收方去redis中获取消息时发生意外宕机,消息接收方重启服务后,会优先去redis中查询是否有未处理的消息,如果有,则对未处理的消息进行消费,不会出现消息丢失的情况。
5.一种基于redis实现消息实时性和持久化的工具,其特征在于,其实现涉及redis和消息处理器;
redis基于发布模式接收消息发布方发送的消息,基于订阅模式提醒消息接收方接收消息;
在redis接收消息发布方发送的消息时,消息处理器同时接收到该消息对应的消息标记,消息处理器将该消息标记发送至消息接收方;
消息接收方接收消息标记,同时收到来自的消息提醒,随后采用set轮询的方式去redis中获取未处理的消息,对获取消息进行消费,消费完成后,去redis中删除该消息。
6.根据权利要求5所述的一种基于redis实现消息实时性和持久化的工具,其特征在于,Redis接收到来自消息发布方的消息后,将消息以key-value的形式进行存储。
7.根据权利要求5所述的一种基于redis实现消息实时性和持久化的工具,其特征在于,消息接收方接收消息标记,且未接收到redis的订阅提醒时,消息接收方也会去redis中查询是否有未处理的消息,如果有,则对未处理的消息进行消费。
8.根据权利要求5所述的一种基于redis实现消息实时性和持久化的工具,其特征在于,如果消息接收方去redis中获取消息时发生意外宕机,消息接收方重启服务后,会优先去redis中查询是否有未处理的消息,如果有,则对未处理的消息进行消费,不会出现消息丢失的情况。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮软件股份有限公司,未经浪潮软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210024169.5/1.html,转载请声明来源钻瓜专利网。