[发明专利]一种消息发布和订阅方法和系统在审
| 申请号: | 202010343584.8 | 申请日: | 2020-04-27 |
| 公开(公告)号: | CN111651281A | 公开(公告)日: | 2020-09-11 |
| 发明(设计)人: | 陈波;邓伟;张志平;胡道生;夏曙东 | 申请(专利权)人: | 北京中交兴路信息科技有限公司 |
| 主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F16/906 |
| 代理公司: | 北京辰权知识产权代理有限公司 11619 | 代理人: | 付婧 |
| 地址: | 100176 北京市海淀区东北*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 消息 发布 订阅 方法 系统 | ||
本申请公开了一种消息发布和订阅方法和系统,包括:创建事件监听线程,事件监听线程利用回调函数分别处理每个读写事件,获取订阅事件,发送至订阅线程;创建订阅线程,订阅线程对所述订阅事件中的订阅请求按定义格式进行分类,将订阅用户和订阅条件加入注册表;对接收到的消息进行拆分,根据所述注册表中的订阅条件确定订阅用户,发送所述消息。通过对所述订阅事件中的订阅请求按定义格式进行分类,将订阅用户和订阅条件加入注册表,再对接收到的消息进行拆分,根据所述注册表中的订阅条件确定订阅用户,发送所述消息,能够针对具体的订阅内容,将对应的消息实时发送给用户,不需要存储多份相同数据,分别发布给不同用户,成本低。
技术领域
本申请涉及信息处理领域,尤其涉及一种消息发布和订阅方法和系统。
背景技术
现有的消息中间件实现的订阅和发布机制,大都基于话题(Topic),用户只能根据话题的不同订阅不同的消息,不能进一步细分。比如某用户只对某一话题下的消息中的部分内容感兴趣,但该话题下并非所有消息都包含此用户关心的内容,此时用户只能将该话题下的消息全部订阅接收,自行过滤、应用。再者,同一份数据,若不同用户有不同的消息内容需求时,也只能按用户的需求创建不同的话题,存储多份相同数据,分别发布给不同用户,这样会占用大量的成本。
现有消息中间件实现的订阅和发布机制,作为消费者基本都采取定时拉取方式来消费数据,这样会有一定延迟,在大数据流量下,延迟会更加明显;无法满足用户对最新数据有实时获取的需求。
综上所述,需要提供一种能够根据订阅的消息的内容,实时将消息发送至订阅用户,且成本低的的消息发布和订阅方法和系统。
发明内容
为解决以上问题,本申请提出了一种消息发布和订阅方法和系统。
一方面,本申请提出一种消息发布和订阅方法,包括:
创建事件监听线程,事件监听线程利用回调函数分别处理每个读写事件,获取订阅事件,发送至订阅线程;
创建订阅线程,订阅线程对所述订阅事件中的订阅请求按定义格式进行分类,将订阅用户和订阅条件加入注册表;
对接收到的消息进行拆分,根据所述注册表中的订阅条件确定订阅用户,发送所述消息。
优选地,所述对接收到的消息进行拆分,根据所述注册表中的订阅条件确定订阅用户,发送所述消息,包括:
将接收到的消息按照定义格式进行拆分,得到字段组;
获取各字段组中的字段内容,根据注册表中的订阅条件确定订阅用户;
根据订阅用户对应的所述订阅条件,对订阅用户进行去重;
发送所述消息至订阅用户。
优选地,所述发送所述消息至订阅用户,包括:
根据用户的登录或注销状态,将所述消息发送至当前状态为登录的订阅用户。
优选地,在所述发送消息至订阅用户之前,还包括:
创建用户管理线程;
事件监听线程利用回调函数分别处理每个读写事件,获取登录或注销事件,发送至用户管理线程;
用户管理线程确定用户的登录或注销状态。
优选地,在所述事件监听线程利用回调函数分别处理每个读写事件,获取订阅事件,发送至订阅线程之前,还包括:
创建订阅线程。
优选地,所述订阅条件包括:字段索引和字段内容。
第二方面,本申请提出一种消息发布和订阅系统,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中交兴路信息科技有限公司,未经北京中交兴路信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010343584.8/2.html,转载请声明来源钻瓜专利网。





