CN115118763A - 消息中间件自适应切换的方法及系统、以及数据维护系统 - Google Patents
消息中间件自适应切换的方法及系统、以及数据维护系统 Download PDFInfo
- Publication number
- CN115118763A CN115118763A CN202210737690.3A CN202210737690A CN115118763A CN 115118763 A CN115118763 A CN 115118763A CN 202210737690 A CN202210737690 A CN 202210737690A CN 115118763 A CN115118763 A CN 115118763A
- Authority
- CN
- China
- Prior art keywords
- message
- middleware
- consumed
- format
- monitoring result
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/2895—Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供了一种消息中间件自适应切换的方法,所述方法包括:接收来自不同消息生产者生产的不同格式的消息,将消息按照预配置格式中的一格式对生产的消息进行封包生成相应的待消费消息包;发送所述待消费消息包至相应的消息中间件并获取监听结果;若所述监听结果表示所述当前消息中间件不可用,按照预配置的另一格式对生产的消息进行封包生成相应的待消费消息包;发送另一待消费消息包至相应的消息中间件并重新获取监听结果,直至当前消息中间件可用;当监听结果表示当前消息中间件可用,通过当前消息队列服务发送相应的待消费消息包给消息消费者。本申请还提供了一种消息中间件自适应切换系统。申请降低了对中间件的依赖。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种消息中间件自适应切换的方法、数据维护系统以及消息中间件自适应切换的系统。
背景技术
消息队列(Queue)是系统中常用的通讯手段,通过queue可以实现系统许多的功能。例如,queue可以实现系统的解耦,假设有一个核心系统A,核心系统A的数据要发给许多的下游系统,若每个下游系统都需要和核心系统A建立一个连接然后核心系统A把消息发给对应的下游系统,那么整体系统架构将很差,而且耦合度很高。若将消息发送给queue,下游系统主动去取可以大大降低系统的耦合度。另外,queue还可以实现异步调用,假设有一个系统调用链路为:系统A调用系统B耗时20ms,系统B调用系统C耗时20ms,而系统C调用系统D需要2s,这样下来整个调用需要耗时2040ms。但实际上系统A调用系统B,系统B调用系统C只需要40ms,而系统D系统的引入直接导致系统性能下降约50倍。此时我们应该考虑将系统D的调用抽离出来,做一个异步调用,利用Queue可以实现削峰谷,假设一个系统的流量突然之间变大,通过系统B部署Queue可以在流量高时将部分消息堆积在队列中,等到系统负荷变低时再慢慢消费从而达到削峰填谷的作用。
目前大多系统在选择queue的时候会根据自己系统特性例如需要高性能、需要数据不丢失、需要缓存较多的数据等选择一种合适的queue来实现自己系统消息的传输。但是目前市面上常用的queue大多来自国外,若系统只支持单一的Queue,一旦Queue供应商出现问题,那么系统变面临着不可用的风险。
发明内容
有鉴于此,实有必要提供一种消息中间件自适应切换的方法、计算机存储介质、以及一种消息中间件自适应切换的系统,可以适应性切换合适的消息中间件,降低系统不可用的风险。
第一方面,本申请实施例提供了一种消息中间件自适应切换的方法包括:接收来自不同消息生产者生产的消息,所述生产的消息采用不同格式的数据包;将所述消息按照预配置格式中的一格式对所述生产的消息进行封包生成相应的待消费消息包,所述预配置格式包括多种配置格式;发送所述待消费消息包至相应的消息中间件并获取监听结果,所述监听结果表示监听当前消息中间件是否可用的结果;若所述监听结果表示所述当前消息中间件不可用,按照预配置的另一格式对所述生产的消息进行封包生成相应的待消费消息包;发送所述另一待消费消息包至相应的消息中间件并重新获取监听结果,直至所述当前消息中间件可用;当所述监听结果表示所述当前消息中间件可用,通过所述当前消息中间件发送所述相应的待消费消息包给消息消费者。
第二方面,本申请实施例还提供了一种数据维护系统,其特征在于,所述数据维护系统包括:接收单元、适配单元、以及监听单元,所述接收单元用于接收来自不同消息生产者生产的消息,所述生产的消息采用不同格式的数据包;所述适配单元用于将所述消息按照预配置格式中的一格式对所述生产的消息进行封包生成相应的待消费消息包,所述预配置格式包括多种配置格式;所述监听单元发送所述待消费消息包至相应的消息中间件并获取监听结果,所述监听结果表示监听当前消息中间件是否可用的结果,若所述监听结果表示所述当前消息中间件不可用,按照预配置的另一格式对所述生产的消息进行封包生成相应的待消费消息包并发送所述另一待消费消息包至相应的消息中间件并重新获取监听结果,直至所述当前消息中间件可用;所述发布单元用于当所述监听结果表示所述当前消息中间件可用时,通过所述当前消息队列服务发送所述相应的待消费消息包给消息消费者。
第三方面,一种消息中间件自适应切换系统,其特征在于,所述消息中间件自适应切换系统包括消息产生者、消息消费者、中间件服务器以及数据维护系统。用于生产消息并通过中间件服务器,以及所述数据维护系统发送至消息消费者,所述数据维护系统包括:存储器,用于存储计算机程序指令;处理器,用于执行计算机程序指令以实现所述的消息中间件切换的方法。
本申请通过改变系统配置的协议格式,可以在当前消息队列出现异常,切换到合适的中间件,从而可以将消息顺利被消息消费者读取,从而降低了系统对特定的消息中间件的强依赖,提高了系统的运行效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出结创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本申请实施例提供的一种消息中间件自适应切换的方法的流程示意图。
图2为消息中间件自适应系统的架构。
图3为当客户端应用程序为淘宝时,产生的交易数据的格式。
图4为当客户端应用程序为执行购票APP时,产生的交易数据的格式。
图5为本申请实施例提供的一种消息中间件自适应切换的方法的另一流程示意图。
图6为本实施例提供的一种数据维护系统的程序功能块示意图。
图7本申请实施例提供的一种消息中间件自适应切换系统的示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,换句话说,描述的实施例根据除了这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,还可以包含其他内容,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于只清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者多个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
本申请通过改变系统配置的协议格式,生成不同格式的客户端消息的数据包,适用于多种消息队列,使客户端发送的消息在当前消息队列出现异常时也能将消息发送至相应的消息消费者服务器完成交易。本申请降低了系统对特定的消息中间件的强依赖,提高了系统的运行效率。
请参看图1,图1为本申请实施例提供的一种消息中间件自适应切换的方法的流程示意图。所述消息中间件自适应切换方法运行消息中间件自适应切换系统中。如图2所示,在消息中间件自适应切换系统中,消息中间件4接收来自消息生产者2发送的消息,可使消息发送至消息消费者3。在本实施例中,消息生产者2、消息消费者3、消息中间件4的数量分别为若干数量。监听器5用于监听消息中间件4是否可用。消息生产者2为创建并发送消息的客户端,所述消息消费者3为接收并处理消息的后端。客户端可以为手机端APP,例如淘宝、智行购票,也可以为网页的浏览页面,运行有用于发送或者接收消息并处理消息的应用程序。消息生产者2和消息消费者3之间通过数据维护系统1适配合适的消息中间件4,从而通过消息中间件4将消息发送给消息消费者3。其中,消息中间件自适应切换的方法包括步骤S101-S106。
步骤S101,接收来自不同消息生产者生产的消息,所述生产的消息采用不同格式的数据包。所述不同消息生产者为不同的客户端应用程序,所述不同的格式为不同的客户端应用程序生成的不同格式的数据。所述客户端应用程序可以为手机端APP如淘宝、网页浏览页面。当客户端应用程序为淘宝时,所述生产的消息为双十一秒杀时的交易数据,所述交易数据的格式为如图3所示的格式。当客户端应用程序为执行购票APP时,所述生产的消息为抢票高峰期时的用户抢票的交易数据,所述交易数据的格式为如图4所示的格式。
例如,淘宝APP、智行购票APP、天猫商城等若干客户端通过数据维护系统向消息中间件传递数据,不同客户端传递的数据包的格式不同。
步骤S102,将所述消息按照预配置格式中的第一格式对所述生产的消息进行封包生成相应的待消费消息包,所述预配置格式包括多种配置格式。所述预配置格式包括:AMWP协议格式、JMS协议格式等。所述封包为根据当前协议的格式生成数据包。所述待消费消息包为消息消费者接收的数据包。所述第一格式为数据维护系统当前的协议格式对应的消息队列为Solace消息对列,Solace消息队列是不同于现有的其他的消息队列,是基于硬件实现的消息队列中间件。速度,效率,吞吐量,可靠性都高于很多现有的消息中间件。
可以理解地,客户端通过数据维护系统传递数据,数据维护系统根据当前的协议格式,如AMWP协议格式将数据处理为统一的格式并生成数据包。
步骤S103,发送所述待消费消息包至相应的消息中间件并获取监听结果,所述监听结果表示监听当前消息中间件是否可用的结果。消息中间件中有若干消息队列,消息由消息头和消息体组成,消息头中有路由键,根据路由键可以获取每个消息对应的消息对列。消息队列可用为消息对列可以接收消息并向消息消费者传递消息。所述监听结果根据监听器获取,监听器用于监听当前消息中间件4是否可用。
步骤S104,若所述监听结果表示所述当前消息中间件不可用,按照预配置的另一格式对所述生产的消息进行封包生成相应的待消费消息包。当监听器获取到消息对列不能接收或发送消息时,数据维护系统利用当前协议格式之外的另一协议格式将数据处理成统一的格式。
步骤S105,发送所述另一待消费消息包至相应的消息中间件并重新获取监听结果,直至所述当前消息中间件可用。所述另一待消费消息包为根据其他协议格式生成的数据包。根据每个消息的路由键获取对应的消息对列,并监听消息对列能否将消息发送至消息消费者消费者,若消息队列仍然无法将消息发送到消息消费者消费者,则选取数据维护系统中的其他协议格式处理数据,并发送到消息对列直至监听器能够监听到消息对列可以储存消息并将发送至消息消费者。
步骤S106,当所述监听结果表示所述当前消息中间件可用,通过所述当前消息队列服务发送所述相应的待消费消息包给消息消费者。所述消息消费者为若干消息消费者服务器,所述每个消息队列都与对应的消息消费者服务器有通信接口。
可以理解地,当监听器监听到消息队列无法向消费者消息消费者传递信息时,生成告警信息,例如服务器发出鸣响或配置有闪光灯闪烁。系统开发人员或系统运维人员更换数据维护系统的协议格式。
如图5所示,图5为本申请实施例提供的一种消息中间件自适应切换的方法的另一流程示意图。
步骤S201,消息产生者生产消息并发送至数据维护系统。所述消息生产者为客户端应用程序,不同的客户端应用程序生成的不同格式的数据。所述客户端应用程序可以为手机端APP如淘宝、网页浏览页面。当客户端应用程序为淘宝时,所述生产的消息为双十一秒杀时的交易数据。当客户端应用程序为执行购票APP时,所述生产的消息为抢票高峰期时的用户抢票的交易数据。所述数据运维系统对数据的格式进行统一格式处理。
步骤S202,所述数据维护系统将所述消息按照预配置格式中的第一格式对所述生产的消息进行封包生成相应的待消费消息包,所述预配置格式包括多种配置格式。所述预配置格式包括AMWP协议格式、JMS协议格式等。所述封包为根据数据维护系统的当前协议的格式生成数据包。所述待消费消息包为消息消费者接收的数据包。所述第一格式为数据维护系统当前的协议格式对应的消息队列为Solace消息对列,Solace消息队列是不同于现有的其他的消息队列及,它是完全基于硬件实现的消息队列中间件。速度,效率,吞吐量,可靠性都高于很多现有的消息中间件。
步骤S203,所述数据维护系统发送所述待消费消息包至相应的消息中间件。消息中间件中有若干消息队列,消息由消息头和消息体组成,消息头中有路由键,根据路由键可以获取每个消息对应的消息对列。
步骤S204,监控系统监听当前消息中间件是否可用并发送相应的监听结果给所述数据维护系统。所述监听结果表示监听当前消息中间件是否可用的结果,监听系统与数据运维系统通信,一旦有新消息后,监听器将自动读取并传递给消费者,不用担心漏掉消息。
步骤S205,若所述监听结果表示所述当前消息队列系统不可用,所述数据维护系统按照预配置的另一格式对所述生产的消息进行封包生成相应的待消费消息包。当监听器获取到消息对列不能接收或发送消息时,根据数据运维系统的除了当前协议格式之外的其他任意一个的协议格式将数据处理成统一的格式。
步骤S206,所述数据维护系统发送所述另一待消费消息包至相应的消息中间件并重新获取所述监控系统反馈回来的监听结果,直至所述当前消息中间件可用。所述另一待消费消息包为根据其他协议格式生成的数据包。根据每个消息的路由键获取对应的消息对列,并监听消息对列能否将消息发送至消息消费者消费者,若消息队列仍然无法将消息发送到消息消费者消费者,则选取数据运维系统中的其他协议格式处理数据,并发送到消息对列直至监听器能够监听到消息对列可以储存消息并将发送至消息消费者。
步骤S207,当所述监听结果表示所述当前消息中间件可用,所述数据维护系统通过所述当前消息队列服务发送所述相应的待消费消息包给消息消费者。所述消息消费者为若干消息消费者服务器,所述每个消息队列都与对应的消息消费者服务器有通信接口。
请参看图6,其为本实施例还提供的一种数据维护系统的程序功能模块示意图。所述数据维护系统1包括接收单元6、适配单元7、监听单元8、以及发送单元9。
接收单元6,用于接收来自不同消息生产者生产的采用不同格式的数据包的消息数据。所述不同消息生产者为不同的客户端应用程序,所述不同的格式为不同的客户端应用程序生成的不同格式的数据。所述客户端应用程序可以为手机端APP如淘宝、网页浏览页面。当客户端应用程序为淘宝时,所述生产的消息为双十一秒杀时的交易数据。
适配单元7,用于将消息按照多种预配置格式中的第一格式对所述生产的消息进行封包生成相应的待消费消息包。所述预配置格式包括:AMWP协议格式、JMS协议格式等。所述封包为根据数据维护系统的当前协议的格式生成数据包。所述待消费消息包为消息消费者接收的数据包。所述第一格式为数据维护系统当前的协议格式对应的消息队列为Solace消息对列,Solace消息队列是不同于现有的其他的消息队列及,它是完全基于硬件实现的消息队列中间件。速度,效率,吞吐量,可靠性都高于很多现有的消息中间件。
监听单元8,发送待消费消息包至相应的消息中间件并获取表示监听当前消息中间件是否可用的监听结果。若监听结果表示所述当前消息中间件不可用。消息中间件中有若干消息队列,消息由消息头和消息体组成,消息头中有路由键,根据路由键可以获取每个消息对应的消息对列。消息队列可用为消息对列可以接收消息并向消息消费者传递消息。所述监听结果根据监听器获取。
适配单元7,按照预配置的另一格式对生产的消息进行封包生成相应的待消费消息包并发送另一待消费消息包至相应的消息中间件并重新获取监听结果,直至所述当前消息中间件可用。当监听器获取到消息对列不能接收或发送消息时,根据数据维护系统中的除了当前协议格式之外的其他任意一个的协议格式将数据处理成统一的格式。所述另一待消费消息包为根据其他协议格式生成的数据包。
发送单元9,用于当所述监听结果表示所述当前消息中间件可用时,通过所述当前消息队列服务发送相应的待消费消息包给消息消费者。根据每个消息的路由键获取对应的消息对列,并监听消息对列能否将消息发送至消息消费者,若消息队列仍然无法将消息发送到消息消费者,则选取其他协议格式处理数据,并发送到消息对列直至监听器能够监听到消息对列可以储存消息并将发送至消息消费者。
请查看图7,其为本申请实施例提供的一种中间件自适应切换的服务器的内部结构示意图。服务器200用于实现方法,计算机设备200包括处理器201,以及存储器202。其中,处理器201用于执行可执行程序以实现如上述实施例提供的中间件自适应切换方法,存储器202用于存储计算机可执行程序和上述实施例提供的中间件自适应切换方法。
其中,处理器201在一些实施例中可以是一中央处理器(Central ProcessingUnit,CPU)、控制器、微控制器、微处理器或其它数据处理芯片,用于运行存储器202中存储的计算机可执行程序。具体地,处理器201执行可执行程序以实现上述实施例提供的中间件自适应切换方法。
存储器202至少包括一种类型的可读存储介质,该可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器202在一些实施例中可以是计算机设备200的内部存储单元,例如计算机设备200的硬盘。存储器202在另一些实施例中也可以是的外部计算机设备200存储设备,例如计算机设备200上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器202还可以既包括计算机设备200的内部存储单元也包括外部存储设备。存储器202不仅可以用于存储安装于计算机设备200的应用软件及各类数据,例如实现中间件自适应切换方法的代码等,还可以用于暂时地存储已经输出或者将要输出的中间件自适应切换方法的代码。
计算机设备200还包括总线203。总线203可以是外设部件互连标准(peripheralcomponent interconnect,简称PCI)总线或扩展工业标准结构(extended industrystandard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,计算机设备200还可以包括显示组件204。显示组件204可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示组件204也可以适当的称为显示装置或显示单元,用于显示在计算机设备200中处理的信息以及用于显示可视化的用户界面。
进一步地,计算机设备200还可以包括通信组件205。通信组件205可选的可以包括有线通信组件和/或无线通信组件(如WI-FI通信组件、蓝牙通信组件等),通常用于在计算机设备200与其它计算机设备之间建立通信连接。
图7仅示出了具有部分组件以及实现中间件自适应切换方法的计算机设备200,本领域技术人员可以理解的是,图7示出的结构并不构成对计算机设备200的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。该计算机设备可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、流动硬盘、只读存储介质(ROM,Read-Only Memory)、随机存取存储介质(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种消息中间件自适应切换的方法,其特征在于,所述方法包括:
接收来自不同消息生产者生产的消息,所述生产的消息采用不同格式的数据包;
将所述消息按照预配置格式中的第一格式对所述生产的消息进行封包生成相应的待消费消息包,所述预配置格式包括多种配置格式;
发送所述待消费消息包至相应的消息中间件并获取监听结果,所述监听结果表示监听当前消息中间件是否可用的结果;
若所述监听结果表示所述当前消息中间件不可用,按照预配置的另一格式对所述生产的消息进行封包生成相应的待消费消息包;
发送所述另一待消费消息包至相应的消息中间件并重新获取监听结果,直至所述当前消息中间件可用;
当所述监听结果表示所述当前消息中间件可用,通过所述当前消息队列服务发送所述相应的待消费消息包给消息消费者。
2.如权利要求1所述的消息中间件自适应切换的方法,其特征在于,所述预设配置包括AMWP协议格式、JMS协议格式。
3.如权利要求1所述的消息中间件自适应切换的方法,其特征在于,所述消息为价格或者交易数据,所述第一格式相对应的待消费消息通过solace传输。
4.如权利要求3所述的消息中间件切换的方法,其特征在于,所述消息中间件自适应切换方法基于MDS系统实现。
5.如权利要求3所述的消息中间件切换的方法,其特征在于,还包括:
若所述监听结果表示所述当前消息中间件不可用,获取所述获取警告信息,所述警告信息用于告知所述开发运维及时响应。
6.一种消息中间件自适应切换的方法,其特征在于,所述消息中间件自适应切换的方法,包括:
消息产生者生产消息并发送至数据维护系统;
所述数据维护系统将所述消息按照预配置格式中的第一格式对所述生产的消息进行封包生成相应的待消费消息包,所述预配置格式包括多种配置格式;
所述数据维护系统发送所述待消费消息包至相应的消息中间件;
监控系统监听当前消息中间件是否可用并发送相应的监听结果给所述数据维护系统;
若所述监听结果表示所述当前消息队列系统不可用,所述数据维护系统按照预配置的另一格式对所述生产的消息进行封包生成相应的待消费消息包;
所述数据维护系统发送所述另一待消费消息包至相应的消息中间件并重新获取所述监控系统反馈回来的监听结果,直至所述当前消息中间件可用;
当所述监听结果表示所述当前消息中间件可用,所述数据维护系统通过所述当前消息队列服务发送所述相应的待消费消息包给消息消费者。
7.如权利要求6所述的消息中间件自适应切换的方法,其特征在于,所述数据维护系统为MDS系统。
8.如权利要求6所述的消息中间件自适应切换的方法,其特征在于,若所述监听结果表示所述当前消息中间件不可用,还获取所述获取警告信息,所述警告信息用于告知所述开发运维及时响应。
9.一种数据维护系统,其特征在于,所述数据维护系统包括:接收单元、适配单元、以及监听单元,所述接收单元用于接收来自不同消息生产者生产的消息,所述生产的消息采用不同格式的数据包;所述适配单元用于将所述消息按照预配置格式中的第一格式对所述生产的消息进行封包生成相应的待消费消息包,所述预配置格式包括多种配置格式;所述监听单元发送所述待消费消息包至相应的消息中间件并获取监听结果,所述监听结果表示监听当前消息中间件是否可用的结果,若所述监听结果表示所述当前消息中间件不可用,按照预配置的另一格式对所述生产的消息进行封包生成相应的待消费消息包并发送所述另一待消费消息包至相应的消息中间件并重新获取监听结果,直至所述当前消息中间件可用;所述发布单元用于当所述监听结果表示所述当前消息中间件可用时,通过所述当前消息队列服务发送所述相应的待消费消息包给消息消费者。
10.一种消息中间件自适应切换系统,其特征在于,所述消息中间件自适应切换系统包括:
消息产生者,用于生产消息;
消息消费者,用于接收所述生产的消息;
消息中间件,以及
数据维护系统,所述数据维护系统包括:
存储器,用于存储计算机程序指令;
处理器,用于执行计算机程序指令以实现如权利要求1至8中任一项所述的消息中间件切换的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210737690.3A CN115118763A (zh) | 2022-06-27 | 2022-06-27 | 消息中间件自适应切换的方法及系统、以及数据维护系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210737690.3A CN115118763A (zh) | 2022-06-27 | 2022-06-27 | 消息中间件自适应切换的方法及系统、以及数据维护系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115118763A true CN115118763A (zh) | 2022-09-27 |
Family
ID=83329682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210737690.3A Pending CN115118763A (zh) | 2022-06-27 | 2022-06-27 | 消息中间件自适应切换的方法及系统、以及数据维护系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115118763A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107592215A (zh) * | 2017-08-31 | 2018-01-16 | 郑州云海信息技术有限公司 | 一种管理消息中间件的方法 |
CN109388509A (zh) * | 2018-10-22 | 2019-02-26 | 上海朔羡网络科技有限公司 | 消息处理系统、方法、计算机设备及可读存储介质 |
CN109815035A (zh) * | 2019-02-27 | 2019-05-28 | 深信服科技股份有限公司 | 一种消息队列的消息传递方法及相关装置 |
CN112637198A (zh) * | 2020-12-22 | 2021-04-09 | 辽宁大学 | 一种基于OPC UA PubSub的多协议自适配模块设计方法 |
-
2022
- 2022-06-27 CN CN202210737690.3A patent/CN115118763A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107592215A (zh) * | 2017-08-31 | 2018-01-16 | 郑州云海信息技术有限公司 | 一种管理消息中间件的方法 |
CN109388509A (zh) * | 2018-10-22 | 2019-02-26 | 上海朔羡网络科技有限公司 | 消息处理系统、方法、计算机设备及可读存储介质 |
CN109815035A (zh) * | 2019-02-27 | 2019-05-28 | 深信服科技股份有限公司 | 一种消息队列的消息传递方法及相关装置 |
CN112637198A (zh) * | 2020-12-22 | 2021-04-09 | 辽宁大学 | 一种基于OPC UA PubSub的多协议自适配模块设计方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105376107B (zh) | 终端测试方法和代理服务器 | |
EP2422552B1 (en) | Method, apparatus and computer program product for invoking local communication application services | |
US8966073B2 (en) | Network communication method and system | |
CN102469033A (zh) | 一种消息订阅系统以及消息发送方法 | |
CA2588007A1 (en) | System and method for monitoring mobile units in a wireless network | |
CN106790291B (zh) | 一种入侵检测提示方法及装置 | |
CN112152940B (zh) | 报文处理方法、装置以及系统 | |
CN107274222B (zh) | 广告投放方法及装置 | |
CN113364852B (zh) | 文件的传输方法、装置和服务器 | |
CN109271259B (zh) | 企业服务总线系统、数据处理方法、终端及存储介质 | |
CN109951514A (zh) | 基于云存储的文件处理方法、系统及计算机设备 | |
CN112559476A (zh) | 一种用于提高目标系统性能的日志存储方法及其相关设备 | |
TWI379198B (en) | Signaling an interrupt request through daisy chained devices | |
CN112667476A (zh) | 基于任务的消息过滤方法、装置、设备及存储介质 | |
CN112804330A (zh) | 应用通信方法及设备 | |
CN111147330A (zh) | 络质量评估方法、装置、存储介质和处理器 | |
CN112437155B (zh) | 服务数据的处理方法、装置以及服务端设备 | |
US20080046543A1 (en) | System and method for automatically obtaining web feed content | |
CN115118763A (zh) | 消息中间件自适应切换的方法及系统、以及数据维护系统 | |
CN108170545A (zh) | 一种基于消息中间件的消息传输方法和装置 | |
CN108920328B (zh) | 发现终端应用变更的方法及装置 | |
CN114449040A (zh) | 基于云平台的配置下发方法及装置 | |
CN107872495B (zh) | 一种信息处理方法及终端设备 | |
CN111786899A (zh) | 一种物联网通信方法及相关设备 | |
CN111541667A (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 |