CN115334155B - 一种消息队列代理方法和装置 - Google Patents
一种消息队列代理方法和装置 Download PDFInfo
- Publication number
- CN115334155B CN115334155B CN202210965418.0A CN202210965418A CN115334155B CN 115334155 B CN115334155 B CN 115334155B CN 202210965418 A CN202210965418 A CN 202210965418A CN 115334155 B CN115334155 B CN 115334155B
- Authority
- CN
- China
- Prior art keywords
- message
- target
- type
- request
- middleware
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000004519 manufacturing process Methods 0.000 claims description 46
- 238000012545 processing Methods 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 13
- 238000011161 development Methods 0.000 abstract description 27
- 238000012423 maintenance Methods 0.000 abstract description 10
- 239000003795 chemical substances by application Substances 0.000 description 35
- 230000006870 function Effects 0.000 description 23
- 238000007726 management method Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 101100011961 Caenorhabditis elegans ess-2 gene Proteins 0.000 description 1
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种消息队列代理方法和装置,涉及任务调度技术领域。该方法可以接收业务服务客户端发送的待处理请求消息;待处理请求消息包括目标第三方消息队列类型;基于待处理请求消息的接口路径,确定服务请求类型;基于服务请求类型,将待处理请求消息存储到目标存储区;目标存储区是与服务请求类型对应的预设的存储区;基于目标第三方消息队列类型和服务请求类型,对目标消息中间件进行针对待处理请求消息的目标代理操作;目标消息中间件是与目标第三方消息队列类型对应的消息中间件;目标代理操作是与服务请求类型对应的代理操作。该方法,可以提高业务功能的开发效率,降低业务服务开发和维护的人工成本。
Description
技术领域
本申请实施例涉及任务调度技术领域,尤其涉及一种消息队列代理方法和装置。
背景技术
近年来,金融业务系统的软件基础设施建设过程中,多种新概念、新技术和新组件引进到各个业务服务。通常希望将消息队列中间件与业务服务进行配合使用,进行消息异步处理。在业务功能开发中,对应多种不同场景时,会变更使用不同的消息队列。
相关技术中,业务服务与多种消息队列(例如Kafka、RabbitMQ、RocketMQ)客户端之间强依赖,如果项目对应不同场景使用了多种消息队列,研发人员需要针对每一种消息队列的具体接入细节进行业务功能的开发,开发和维护成本高,业务功能的开发效率低下。
发明内容
为解决现有存在的技术问题,本申请实施例提供了一种消息队列代理方法和装置,可以提高业务功能的开发效率,降低业务服务开发和维护的人工成本。
为达到上述目的,本申请实施例的技术方案是这样实现的:
第一方面,本申请实施例提供一种消息队列代理方法,应用于代理服务器,包括:
接收业务服务客户端发送的待处理请求消息;所述待处理请求消息包括目标第三方消息队列类型;
基于所述待处理请求消息的接口路径,确定服务请求类型;
基于所述服务请求类型,将所述待处理请求消息存储到目标存储区;所述目标存储区是与所述服务请求类型对应的预设的存储区;
基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作;所述目标消息中间件是与所述目标第三方消息队列类型对应的消息中间件;所述目标代理操作是与所述服务请求类型对应的代理操作。
在一种可选的实施例中,所述基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作,包括:
基于所述目标第三方消息队列类型,将所述待处理请求消息转化为目标中间件消息;所述目标中间件消息用于从中获取所述目标代理操作需要的信息;
基于所述服务请求类型,对目标消息中间件进行针对所述目标中间件消息的目标代理操作。
在一种可选的实施例中,所述待处理请求消息还包括第一内容信息;所述基于所述服务请求类型,将所述待处理请求消息存储到目标存储区,包括:
若所述服务请求类型为预设的生产消息类型,则将所述待处理请求消息存储到第一存储区;所述第一存储区是与所述生产消息类型对应的预设的存储区;
所述基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作,包括:
基于与所述生产消息类型对应的预设的第一取数频率,从所述第一存储区取出所述待处理请求消息;
将取出的所述待处理请求消息中包括的所述第一内容信息存储到目标消息中间件。
在一种可选的实施例中,所述待处理请求消息还包括回调地址;所述将取出的所述待处理请求消息中包括的所述第一内容信息存储到目标消息中间件之后,所述方法还包括:
生成结果通知信息;所述结果通知信息表征将所述第一内容信息存储到所述目标消息中间件是否成功;
若所述回调地址不为空值,则基于所述回调地址将所述结果通知信息发送给所述业务服务客户端。
在一种可选的实施例中,所述待处理请求消息还包括主题信息和回调地址;所述基于所述服务请求类型,将所述待处理请求消息存储到目标存储区,包括:
若所述服务请求类型为预设的订阅消息类型,则将所述待处理请求消息存储到第二存储区;所述第二存储区是与所述订阅消息类型对应的预设的存储区;
所述基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作,包括:
基于与所述订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与所述主题信息对应的消息反馈请求;
若接收到所述目标消息中间件发送的与所述消息反馈请求对应的反馈消息,则基于所述回调地址将所述反馈消息包含的第二内容信息发送给所述业务服务客户端;所述反馈消息为所述目标消息中间件中与所述主题信息相一致的消息。
在一种可选的实施例中,所述基于与所述订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与所述主题信息对应的消息反馈请求,包括:
从所述待处理请求消息中获取所述主题信息;
基于与所述订阅消息类型对应的预设的第二取数频率,周期性地向目标消息中间件发送与所述主题信息对应的消息反馈请求。
本申请实施例提供的消息队列代理方法,可以接收业务服务客户端发送的待处理请求消息;所述待处理请求消息包括目标第三方消息队列类型;基于所述待处理请求消息的接口路径,确定服务请求类型;基于所述服务请求类型,将所述待处理请求消息存储到目标存储区;所述目标存储区是与所述服务请求类型对应的预设的存储区;基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作;所述目标消息中间件是与所述目标第三方消息队列类型对应的消息中间件;所述目标代理操作是与所述服务请求类型对应的代理操作。该方法,提供了一种消息队列代理的机制,使业务服务客户端与消息中间件间进行松耦合,能够解耦业务逻辑与多种消息队列客户端的强依赖,减少业务功能开发时对原代码的改动,可以提高业务功能的开发效率,降低业务服务开发和维护的人工成本,并提升业务服务的接入效率。
第二方面,本申请实施例还提供一种消息队列代理装置,设置于代理服务器,包括:
消息接收单元,用于接收业务服务客户端发送的待处理请求消息;所述待处理请求消息包括目标第三方消息队列类型;
类型确定单元,用于基于所述待处理请求消息的接口路径,确定服务请求类型;
消息存入单元,用于基于所述服务请求类型,将所述待处理请求消息存储到目标存储区;所述目标存储区是与所述服务请求类型对应的预设的存储区;
异步处理单元,用于基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作;所述目标消息中间件是与所述目标第三方消息队列类型对应的消息中间件;所述目标代理操作是与所述服务请求类型对应的代理操作。
在一种可选的实施例中,所述异步处理单元,具体用于:
基于所述目标第三方消息队列类型,将所述待处理请求消息转化为目标中间件消息;所述目标中间件消息用于从中获取所述目标代理操作需要的信息;
基于所述服务请求类型,对目标消息中间件进行针对所述目标中间件消息的目标代理操作。
在一种可选的实施例中,所述待处理请求消息还包括第一内容信息;所述消息存入单元,具体用于:
若所述服务请求类型为预设的生产消息类型,则将所述待处理请求消息存储到第一存储区;所述第一存储区是与所述生产消息类型对应的预设的存储区;
所述异步处理单元,具体用于:
基于与所述生产消息类型对应的预设的第一取数频率,从所述第一存储区取出所述待处理请求消息;
将取出的所述待处理请求消息中包括的所述第一内容信息存储到目标消息中间件。
在一种可选的实施例中,所述待处理请求消息还包括回调地址;所述异步处理单元,还用于:
在所述将取出的所述待处理请求消息中包括的所述第一内容信息存储到目标消息中间件之后,生成结果通知信息;所述结果通知信息表征将所述第一内容信息存储到所述目标消息中间件是否成功;
若所述回调地址不为空值,则基于所述回调地址将所述结果通知信息发送给所述业务服务客户端。
在一种可选的实施例中,所述待处理请求消息还包括主题信息和回调地址;所述消息存入单元,具体用于:
若所述服务请求类型为预设的订阅消息类型,则将所述待处理请求消息存储到第二存储区;所述第二存储区是与所述订阅消息类型对应的预设的存储区;
所述异步处理单元,具体用于:
基于与所述订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与所述主题信息对应的消息反馈请求;
若接收到所述目标消息中间件发送的与所述消息反馈请求对应的反馈消息,则基于所述回调地址将所述反馈消息包含的第二内容信息发送给所述业务服务客户端;所述反馈消息为所述目标消息中间件中与所述主题信息相一致的消息。
在一种可选的实施例中,所述异步处理单元,具体用于:
从所述待处理请求消息中获取所述主题信息;
基于与所述订阅消息类型对应的预设的第二取数频率,周期性地向目标消息中间件发送与所述主题信息对应的消息反馈请求。
第三方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现第一方面的消息队列代理方法。
第四方面,本申请实施例还提供了一种电子设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器实现第一方面的消息队列代理方法。
第五方面,本申请实施例一种计算机程序产品,其包括计算机指令,所述计算机指令存储在计算机可读存储介质中;当计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令时,所述处理器执行该计算机指令,使得所述计算机设备执行上述任一种消息队列代理方法的步骤。
第二至五方面中任意一种实现方式所带来的技术效果可参见第一方面的实现方式所带来的技术效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种代理服务器的框架示意图;
图2为本申请实施例提供的一种消息队列代理方法的流程示意图;
图3为本申请实施例提供的一种消息队列代理方法的进行目标代理操作的流程示意图;
图4为本申请实施例提供的一种消息队列代理方法的对生产消息进行代理的流程示意图;
图5为本申请实施例提供的一种消息队列代理方法的对订阅消息进行代理的流程示意图;
图6为本申请实施例提供的一种消息队列代理装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
以下对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)微服务:相对于单体应用而言,微服务围绕业务功能把一个应用拆分成一组小型服务,各个服务负责相对独立的一部分业务功能。微服务中的每个服务运行在自己的进程内,独立部署和升级。去中心化和服务自治是微服务的主要特点。本申请的实施例中,可以将业务功能拆分成微服务,得到多个业务服务。
(2)消息中间件:消息中间件是在分布式系统中完成消息的发送和接收的基础软件。消息中间件是指用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息队列模型,可以在分布式环境下扩展进程的通信。消息中间件适用于需要可靠的数据传送的分布式环境。
为了降低业务服务的开发和维护的人工成本,提高业务功能的开发效率,本申请实施例中提供一种消息队列代理方法和装置。为了更好的理解本申请实施例提供的技术方案,这里对该方案的基本原理做一下简单说明。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
下面结合附图介绍本申请实施例提供的技术方案。
近年来,金融业务系统的软件基础设施建设过程中,多种新概念、新技术和新组件引进到各个业务服务。通常希望将消息队列中间件与业务服务进行配合使用,进行消息异步处理。在业务功能开发中,对应多种不同场景时,会变更使用不同的消息队列。
相关技术中,业务服务与多种消息队列(例如Kafka、RabbitMQ、RocketMQ)客户端之间强依赖,如果项目对应不同场景使用了多种消息队列,研发人员需要针对每一种消息队列的具体接入细节进行业务功能的开发,开发和维护成本高,业务功能的开发效率低下。
有鉴于此,本申请实施例提供一种消息队列代理方法和装置,其中,消息队列代理方法,应用于代理服务器,可以接收业务服务客户端发送的待处理请求消息;待处理请求消息包括目标第三方消息队列类型;基于待处理请求消息的接口路径,确定服务请求类型;基于服务请求类型,将待处理请求消息存储到目标存储区;目标存储区是与服务请求类型对应的预设的存储区;基于目标第三方消息队列类型和服务请求类型,对目标消息中间件进行针对待处理请求消息的目标代理操作;目标消息中间件是与目标第三方消息队列类型对应的消息中间件;目标代理操作是与服务请求类型对应的代理操作。该方法,提供了一种消息队列代理的机制,使业务服务客户端与消息中间件间进行松耦合,能够解耦业务逻辑与多种消息队列客户端的强依赖,减少业务功能开发时对原代码的改动,可以提高业务功能的开发效率,降低业务服务开发和维护的人工成本,并提升业务服务的接入效率。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请实施例中的实施例及实施例中的特征可以相互组合。
本申请实施例提供了一种代理服务器的框架示意图,如图1所示,代理服务器100包括以下功能模块:接入层101、通用消息队列102、消息生产管理模块103、消息处理线程池104、消息订阅管理模块105、消息适配层106、客户端管理器107和全局配置管理模块108。
在本申请的一些实施例中,业务服务客户端可以是微服务,例如图1中的业务微服务1、业务微服务2、…、业务微服务N,业务服务客户端对应的微服务在微服务平台的注册中心进行注册;代理服务器也可以在微服务平台的注册中心作为一个微服务进行注册,从而方便业务服务客户端直接通过注册中心找到并调用代理服务器100的接口。本申请的实施例不限定业务服务客户端的数量,可以是一个,也可以是多个。本申请的实施例,以业务服务客户端是业务微服务1为例。
代理服务器100通过接入层101与业务服务客户端包含的业务微服务,例如业务微服务1,进行信息传递,并通过客户端管理器107与消息中间件进行信息传递。
代理服务器100的各个功能模块的主要功能,如下所示:
1)接入层101:主要对外提供两类接口,包括业务类API和管理类API。业务API包括消息生产接口和消息订阅接口。消息生产接口和消息订阅接口具有不同的接口路径,例如,消息生产接口的接口路径可以为“/api/v1/produce_1”,消息订阅接口的接口路径可以为“/api/v1/subscrib_1”。管理类API用于配置代理服务器100的各项系统参数,包括流量控制参数、通用消息队列长度和消息处理线程池配置。管理类API包含配置查询接口和配置更新接口。每一次查询或更新都是对某一项系统参数进行操作。
2)通用消息队列102:主要用于实现消息的异步处理,接入层101的API接收到业务服务客户端传来的消息后直接放入通用消息队列102便返回,不用等到消息完全放入消息中间件。
3)消息生产管理模块103:消息生产管理模块包含一个定时任务的线程,每隔一定时间到通用消息队列取数,例如5ms。如果取到消息便通过消息处理线程池104获取线程对消息进行处理。此外,消息生产管理模块103还负责监控通用消息队列和消息处理线程池的状态,如果队列已满或线程池耗尽便触发流量控制。
4)消息订阅管理模块105:主要用于对消息订阅接口的消息的处理和将订阅到的消息以回调的形式返回给业务服务客户端。
5)消息适配层106:主要用于将代理服务器100的通用消息和具体的消息中间件的消息进行转换。
6)客户端管理器107:主要用于对消息中间件进行管理,例如,将已接入的消息中间件申明成Bean组件,方便对消息中间件进行参数管理和调用。
7)全局配置管理模块108:主要用于管理消息中间件的客户端参数和代理服务器100的系统参数(包括管理类API可控制的参数)。在代理服务器100中所有的客户端参数和系统参数都以{key,value}形式保存在全局配置管理模块,key的命名方式采用“.”分割的多层级字符串,利于使用人员快速理解各个key的含义,也方便分类管理。
8)数据库109:主要用于存储消息订阅信息,该数据库109可以为MySQL数据库。
下面对本申请实施例提供的消息队列代理方法进行进一步的解释说明。本申请提供的消息队列代理方法,应用于代理服务器,例如可以应用于图1示出的代理服务器100。该方法,如图2所示,包括以下步骤:
步骤S201,接收业务服务客户端发送的待处理请求消息;待处理请求消息包括目标第三方消息队列类型。
示例性地,假定业务服务客户端为图1中示出的业务微服务1,代理服务器100通过接入层101接收业务微服务1发送的待处理请求消息Mess_1。待处理请求消息Mess_1包括目标第三方消息队列类型,例如目标第三方消息队列类型为“Kafka”。
步骤S202,基于待处理请求消息的接口路径,确定服务请求类型。
本申请的实施例中,服务请求类型包括生产消息类型和订阅消息类型。其中,生产消息类型的消息,均由业务服务客户端发送给代理服务器的接入层的消息生产接口;订阅消息类型的消息,均由业务服务客户端发送给代理服务器的接入层的消息订阅接口。
示例性地,假定消息生产接口的接口路径为“/api/v1/produce_1”,消息订阅接口的接口路径为“/api/v1/subscrib_1”。代理服务器100通过接入层101获取待处理请求消息Mess_1对应的接口路径,例如为“/api/v1/produce_1”,从而基于待处理请求消息Mess_1对应的接口路径“/api/v1/produce_1”可以判断待处理请求消息Mess_1是通过消息生产接口接收的,其服务请求类型是生产消息类型。
步骤S203,基于服务请求类型,将待处理请求消息存储到目标存储区;目标存储区是与服务请求类型对应的预设的存储区。
具体实施时,预设的存储区包括数据库和通用消息队列。数据库用于存储消息订阅信息,例如订阅消息类型的消息;通用消息队列用于存储生产消息类型的消息。
示例性地,代理服务器100基于待处理请求消息Mess_1的服务请求类型是生产消息类型,通过接入层101将待处理请求消息Mess_1存储到通用消息队列102;通用消息队列102是与生产消息类型对应的预设的存储区。
可以理解地,若待处理请求消息Mess_1的服务请求类型是订阅消息类型,则代理服务器100可以通过接入层101将待处理请求消息Mess_1存储到数据库109;数据库109是与订阅消息类型对应的预设的存储区。
需要指出的是,本申请的一些实施例中,代理服务器100将待处理请求消息存储到数据库109的过程,还可以是由代理服务器100的接入层101将待处理请求消息发送给消息订阅管理模块105,再由消息订阅管理模块105将待处理请求消息存储到数据库109。
步骤S204,基于目标第三方消息队列类型和服务请求类型,对目标消息中间件进行针对待处理请求消息的目标代理操作。
其中,目标消息中间件是与目标第三方消息队列类型对应的消息中间件;目标代理操作是与服务请求类型对应的代理操作。
具体实施时,若服务请求类型为生产消息类型,则目标代理操作是消息存入操作;若服务请求类型为订阅消息类型,则目标代理操作是消息问询操作。
在一些实施例中,消息存入操作是将待处理请求消息存入到目标消息中间件;消息问询操作是根据预定的时间间隔,周期性地向目标消息中间件发起请求,以获取目标消息中间件上的符合特定条件的新消息。
在一种可选的实施例中,基于目标第三方消息队列类型和服务请求类型,对目标消息中间件进行针对待处理请求消息的目标代理操作的过程,如图3所示,包括以下步骤:
步骤S301,基于目标第三方消息队列类型,将待处理请求消息转化为目标中间件消息;目标中间件消息用于从中获取目标代理操作需要的信息。
本申请实施例中,待处理请求消息的的消息格式为基类Message。基类Message包含的字段,如表1所示。
表1
本申请实施例中,根据消息中间件的消息的共性及支撑通用消息工作流程的必要字段,构建包含如表1所示的字段的基类Message的消息格式,待处理请求消息采用基类Message的消息格式。
各个消息中间件的消息,例如KafkaMessage、RabbitMQMessage、RocketMQMessage,可以通过继承基类Message,并添加各自的特有属性字段的方式进行构建。
示例性地,以消息中间件Kafka的消息KafkaMessage为例,可以通过继承基类Message,并添加各自的特有属性字段“topic”和“partition”的方式进行构建。其中,特有属性字段“topic”和“partition”可以基于基类Message的title字段的内容获得。代理服务器100通过消息适配层106基于目标第三方消息队列类型“Kafka”,将待处理请求消息Mess_1转化为目标中间件消息KafkaMessage_1;目标中间件消息KafkaMessage_1用于从中获取目标代理操作需要的信息。
步骤S302,基于服务请求类型,对目标消息中间件进行针对目标中间件消息的目标代理操作。
示例性地,代理服务器100通过消息适配层106将待处理请求消息Mess_1转化为目标中间件消息KafkaMessage_1,然后,通过客户端管理器107基于服务请求类型是生产消息类型,对目标消息中间件Kafka进行针对目标中间件消息KafkaMessage_1的消息存入操作。目标消息中间件Kafka是与目标第三方消息队列类型“Kafka”对应的消息中间件。
上述实施例的消息队列代理方法,可以接收业务服务客户端发送的待处理请求消息;待处理请求消息包括目标第三方消息队列类型;基于待处理请求消息的接口路径,确定服务请求类型;基于服务请求类型,将待处理请求消息存储到目标存储区;目标存储区是与服务请求类型对应的预设的存储区;基于目标第三方消息队列类型和服务请求类型,对目标消息中间件进行针对待处理请求消息的目标代理操作;目标消息中间件是与目标第三方消息队列类型对应的消息中间件;目标代理操作是与服务请求类型对应的代理操作。该方法,提供了一种消息队列代理的机制,使业务服务客户端与消息中间件间进行松耦合,能够解耦业务逻辑与多种消息队列客户端的强依赖,减少业务功能开发时对原代码的改动,可以提高业务功能的开发效率,降低业务服务开发和维护的人工成本,并提升业务服务的接入效率。
在一种可选的实施例中,消息队列代理方法,应用于代理服务器,如图4所示,包括以下步骤:
步骤S401,接收业务服务客户端发送的待处理请求消息;待处理请求消息包括目标第三方消息队列类型和第一内容信息。
示例性地,假定代理服务器100通过接入层101接收业务微服务1发送的待处理请求消息Mess_2,待处理请求消息Mess_2包括目标第三方消息队列类型“Kafka”和第一内容信息body_1。
步骤S402,基于待处理请求消息的接口路径,确定服务请求类型。
示例性地,假定消息生产接口的接口路径为“/api/v1/produce_1”,消息订阅接口的接口路径为“/api/v1/subscrib_1”。代理服务器100通过接入层101获取待处理请求消息Mess_2对应的接口路径,例如为“/api/v1/produce_1”,从而基于待处理请求消息Mess_2对应的接口路径“/api/v1/produce_1”可以判断待处理请求消息Mess_2是通过消息生产接口接收的,其服务请求类型是生产消息类型。
步骤S403,若服务请求类型为预设的生产消息类型,则将待处理请求消息存储到第一存储区;第一存储区是与生产消息类型对应的预设的存储区。
示例性地,代理服务器100基于待处理请求消息Mess_2的服务请求类型是生产消息类型,通过接入层101将待处理请求消息Mess_2存储到通用消息队列102;通用消息队列102是与生产消息类型对应的预设的存储区。
步骤S404,基于与生产消息类型对应的预设的第一取数频率,从第一存储区取出待处理请求消息。
示例性地,假定与生产消息类型对应的预设的第一取数频率为200Hz,表征代理服务器通过消息生产管理模块包含的定时任务的线程,每隔50ms从通用消息队列取数。代理服务器100基于与生产消息类型对应的预设的第一取数频率200Hz,从通用消息队列102取出待处理请求消息Mess_2。
步骤S405,将取出的待处理请求消息中包括的第一内容信息存储到目标消息中间件。
示例性地,代理服务器100将取出的待处理请求消息Mess_2中包括的第一内容信息body_1存储到目标消息中间件Kafka。
上述实施例的方法,使业务服务客户端与消息中间件间进行松耦合,能够解耦业务逻辑与多种消息队列客户端的强依赖,减少业务功能开发时对原代码的改动,可以提高业务功能的开发效率,降低业务服务开发和维护的人工成本,并在将消息队列中间件与业务服务进行配合使用时,提升业务服务的接入效率。
本申请的一些实施例中,与生产消息类型关联的消息队列代理过程中,还可以根据用户请求时传入的待处理请求消息的参数判断是否对消息入队列的结果进行回调。
在一些可选的实施例中,待处理请求消息还包括回调地址;在步骤S405,将取出的待处理请求消息中包括的第一内容信息存储到目标消息中间件之后,方法还包括以下步骤:
步骤A1,生成结果通知信息;结果通知信息表征将第一内容信息存储到目标消息中间件是否成功。
步骤A2,若回调地址不为空值,则基于回调地址将结果通知信息发送给业务服务客户端。
具体实施时,结果通知信息包含表1示出的字段id,表征待处理请求消息的id。回调地址不为空值时,代理服务器基于回调地址将结果通知信息发送给业务服务客户端,业务服务客户端可以基于结果通知信息包括的字段id,确定对应的请求消息是否处理成功。
在一种可选的实施例中,消息队列代理方法,应用于代理服务器,如图5所示,包括以下步骤:
步骤S501,接收业务服务客户端发送的待处理请求消息;待处理请求消息包括目标第三方消息队列类型、主题信息和回调地址。
示例性地,假定代理服务器100通过接入层101接收业务微服务1发送的待处理请求消息Mess_3,待处理请求消息Mess_3包括目标第三方消息队列类型“Kafka”和主题信息title_1和回调地址callback_url_01。
步骤S502,基于待处理请求消息的接口路径,确定服务请求类型。
示例性地,假定消息生产接口的接口路径为“/api/v1/produce_1”,消息订阅接口的接口路径为“/api/v1/subscrib_1”。代理服务器100通过接入层101获取待处理请求消息Mess_3对应的接口路径,例如为“/api/v1/subscrib_1”,从而基于待处理请求消息Mess_3对应的接口路径“/api/v1/subscrib_1”可以判断待处理请求消息Mess_3是通过消息订阅接口接收的,其服务请求类型是订阅消息类型。
步骤S503,若服务请求类型为预设的订阅消息类型,则将待处理请求消息存储到第二存储区;第二存储区是与订阅消息类型对应的预设的存储区。
示例性地,代理服务器100基于待处理请求消息Mess_3的服务请求类型是订阅消息类型,通过接入层101将待处理请求消息Mess_2发存储到数据库109;数据库109是与订阅消息类型对应的预设的存储区。
步骤S504,基于与订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与主题信息对应的消息反馈请求。
示例性地,假定与订阅消息类型对应的预设的第二取数频率为10Hz,表征代理服务器通过客户端管理器,每隔100ms对目标消息中间件发起请求,以获取目标消息中间件上的与待处理请求消息的主题信息相符合的新消息。代理服务器100基于与订阅消息类型对应的预设的第二取数频率10Hz,向目标消息中间件Kafka发送与主题信息title_1对应的消息反馈请求。
在一种可选的实施例中,步骤S504,基于与订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与主题信息对应的消息反馈请求,具体可以通过以下过程实现:
步骤B1,从待处理请求消息中获取主题信息。
步骤B2,基于与订阅消息类型对应的预设的第二取数频率,周期性地向目标消息中间件发送与主题信息对应的消息反馈请求。
步骤S505,若接收到目标消息中间件发送的与消息反馈请求对应的反馈消息,则基于回调地址将反馈消息包含的第二内容信息发送给业务服务客户端;反馈消息为目标消息中间件中与主题信息相一致的消息。
示例性地,若代理服务器100接收到目标消息中间件Kafka发送的与消息反馈请求对应的反馈消息Data_reback,则基于回调地址callback_url_01将反馈消息Data_reback包含的第二内容信息body_2发送给业务服务客户端;反馈消息Data_reback为目标消息中间件Kafka中与主题信息title_1相一致的消息。
上述实施例提供的消息队列代理方法,可以使业务服务客户端与消息中间件间进行松耦合,能够解耦业务逻辑与多种消息队列客户端的强依赖,减少业务功能开发时对原代码的改动,可以提高业务功能的开发效率,降低业务服务开发和维护的人工成本,并提升业务服务的接入效率。
基于同一发明构思,本申请实施例中还提供了一种消息队列代理装置。由于该装置是本申请实施例消息队列代理方法对应的装置,并且该装置解决问题的原理与该方法相似,因此该装置的实施可以参见上述方法的实施,重复之处不再赘述。
图6示出了本申请实施例提供的一种消息队列代理装置的结构示意图,该消息队列代理装置,可以设置于图1中示出的代理服务器100,如图6所示,包括:消息接收单元601、类型确定单元602、消息存入单元603和异步处理单元604。
其中,消息接收单元601,用于接收业务服务客户端发送的待处理请求消息;待处理请求消息包括目标第三方消息队列类型;
类型确定单元602,用于基于待处理请求消息的接口路径,确定服务请求类型;
消息存入单元603,用于基于服务请求类型,将待处理请求消息存储到目标存储区;目标存储区是与服务请求类型对应的预设的存储区;
异步处理单元604,用于基于目标第三方消息队列类型和服务请求类型,对目标消息中间件进行针对待处理请求消息的目标代理操作;目标消息中间件是与目标第三方消息队列类型对应的消息中间件;目标代理操作是与服务请求类型对应的代理操作。
在一种可选的实施例中,异步处理单元604,具体用于:
基于目标第三方消息队列类型,将待处理请求消息转化为目标中间件消息;目标中间件消息用于从中获取目标代理操作需要的信息;
基于服务请求类型,对目标消息中间件进行针对目标中间件消息的目标代理操作。
在一种可选的实施例中,待处理请求消息还包括第一内容信息;消息存入单元603,具体用于:
若服务请求类型为预设的生产消息类型,则将待处理请求消息存储到第一存储区;第一存储区是与生产消息类型对应的预设的存储区;
异步处理单元604,具体用于:
基于与生产消息类型对应的预设的第一取数频率,从第一存储区取出待处理请求消息;
将取出的待处理请求消息中包括的第一内容信息存储到目标消息中间件。
在一种可选的实施例中,待处理请求消息还包括回调地址;异步处理单元604,还用于:
在将取出的待处理请求消息中包括的第一内容信息存储到目标消息中间件之后,生成结果通知信息;结果通知信息表征将第一内容信息存储到目标消息中间件是否成功;
若回调地址不为空值,则基于回调地址将结果通知信息发送给业务服务客户端。
在一种可选的实施例中,待处理请求消息还包括主题信息和回调地址;消息存入单元603,具体用于:
若服务请求类型为预设的订阅消息类型,则将待处理请求消息存储到第二存储区;第二存储区是与订阅消息类型对应的预设的存储区;
异步处理单元604,具体用于:
基于与订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与主题信息对应的消息反馈请求;
若接收到目标消息中间件发送的与消息反馈请求对应的反馈消息,则基于回调地址将反馈消息包含的第二内容信息发送给业务服务客户端;反馈消息为目标消息中间件中与主题信息相一致的消息。
在一种可选的实施例中,异步处理单元604,具体用于:
从待处理请求消息中获取主题信息;
基于与订阅消息类型对应的预设的第二取数频率,周期性地向目标消息中间件发送与主题信息对应的消息反馈请求。
与上述方法实施例基于同一发明构思,本申请实施例中还提供了一种电子设备。该电子设备可以用于消息队列代理的过程。在一种实施例中,该电子设备可以是服务器。在该实施例中,电子设备的结构可以如图7所示,包括存储器701,通讯模块703以及一个或多个处理器702。
存储器701,用于存储处理器702执行的计算机程序。存储器701可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及运行即时通讯功能所需的程序等;存储数据区可存储各种即时通讯信息和操作指令集等。
存储器701可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器701也可以是非易失性存储器(non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)、或者存储器701是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器701可以是上述存储器的组合。
处理器702,可以包括一个或多个中央处理单元(central processing unit,CPU)或者为数字处理单元等等。处理器702,用于调用存储器701中存储的计算机程序时实现上述消息队列代理方法。
通讯模块703用于与电子设备和其他终端或服务器进行通信。
本申请实施例中不限定上述存储器701、通讯模块703和处理器702之间的具体连接介质。本申请实施例在图7中以存储器701和处理器702之间通过总线704连接,总线704在图7中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线704可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请的实施例还提供了一种计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于实现本申请任一实施例所记载的消息队列代理方法。
本申请的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。当计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令时,所述处理器执行该计算机指令,使得所述计算机设备执行上述任一实施例中的消息队列代理方法。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (11)
1.一种消息队列代理方法,其特征在于,应用于代理服务器,包括:
接收业务服务客户端发送的待处理请求消息;所述待处理请求消息包括目标第三方消息队列类型;
基于所述待处理请求消息的接口路径,确定服务请求类型;
基于所述服务请求类型,将所述待处理请求消息存储到目标存储区;所述目标存储区是与所述服务请求类型对应的预设的存储区;
基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作;所述目标消息中间件是与所述目标第三方消息队列类型对应的消息中间件;所述目标代理操作是与所述服务请求类型对应的代理操作;
所述待处理请求消息还包括第一内容信息;所述基于所述服务请求类型,将所述待处理请求消息存储到目标存储区,包括:
若所述服务请求类型为预设的生产消息类型,则将所述待处理请求消息存储到第一存储区;所述第一存储区是与所述生产消息类型对应的预设的存储区;
所述基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作,包括:
基于与所述生产消息类型对应的预设的第一取数频率,从所述第一存储区取出所述待处理请求消息;
将取出的所述待处理请求消息中包括的所述第一内容信息存储到目标消息中间件;
所述待处理请求消息还包括主题信息和回调地址;所述基于所述服务请求类型,将所述待处理请求消息存储到目标存储区,包括:
若所述服务请求类型为预设的订阅消息类型,则将所述待处理请求消息存储到第二存储区;所述第二存储区是与所述订阅消息类型对应的预设的存储区;
所述基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作,包括:
基于与所述订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与所述主题信息对应的消息反馈请求;
若接收到所述目标消息中间件发送的与所述消息反馈请求对应的反馈消息,则基于所述回调地址将所述反馈消息包含的第二内容信息发送给所述业务服务客户端;所述反馈消息为所述目标消息中间件中与所述主题信息相一致的消息。
2.根据权利要求1所述的方法,其特征在于,所述基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作,包括:
基于所述目标第三方消息队列类型,将所述待处理请求消息转化为目标中间件消息;所述目标中间件消息用于从中获取所述目标代理操作需要的信息;
基于所述服务请求类型,对目标消息中间件进行针对所述目标中间件消息的目标代理操作。
3.根据权利要求1所述的方法,其特征在于,所述待处理请求消息还包括回调地址;所述将取出的所述待处理请求消息中包括的所述第一内容信息存储到目标消息中间件之后,所述方法还包括:
生成结果通知信息;所述结果通知信息表征将所述第一内容信息存储到所述目标消息中间件是否成功;
若所述回调地址不为空值,则基于所述回调地址将所述结果通知信息发送给所述业务服务客户端。
4.根据权利要求1所述的方法,其特征在于,所述基于与所述订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与所述主题信息对应的消息反馈请求,包括:
从所述待处理请求消息中获取所述主题信息;
基于与所述订阅消息类型对应的预设的第二取数频率,周期性地向目标消息中间件发送与所述主题信息对应的消息反馈请求。
5.一种消息队列代理装置,其特征在于,设置于代理服务器,包括:
消息接收单元,用于接收业务服务客户端发送的待处理请求消息;所述待处理请求消息包括目标第三方消息队列类型;
类型确定单元,用于基于所述待处理请求消息的接口路径,确定服务请求类型;
消息存入单元,用于基于所述服务请求类型,将所述待处理请求消息存储到目标存储区;所述目标存储区是与所述服务请求类型对应的预设的存储区;
异步处理单元,用于基于所述目标第三方消息队列类型和所述服务请求类型,对目标消息中间件进行针对所述待处理请求消息的目标代理操作;所述目标消息中间件是与所述目标第三方消息队列类型对应的消息中间件;所述目标代理操作是与所述服务请求类型对应的代理操作;
所述待处理请求消息还包括第一内容信息;所述消息存入单元,具体用于:
若所述服务请求类型为预设的生产消息类型,则将所述待处理请求消息存储到第一存储区;所述第一存储区是与所述生产消息类型对应的预设的存储区;
所述异步处理单元,具体用于:
基于与所述生产消息类型对应的预设的第一取数频率,从所述第一存储区取出所述待处理请求消息;
将取出的所述待处理请求消息中包括的所述第一内容信息存储到目标消息中间件;
所述待处理请求消息还包括主题信息和回调地址;所述消息存入单元,具体用于:
若所述服务请求类型为预设的订阅消息类型,则将所述待处理请求消息存储到第二存储区;所述第二存储区是与所述订阅消息类型对应的预设的存储区;
所述异步处理单元,具体用于:
基于与所述订阅消息类型对应的预设的第二取数频率,向目标消息中间件发送与所述主题信息对应的消息反馈请求;
若接收到所述目标消息中间件发送的与所述消息反馈请求对应的反馈消息,则基于所述回调地址将所述反馈消息包含的第二内容信息发送给所述业务服务客户端;所述反馈消息为所述目标消息中间件中与所述主题信息相一致的消息。
6.根据权利要求5所述的装置,其特征在于,所述异步处理单元,具体用于:
基于所述目标第三方消息队列类型,将所述待处理请求消息转化为目标中间件消息;所述目标中间件消息用于从中获取所述目标代理操作需要的信息;
基于所述服务请求类型,对目标消息中间件进行针对所述目标中间件消息的目标代理操作。
7.根据权利要求5所述的装置,其特征在于,所述待处理请求消息还包括回调地址;所述异步处理单元,还用于:
在所述将取出的所述待处理请求消息中包括的所述第一内容信息存储到目标消息中间件之后,生成结果通知信息;所述结果通知信息表征将所述第一内容信息存储到所述目标消息中间件是否成功;
若所述回调地址不为空值,则基于所述回调地址将所述结果通知信息发送给所述业务服务客户端。
8.根据权利要求5所述的装置,其特征在于,所述异步处理单元,具体用于:
从所述待处理请求消息中获取所述主题信息;
基于与所述订阅消息类型对应的预设的第二取数频率,周期性地向目标消息中间件发送与所述主题信息对应的消息反馈请求。
9.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,其特征在于:所述计算机程序被处理器执行时,实现权利要求1~4中任一项所述的方法。
10.一种电子设备,其特征在于,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,当所述计算机程序被所述处理器执行时,实现权利要求1~4中任一项所述的方法。
11.一种计算机程序产品,其特征在于,其包括计算机指令,所述计算机指令存储在计算机可读存储介质中;当计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令时,所述处理器执行该计算机指令,使得所述计算机设备执行权利要求1~4中任一方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210965418.0A CN115334155B (zh) | 2022-08-12 | 2022-08-12 | 一种消息队列代理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210965418.0A CN115334155B (zh) | 2022-08-12 | 2022-08-12 | 一种消息队列代理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115334155A CN115334155A (zh) | 2022-11-11 |
CN115334155B true CN115334155B (zh) | 2024-04-19 |
Family
ID=83923796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210965418.0A Active CN115334155B (zh) | 2022-08-12 | 2022-08-12 | 一种消息队列代理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115334155B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116361038B (zh) * | 2023-06-02 | 2023-09-08 | 山东浪潮科学研究院有限公司 | 一种加速计算管理方法、系统、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106131175A (zh) * | 2016-07-01 | 2016-11-16 | 微梦创科网络科技(中国)有限公司 | 一种信息获取、信息推送方法和设备 |
CN111049915A (zh) * | 2019-12-17 | 2020-04-21 | 书行科技(北京)有限公司 | 一种容器云下消息队列代理网格及方法 |
WO2020186909A1 (zh) * | 2019-03-18 | 2020-09-24 | 北京金山云网络技术有限公司 | 虚拟网络业务处理方法、装置和系统,控制器,存储介质 |
CN111740872A (zh) * | 2020-05-06 | 2020-10-02 | 北京百度网讯科技有限公司 | 消息传递测试方法、装置、电子设备和存储介质 |
CN113641511A (zh) * | 2021-07-09 | 2021-11-12 | 阿里云计算有限公司 | 一种消息通信方法和装置 |
CN114338063A (zh) * | 2020-09-29 | 2022-04-12 | 中移物联网有限公司 | 消息队列系统、业务处理方法及计算机可读存储介质 |
CN114827278A (zh) * | 2022-06-24 | 2022-07-29 | 小米汽车科技有限公司 | 基于消息队列的任务调度方法、系统、装置及设备 |
-
2022
- 2022-08-12 CN CN202210965418.0A patent/CN115334155B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106131175A (zh) * | 2016-07-01 | 2016-11-16 | 微梦创科网络科技(中国)有限公司 | 一种信息获取、信息推送方法和设备 |
WO2020186909A1 (zh) * | 2019-03-18 | 2020-09-24 | 北京金山云网络技术有限公司 | 虚拟网络业务处理方法、装置和系统,控制器,存储介质 |
CN111049915A (zh) * | 2019-12-17 | 2020-04-21 | 书行科技(北京)有限公司 | 一种容器云下消息队列代理网格及方法 |
CN111740872A (zh) * | 2020-05-06 | 2020-10-02 | 北京百度网讯科技有限公司 | 消息传递测试方法、装置、电子设备和存储介质 |
CN114338063A (zh) * | 2020-09-29 | 2022-04-12 | 中移物联网有限公司 | 消息队列系统、业务处理方法及计算机可读存储介质 |
CN113641511A (zh) * | 2021-07-09 | 2021-11-12 | 阿里云计算有限公司 | 一种消息通信方法和装置 |
CN114827278A (zh) * | 2022-06-24 | 2022-07-29 | 小米汽车科技有限公司 | 基于消息队列的任务调度方法、系统、装置及设备 |
Non-Patent Citations (1)
Title |
---|
基于消息中间件的数据交换中心设计与实现;沈昕;计算机光盘软件与应用;20111231(第14期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115334155A (zh) | 2022-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8139596B2 (en) | Communicating prioritized messages to a destination queue from multiple source queues using source-queue-specific priority values | |
US11165742B1 (en) | Unified communication | |
CN111212085B (zh) | 物联网平台同步调用的方法、物联网系统和网络设备 | |
CN111835837B (zh) | 多端适配的消息推送方法及系统 | |
US20120185561A1 (en) | HTTP Notification Gateway | |
WO2021088641A1 (zh) | 数据发送方法、处理方法、接收方法及其设备、存储介质 | |
CN111711663A (zh) | 发布及订阅服务的处理方法、装置及电子设备 | |
US20020073158A1 (en) | Method and system for general-purpose interactive notifications | |
US10693816B2 (en) | Communication methods and systems, electronic devices, and computer clusters | |
CN115334155B (zh) | 一种消息队列代理方法和装置 | |
CN111090423A (zh) | 一种webhook框架系统和实现主动调用、实现事件触发的方法 | |
EP2974159B1 (en) | Method, device and system for voice communication | |
CN114500633B (zh) | 数据转发方法、相关装置、程序产品及数据传输系统 | |
CN114006946B (zh) | 同质资源请求的处理方法、装置、设备及存储介质 | |
CN113535371A (zh) | 一种多线程异步加载资源的方法和装置 | |
CN114938388B (zh) | 分布式数据的传输方法、装置、系统及存储介质 | |
CN112711485A (zh) | 一种消息处理方法和装置 | |
CN108076111B (zh) | 一种在大数据平台中分发数据的系统及方法 | |
CN112134938B (zh) | 一种消息处理方法、装置、终端及计算机可读存储介质 | |
CN110162415B (zh) | 用于处理数据请求的方法、服务器、装置及存储介质 | |
CN113760487A (zh) | 一种业务处理方法和装置 | |
CN113077201A (zh) | 一种解析业务参数的方法、装置和系统 | |
CN110008036A (zh) | 数据传输方法及装置 | |
US11184445B2 (en) | System and method of establishing communication between users | |
CN113766437B (zh) | 一种短信发送方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |