消息推送方法、系统、电子装置和存储介质制造方法及图纸

技术编号:27692212 阅读:15 留言:0更新日期:2021-03-17 04:48
本申请涉及一种消息推送方法、系统、电子装置和存储介质,该方法包括:消息中心获取需要进行消息推送的消息数据,其中,消息中心是基于T‑IO网络框架构建得到的,消息数据包括至少一个会话token;消息中心判断消息数据的消息发送端的IP地址是否在预设的IP黑名单中,并在IP地址不在IP黑名单内的情况下,按照预设的消息体规则对消息数据进行解析,得到解析后的消息数据;消息中心从解析后的消息数据中提取消息数据的消息类型,并在消息数据的消息类型为群发消息的情况下,根据会话token,将消息数据并发推送至与每个会话token对应的消息接收端。通过本申请,解决了相关技术中消息并发推送效率低的问题,实现了提升消息并发推送效率的技术效果。

【技术实现步骤摘要】
消息推送方法、系统、电子装置和存储介质
本申请涉及计算机
,特别是涉及一种消息推送方法、系统、电子装置和存储介质。
技术介绍
随着越来越多的应用集成纳入到平台上,平台的功能和作用越来越完善,但随之也给用户带来一定的困扰。用户需要不断发掘一个平台的各项功能,同时,平台的消息推送往往存在延迟和丢失的情况。因此,为了让平台实现更灵活的消息推送服务,建立平台内容与人、人与人之间的关联关系,让用户可以充分发掘平台功能,需要建立消息推送系统,用以满足消息推送的实时性需求。为了满足消息推送的实时性需求,需要服务器端在存在需要推送的消息时,主动将消息通过互联网推送给客户端,客户端可以接收服务器端不定时发送的消息。相关技术中,往往采用第三方推送服务来进行消息推送,第三方推送服务通常采用共享的推送通道,受其他推送方的影响,可能造成消息推送的延迟和丢失。同时,第三方推送服务缺乏流量监控和数据统计功能,推送了多少消息、推送成功率这类数据均无统计,并且消息推送过程中所有数据都会经过第三方,存在泄露敏感数据的风险。进一步的,第三方推送服务的服务器往往会采用BIO(同步阻塞,blockingI/O,简称为BIO)、NIO(同步非阻塞,non-blockingI/O,简称为NIO)技术,这类服务器往往存在C10K问题(单机1万个并发连接问题),这导致第三方推送服务的消息并发推送能力下降。目前针对相关技术中消息并发推送效率低的问题,尚未提出有效的解决方案。
技术实现思路
本申请实施例提供了一种消息推送方法、系统、电子装置和存储介质,以至少解决相关技术中消息并发推送效率低的问题。第一方面,本申请实施例提供了一种消息推送方法,包括:消息中心获取需要进行消息推送的消息数据,其中,所述消息中心是基于T-IO网络框架构建得到的,所述消息数据包括至少一个会话token;所述消息中心判断所述消息数据的消息发送端的IP地址是否在预设的IP黑名单中,并在所述IP地址不在所述IP黑名单内的情况下,按照预设的消息体规则对所述消息数据进行解析,得到解析后的所述消息数据;所述消息中心从解析后的所述消息数据中提取所述消息数据的消息类型,并在所述消息数据的消息类型为群发消息的情况下,根据所述会话token,将所述消息数据并发推送至与每个所述会话token对应的消息接收端。在其中一些实施例中,解析后的所述消息数据的内容项包括消息类型和消息接收端系统类型,其中,所述消息类型包括心跳消息、点对点消息和群发消息;所述方法还包括:在所述消息类型为心跳消息的情况下,所述消息中心不进行动作;在所述消息类型为点对点消息的情况下,所述消息中心根据所述会话token,将所述消息数据推送至与所述会话token对应的消息接收端。在其中一些实施例中,解析后的所述消息数据的内容项包括消息类型和消息接收端系统类型,其中,所述消息接收端系统类型包括第一类型和第二类型;根据所述会话token,将所述消息数据并发推送至与每个所述会话token对应的消息接收端包括:在所述消息接收端系统类型为第一类型的情况下,所述消息中心将所述消息数据转发至对应所述第一类型的推送通知服务器,并根据所述会话token,通过所述推送通知服务器将所述消息数据并发推送至与每个所述会话token对应的消息接收端;在所述消息接收端系统类型为第二类型的情况下,所述消息中心根据所述会话token,将所述消息数据并发推送至与每个所述会话token对应的消息接收端。在其中一些实施例中,在消息中心获取需要进行消息推送的消息数据之前,所述方法还包括:所述消息中心分别与消息接收端和消息发送端建立长连接,并维护所述长连接的心跳。在其中一些实施例中,所述消息中心分别与消息接收端和消息发送端建立长连接,并维护所述长连接的心跳包括:所述消息中心与消息接收端建立第一长连接,生成对应于所述消息接收端的第一会话token,并维护所述长连接的心跳;所述消息中心与消息发送端建立第二长连接,生成对应于所述消息发送端的第二会话token,并维护所述长连接的心跳;所述消息中心将第一会话token、第二会话token、第一会话token和所述消息接收端之间的对应关系以及,第二会话token和所述消息发送端的对应关系存储到预设的Redis内存数据库中。在其中一些实施例中,根据所述会话token,将所述消息数据并发推送至与每个所述会话token对应的消息接收端包括:所述消息中心分别检测与每个所述会话token对应的消息接收端和所述消息中心的长连接是否有效;在所述消息接收端和所述消息中心的长连接有效的情况下,所述消息中心将所述消息数据推送至所述消息接收端。在其中一些实施例中,在将所述消息数据并发推送至与每个所述会话token对应的消息接收端之后,所述方法还包括:所述消息中心对所述消息数据并发推送过程中产生的流量进行监控,对所述消息数据并发推送过程中的推送数据进行统计,并展示所述流量的监控数据和所述推送数据。第二方面,本申请实施例提供了一种消息推送系统,包括:消息发布系统,用于发布消息数据给所述消息中心,并存储预设的IP黑名单,以及展示所述消息中心对所述消息数据推送过程中产生的流量数据和推送数据;消息中心,分别与所述消息发布系统和所述消息接收端通信连接,所述消息中心用于执行如上述第一方面所述的消息推送方法;消息接收端,用于接收所述消息中心推送的消息数据。第三方面,本申请实施例提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的消息推送方法。第四方面,本申请实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的消息推送方法。相比于相关技术,本申请实施例提供的消息推送方法、系统、电子装置和存储介质,基于T-IO网络框架构建得到消息中心,并通过消息中心获取需要进行消息推送的消息数据,判断消息数据的消息发送端的IP地址是否在预设的IP黑名单中,并在IP地址不在IP黑名单内的情况下,按照预设的消息体规则对消息数据进行解析,得到解析后的消息数据,然后从解析后的消息数据中提取消息数据的消息类型,最后在消息数据的消息类型为群发消息的情况下,根据会话token,将消息数据并发推送至与每个会话token对应的消息接收端,解决了相关技术中消息并发推送效率低的问题,实现了提升消息并发推送效率的技术效果。本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1是根据本申请实施例的消息推送方法的流程图;图2是根据本申请优选实施例的消息推送方法的流程图;图3是根据本申请实施例的消息推送系统的结构框图;图4是根据本申请实施例本文档来自技高网...

【技术保护点】
1.一种消息推送方法,其特征在于包括:/n消息中心获取需要进行消息推送的消息数据,其中,所述消息中心是基于T-IO网络框架构建得到的,所述消息数据包括至少一个会话token;/n所述消息中心判断所述消息数据的消息发送端的IP地址是否在预设的IP黑名单中,并在所述IP地址不在所述IP黑名单内的情况下,按照预设的消息体规则对所述消息数据进行解析,得到解析后的所述消息数据;/n所述消息中心从解析后的所述消息数据中提取所述消息数据的消息类型,并在所述消息数据的消息类型为群发消息的情况下,根据所述会话token,将所述消息数据并发推送至与每个所述会话token对应的消息接收端。/n

【技术特征摘要】
1.一种消息推送方法,其特征在于包括:
消息中心获取需要进行消息推送的消息数据,其中,所述消息中心是基于T-IO网络框架构建得到的,所述消息数据包括至少一个会话token;
所述消息中心判断所述消息数据的消息发送端的IP地址是否在预设的IP黑名单中,并在所述IP地址不在所述IP黑名单内的情况下,按照预设的消息体规则对所述消息数据进行解析,得到解析后的所述消息数据;
所述消息中心从解析后的所述消息数据中提取所述消息数据的消息类型,并在所述消息数据的消息类型为群发消息的情况下,根据所述会话token,将所述消息数据并发推送至与每个所述会话token对应的消息接收端。


2.根据权利要求1所述的消息推送方法,其特征在于,解析后的所述消息数据的内容项包括消息类型和消息接收端系统类型,其中,所述消息类型包括心跳消息、点对点消息和群发消息;所述方法还包括:
在所述消息类型为心跳消息的情况下,所述消息中心不进行动作;
在所述消息类型为点对点消息的情况下,所述消息中心根据所述会话token,将所述消息数据推送至与所述会话token对应的消息接收端。


3.根据权利要求1所述的消息推送方法,其特征在于,解析后的所述消息数据的内容项包括消息类型和消息接收端系统类型,其中,所述消息接收端系统类型包括第一类型和第二类型;根据所述会话token,将所述消息数据并发推送至与每个所述会话token对应的消息接收端包括:
在所述消息接收端系统类型为第一类型的情况下,所述消息中心将所述消息数据转发至对应所述第一类型的推送通知服务器,并根据所述会话token,通过所述推送通知服务器将所述消息数据并发推送至与每个所述会话token对应的消息接收端;
在所述消息接收端系统类型为第二类型的情况下,所述消息中心根据所述会话token,将所述消息数据并发推送至与每个所述会话token对应的消息接收端。


4.根据权利要求1所述的消息推送方法,其特征在于,在消息中心获取需要进行消息推送的消息数据之前,所述方法还包括:
所述消息中心分别与消息接收端和消息发送端建立长连接,并维护所述长连接的心跳。


5.根据权利要求1所述的消息推送方法,其特征在于,...

【专利技术属性】
技术研发人员:赵玉红尤少军赵春波李良敏郑峰
申请(专利权)人:浙江岩华文化科技有限公司
类型:发明
国别省市:浙江;33

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

1