[发明专利]消息分发方法、装置、服务器及存储介质有效
申请号: | 201810159418.5 | 申请日: | 2018-02-26 |
公开(公告)号: | CN108390933B | 公开(公告)日: | 2021-03-09 |
发明(设计)人: | 兰伟 | 申请(专利权)人: | 广州方硅信息技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 校丽丽 |
地址: | 511442 广东省广州*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息 分发 方法 装置 服务器 存储 介质 | ||
本申请公开了一种消息分发方法、装置、服务器及存储介质,属于计算机技术领域。该消息分发方法包括:接收对应目标频道的信息发布通知;根据预先存储的频道与订阅账户的对应关系,确定目标频道对应的订阅账户,获取目标频道对应的订阅账户的登录状态;如果目标频道对应的订阅账户中存在离线状态的第一订阅账户,则存储信息发布通知;当检测到第一订阅账户为在线状态时,向第一订阅账户的登录终端发送信息发布通知。本申请在第一订阅账户处于在线状态时,向该第一订阅账户发送目标频道的信息发布通知,避免第一订阅账户永远无法接收到在该第一订阅账户处于离线状态时,发布账户发布的目标频道的信息发布通知的效果。
技术领域
本申请涉及计算机技术领域,特别涉及一种消息分发方法、装置、服务器及存储介质。
背景技术
由于物联网的海量数据具有实时、高吞吐、数据量巨大以及数据内容杂的特性,因此需要一种能够支持实时、高并发、支持海量数据的消息分发机制对这些海量数据进行处理。
Redis是非关系型数据库,属于高性能的键值对数据库存储系统。Redis的架构包括两个部分:Redis客户端和Redis服务器。其中,Redis客户端负责向Redis服务器发送请求并接受来自Redis服务器的响应,Redis服务器负责处理Redis客户端的请求(比如存储数据、修改数据等)。请参考图1,其示出了本申请一个实施例提供的基于Redis的订阅发布模式的架构图。基于Redis的订阅发布模式定义了一种一对多的依赖关系,在多个订阅账户(subscriber_1,subscriber_2,subscriber_3)同时监听一个频道(channel)的情况下,当发布账户(publisher)在该频道发送消息(channel msg)时,服务器会将该消息(msg)发送至所有订阅该频道的订阅账户。其中,发布账户和订阅账户均为Redis客户端,Channel为Redis服务器定义的频道。
由于Redis服务器未对消息提供持久化存储,因此消息被发送后,如果没有订阅账户接收,消息则会丢失,导致一旦订阅账户未接收到该消息,则永远无法接收到该消息。
发明内容
本申请实施例提供了一种消息分发方法、装置、服务器及存储介质。所述技术方案如下:
第一方面,提供了一种消息分发方法,所述方法包括:
接收对应目标频道的信息发布通知;
根据预先存储的频道与订阅账户的对应关系,确定所述目标频道对应的订阅账户,获取所述目标频道对应的订阅账户的登录状态;
如果所述目标频道对应的订阅账户中存在离线状态的第一订阅账户,则存储所述信息发布通知;
当检测到所述第一订阅账户为在线状态时,向所述第一订阅账户的登录终端发送所述信息发布通知。
第二方面,提供了一种消息分发装置,所述装置包括:
接收模块,用于接收对应目标频道的信息发布通知;
第一确定模块,用于根据预先存储的频道与订阅账户的对应关系,确定所述目标频道对应的订阅账户,获取所述目标频道对应的订阅账户的登录状态;
存储模块,用于如果所述目标频道对应的订阅账户中存在离线状态的第一订阅账户,则存储所述信息发布通知;
发送模块,用于当检测到所述第一订阅账户为在线状态时,向所述第一订阅账户的登录终端发送所述信息发布通知。
第三方面,提供了一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的消息分发方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州方硅信息技术有限公司,未经广州方硅信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810159418.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种计算机远程监控装置
- 下一篇:一种电动汽车综合管控系统