基于发布订阅模式的多用户消息推送方法及推送系统技术方案

技术编号:31790356 阅读:14 留言:0更新日期:2022-01-08 10:47
本发明专利技术公开了基于发布订阅模式的多用户消息推送方法及推送系统,属于消息用户推送技术领域,要解决的技术问题为如何基于消息的主题进行消息的发送和接收。包括如下步骤:消息发布者收集消息订阅者的需求,制定订阅主题,并根据订阅主题设置个性化的消息通知格式;消息订阅者基于其兴趣订阅或取消订阅主题,并生成对应的主题订阅状态;通过消息订阅列表存储所述订阅主题、消息通知格式以及主题订阅状态;消息发布者将其生产的消息推送至消息队列,消息队列为分布式消息队列,消息队列将接收的消息存储至其内存队列;基于内容和主题对每条消息进行分发,并配合消息订阅列表将每条消息推送至对应的消息订阅者。消息推送至对应的消息订阅者。消息推送至对应的消息订阅者。

【技术实现步骤摘要】
基于发布订阅模式的多用户消息推送方法及推送系统


[0001]本专利技术涉及消息用户推送
,具体地说是基于发布订阅模式的多用户消息推送方法及推送系统。

技术介绍

[0002]随着政务服务一体化的建设推进,各级政务服务平台已经趋于成熟,但是用户对服务的便利性和实用性要求也越来越高,但目前用户在使用系统的过程中难免会遇到这样的尴尬局面:在使用过程中,接收不到想要的消息通知,影响用户的使用体验,用户希望既能够及时查看一些重要的消息,同时避免被某些垃圾消息打扰。一种好的反馈方式的出现,会一定程度上直接影响到网站的质量,系统的优劣。反馈式的交互,依据于以用户的使用体验为中心的设计理念,展现具体设计细节,营造良好的用户体验。
[0003]基于上述分析,如何基于消息的主题进行消息的发送和接收,是需要解决的技术问题。

技术实现思路

[0004]本专利技术的技术任务是针对以上不足,提供基于发布订阅模式的多用户消息推送方法及推送系统,来解决如何基于消息的主题进行消息的发送和接收的问题。
[0005]第一方面,本专利技术的基于发布订阅模式的多用户消息推送方法,包括如下步骤:
[0006]消息发布者收集消息订阅者的需求,制定订阅主题,并根据订阅主题设置个性化的消息通知格式;
[0007]消息订阅者基于其兴趣订阅或取消订阅主题,并生成对应的主题订阅状态,所述主题订阅状态用于表示每个消息订阅者对每个订阅主题的订阅或取消的状态;
[0008]通过消息订阅列表存储所述订阅主题、消息通知格式以及主题订阅状态;
[0009]消息发布者将其生产的消息推送至消息队列,所述消息队列为分布式消息队列,消息队列将接收的消息存储至其内存队列;
[0010]基于内容和主题对每条消息进行分发,并配合消息订阅列表将每条消息推送至对应的消息订阅者。
[0011]作为优选,消息发布者收集消息订阅者的需求,针对访问量或查询率满足阈值的内容制定订阅主题。
[0012]作为优选,所述消息通知格式包括消息内容、消息类型、发送位置、发送时间以及消息级别。
[0013]作为优选,消息队列基于先进先出的方式接收和推送消息。
[0014]作为优选,消息生产者将其生产的消息推送至虚拟机,虚拟机通过交换机将消息路由至对应的消息队列。
[0015]作为优选,将每条消息推送至对应的消息订阅者之前,对消息进行过滤操作,过滤操作包括如下步骤:
[0016]对消息进行排序;
[0017]对消息进行优先级配置,基于优先级队列模式对消息进行处理;
[0018]基于消息的ID及逆行重复消息的检测和删除,以删除重复的消息;
[0019]进行有毒信息检测,将格式错误的消息或需要访问不可用资源任务的消息删除;
[0020]基于消息订阅者配置的消息生命周期,检查消息是否过期并将过期的消息删除。
[0021]第二方面,本专利技术的基于发布订阅模式的多用户消息推送系统,包括:
[0022]消息发布模块,所述消息发布模块面向消息发布者并配置于对应的消息发布者应用服务器,消息发布者通过消息发布模块收集消息订阅者的需求,制定订阅主题,并根据订阅主题设置个性化的消息通知格式,消息发布者通过消息发布模块生产并发布消息;
[0023]消息订阅模块,所述消息接收模块面向消息订阅者并配置于对应的消息订阅者应用服务器,消息订阅者通过消息订阅模块基于其兴趣订阅或取消订阅主题,并生成对应的主题订阅状态,消息订阅者通过消息订阅模块接收消息;
[0024]消息推送列表,所述消息推送列表配置于对应的消息队列应用服务器,用于存储所述订阅主题、消息通知格式以及主题订阅状态;
[0025]消息队列,所述消息队列为分布式消息队列并配置于对应的消息队列应用服务器,所述消息订阅模块用于调用消息发送接口将消息订阅者生产的消息发送至消息队列,所述消息队列将接收的消息存储至其内存队列;
[0026]消息推送模块,所述消息推送模块配置于对应的消息队列应用服务器,用于基于内容和主题对每条消息进行分发,并与消息订阅列表配合通过消息推送接口将每条消息推送至对应的消息订阅者;
[0027]消息监控模块,所述消息监控模块用于对消息进行过滤操作,过滤操作包括如下步骤:
[0028]对消息进行排序;
[0029]对消息进行优先级配置,基于优先级队列模式对消息进行处理;
[0030]基于消息的ID及逆行重复消息的检测和删除,以删除重复的消息;
[0031]进行有毒信息检测,将格式错误的消息或需要访问不可用资源任务的消息删除;
[0032]基于消息订阅者配置的消息生命周期,检查消息是否过期并将过期的消息删除。
[0033]作为优选,消息发布者通过消息发布模块收集消息订阅者的需求,针对访问量或查询率满足阈值的内容制定订阅主题。
[0034]作为优选,消息通知格式包括消息内容、消息类型、发送位置、发送时间以及消息级别;
[0035]消息队列基于先进先出的方式接收和推送消息。
[0036]作为优选,还包括:
[0037]虚拟机,所述虚拟机至少一个,所述至少一个虚拟机配置于消息队列应用服务器,用于通过消息接收接口从消息订阅模块获取消息生产者生产的消息;
[0038]交换机,所述交换机配置于消息队列应用服务器并与交换机交互,用于与消息推送列表配合将消息路由至对应的消息通道,并通过消息通道将消息推送至对应的消息订阅者。
[0039]本专利技术的基于发布订阅模式的多用户消息推送方法及推送系统具有以下优点:
[0040]1、发布/订阅者模式可以将众多需要通信的子系统解耦,每个子系统都可以独立管理。而且即使部分子系统下线了,也不会影响系统消息的整体管理,为应用程序提供了关注点分离。每个应用程序都可以专注于其核心功能,而消息传递基础结构负责将消息路由到每个消费者手里;
[0041]2、提升了系统的可伸缩性,并提高了发送者的响应能力。原因是发送方可以快速地向输入通道发送一条消息,然后返回到其核心处理职责,而不必等待子系统处理完成。然后消息传递的基础结构负责确保把消息传递到每个订阅者手里;
[0042]3、发布/订阅者模式提高了可靠性。异步的消息传递有助于应用程序在增加的负载下继续平稳运行,并且可以更有效地处理间歇性故障;
[0043]4、发布/订阅者模式允许延迟处理或者按计划的处理。例如当系统负载大的时候,订阅者可以等到非高峰时间才接收消息,或者根据特定的计划处理消息;
[0044]5、提高了可测试性。通道可以被监视,消息可以作为整体集成测试策略的一部分而被检查或记录。
附图说明
[0045]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于发布订阅模式的多用户消息推送方法,其特征在于包括如下步骤:消息发布者收集消息订阅者的需求,制定订阅主题,并根据订阅主题设置个性化的消息通知格式;消息订阅者基于其兴趣订阅或取消订阅主题,并生成对应的主题订阅状态,所述主题订阅状态用于表示每个消息订阅者对每个订阅主题的订阅或取消的状态;通过消息订阅列表存储所述订阅主题、消息通知格式以及主题订阅状态;消息发布者将其生产的消息推送至消息队列,所述消息队列为分布式消息队列,消息队列将接收的消息存储至其内存队列;基于内容和主题对每条消息进行分发,并配合消息订阅列表将每条消息推送至对应的消息订阅者。2.根据权利要求1所述的基于发布订阅模式的多用户消息推送方法,其特征在于消息发布者收集消息订阅者的需求,针对访问量或查询率满足阈值的内容制定订阅主题。3.根据权利要求1所述的基于发布订阅模式的多用户消息推送方法,其特征在于所述消息通知格式包括消息内容、消息类型、发送位置、发送时间以及消息级别。4.根据权利要求1所述的基于发布订阅模式的多用户消息推送方法,其特征在于消息队列基于先进先出的方式接收和推送消息。5.根据权利要求1所述的基于发布订阅模式的多用户消息推送方法,其特征在于消息生产者将其生产的消息推送至虚拟机,虚拟机通过交换机将消息路由至对应的消息队列。6.根据权利要求1

5任一项所述的基于发布订阅模式的多用户消息推送方法,其特征在于将每条消息推送至对应的消息订阅者之前,对消息进行过滤操作,过滤操作包括如下步骤:对消息进行排序;对消息进行优先级配置,基于优先级队列模式对消息进行处理;基于消息的ID及逆行重复消息的检测和删除,以删除重复的消息;进行有毒信息检测,将格式错误的消息或需要访问不可用资源任务的消息删除;基于消息订阅者配置的消息生命周期,检查消息是否过期并将过期的消息删除。7.基于发布订阅模式的多用户消息推送系统,其特征在于包括:消息发布模块,所述消息发布模块面向消息发布者并配置于对应的消息发布者应用服务器,消息发布者通过消息发布模块收集消息订阅者的需求,制定订阅主题,并根据订阅主题设置个性化的消息通知格式,消息发布者通过...

【专利技术属性】
技术研发人员:刘康
申请(专利权)人:浪潮软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利