基于消息队列的多用途数据接收方法及系统、计算机设备技术方案

技术编号:24103267 阅读:35 留言:0更新日期:2020-05-09 14:09
本申请涉及基于消息队列的多用途数据接收方法及系统、计算机设备,所述方法包括:接收消息时根据消息ID判断消息是否为已处理或处理中状态,如果该消息ID与本地处理记录有重复,则判断其为重复消息,直接抛弃。本发明专利技术将数据分为需要持续处理每一条数据的过程有用性数据和另一种为仅对短期结果处理的结果有用性数据。当配置为不可抛弃类型时,由接收端建立可变长度的缓存进行存储供后台服务使用。当配置为可抛弃类型时,如果当前后台服务正在处理数据,将数据缓存进长度为1的缓存中,并由后来的数据进行覆盖,保证缓存的数据为最新的数据;这种可抛弃模型可以针对不同类型的数据进行处理,提高了后台服务的性能。

The method, system and computer equipment of multi-purpose data receiving based on message queue

【技术实现步骤摘要】
基于消息队列的多用途数据接收方法及系统、计算机设备
本申请涉及数据处理
,特别是涉及一种基于消息队列的多用途数据接收方法及系统、计算机设备、可读存储介质。
技术介绍
现有技术在由多个服务组成的软件系统中,服务间通常需要进行信息交换以保证数据互通。数据交换的一种常用技术为消息队列中间件技术,这种技术保证将发送方的消息至少一次送达到接收端,服务端只能持续接收消息。这样容易造成消息重复和处理不必要消息占用能耗的问题。即现有技术的消息队列中间件技术为了保证消息的送达,通常被设计为队单条消息至少发送一次消息。这一问题导致消息的接收方必须设计为幂等服务,即多条同样内容的消息多次执行对系统的影响完全一致。这种幂等性的设计为服务实现带来极大困难,容易造成消息重复和处理不必要消息占用能耗的问题。因此,现有技术有待改进。
技术实现思路
本专利技术要解决的技术问题是,提供一种基于消息队列的多用途数据接收方法及系统、计算机设备、可读存储介质,本专利技术提出了一种基于消息队列的多用途数据接收方法,通过消息去重和可抛弃模型本文档来自技高网...

【技术保护点】
1.一种基于消息队列的多用途数据接收方法,其特征在于,所述方法包括:/n为本地服务需要的消息创建处理记录,以及为本地服务需要的消息按照类型创建可变缓存或长度固定的缓存;/n接收消息时根据消息ID判断消息是否为已处理或处理中状态,如果该消息ID与本地处理记录有重复,则判断其为重复消息,直接抛弃;/n当消息ID与本地处理记录没有重复则判断消息是否为可抛弃数据类型,当消息为不可抛弃数据类型时,由接收端存入所述可变缓存中以供后台服务使用;/n当消息为可抛弃类型,判断当前是否存在正在处理的消息,如果当前后台服务正在处理数据,将数据缓存进所述长度固定的缓存中,并由后来的数据进行覆盖,控制缓存的数据为最新的...

【技术特征摘要】
1.一种基于消息队列的多用途数据接收方法,其特征在于,所述方法包括:
为本地服务需要的消息创建处理记录,以及为本地服务需要的消息按照类型创建可变缓存或长度固定的缓存;
接收消息时根据消息ID判断消息是否为已处理或处理中状态,如果该消息ID与本地处理记录有重复,则判断其为重复消息,直接抛弃;
当消息ID与本地处理记录没有重复则判断消息是否为可抛弃数据类型,当消息为不可抛弃数据类型时,由接收端存入所述可变缓存中以供后台服务使用;
当消息为可抛弃类型,判断当前是否存在正在处理的消息,如果当前后台服务正在处理数据,将数据缓存进所述长度固定的缓存中,并由后来的数据进行覆盖,控制缓存的数据为最新的数据。


2.根据权利要求1所述基于消息队列的多用途数据接收方法,其特征在于,所述为本地服务需要的消息创建处理记录,以及为本地服务需要的消息按照类型创建可变缓存或长度固定的缓存的步骤之前包括:
预先将消息数据根据业务分为:需要持续处理每一条数据过程的过程有用性数据,以及为仅对短期结果处理的短期结果有用性数据;
根据不同类型的消息数据配置为可抛弃数据或不可抛弃数据;将短期结果有用性数据配置为可抛弃,将过程有用性数据配置为不可抛弃数据。


3.根据权利要求1所述基于消息队列的多用途数据接收方法,其特征在于,所述为本地服务需要的消息创建处理记录,以及为本地服务需要的消息按照类型创建可变缓存或长度固定的缓存的步骤包括:
当消息队列启动,获取服务需要的消息类型个数;
判断是否已为每个消息创建处理记录和缓存;
当没有则创建该类型消息处理记录,通过消息的ID登记消息处理记录;并为本地服务需要的消息按照类型创建可变缓存或长度为1的缓存。


4.根据权利要求1所述基于消息队列的多用途数据接收方法,其特征在于,所述接收消息时根据消息ID判断消息是否为已处理或处理中状态,如果该消息ID与本地处理记录有重复,则判断其为重复消息,直接抛弃的步骤包括:
为消息创建一个ID,用于在消息的接收方使用消息处理记录对每条处理过的消息进行记录;
当收到新消息时新消息的ID和记录中进行比对,如果该消息ID与本地处理记录有重复,则判断其为重复消息,直接抛弃。


5.根据权利要求1所述基于消息队列的多用途数据接收方法,其特征在于,所述当消息ID与本地处理记录没有重复则判...

【专利技术属性】
技术研发人员:李尧卫宣安
申请(专利权)人:深圳震有科技股份有限公司
类型:发明
国别省市:广东;44

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

1