CN112882846A - 消息队列的数据处理方法、装置、计算机设备和存储介质 - Google Patents
消息队列的数据处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112882846A CN112882846A CN202110191376.5A CN202110191376A CN112882846A CN 112882846 A CN112882846 A CN 112882846A CN 202110191376 A CN202110191376 A CN 202110191376A CN 112882846 A CN112882846 A CN 112882846A
- Authority
- CN
- China
- Prior art keywords
- message
- data
- consumer
- processor
- target
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 261
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000004590 computer program Methods 0.000 claims description 32
- 238000012216 screening Methods 0.000 claims description 7
- 238000011161 development Methods 0.000 abstract description 21
- 238000011144 upstream manufacturing Methods 0.000 abstract description 17
- 238000010586 diagram Methods 0.000 description 10
- 238000001914 filtration Methods 0.000 description 10
- 238000012360 testing method Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000026676 system process Effects 0.000 description 2
- 230000006378 damage Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种消息队列的数据处理方法、装置、计算机设备和存储介质。所述方法包括:获取目标消息主题的第一配置信息;根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据;根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理;通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。上述方法能够减少下游消息消费者应用对上游消息生产者应用生成的消息以及消息模式的依赖性,提高下游消息消费者应用的开发效率。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种消息队列的数据处理方法、装置、计算机设备和存储介质。
背景技术
消息队列是分布式***中重要的组件,主要解决应用解耦、异步消息、流量削锋等问题。目前,使用较多的消息队列有ActiveMQ、RabbitMQ、ZeroMQ、Kafka等。现有基于消息队列的生产者和消费者的应用中,上游消息生产者应用生成消息并发送到消息队列,下游消息消费者应用根据上游消息生产者应用事先定好的消息格式从消费队列中获取消息进行数据处理。当上游消息生产者应用的消息模式变更或增加新模式消息时,必须通知下游消息消费者应用,开发人员对消费者应用做代码调整以适应上游消息生产者应用的新的消息模式,期间需要经历开发、测试、生产发布等环节。
由此可见,下游消息消费者应用严重依赖于上游消息生产者应用生成的消息以及消息模式,当游生产者应用业务需求变更或者其他原因导致生成的消息模式发生变化,都需要下游消息消费者应用进行对应调整或者补充消息处理逻辑,从而引起下游消息消费者应用的代码开发、发布等环节带来的时间损耗,造成下游消息消费者应用的开发效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种消息队列的数据处理方法、装置、计算机设备和存储介质,能够减少下游消息消费者应用对上游消息生产者应用生成的消息以及消息模式的依赖性,提高下游消息消费者应用的开发效率,且能够提高下游消息消费者应用对消息队列中消息主题的数据处理的效率。
一种消息队列的数据处理方法,该方法包括:获取目标消息主题的第一配置信息;根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据;根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理;通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。
在其中一个实施例中,第一配置信息包括目标消息主题的消费者的第一标识信息、消息队列的第二标识信息以及数据处理器的第三标识信息;根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据,包括:根据第一标识信息在消费者客户端创建消费者线程;根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据;根据第一配置信息识别目标消息主题的数据处理器,包括:根据第三标识信息识别目标消息主题的数据处理器。
在其中一个实施例中,第二标识信息包括消息队列的身份信息以及消息队列中消息数据的第一存储路径信息;根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据,包括:根据身份信息识别出消息队列;根据第一存储路径信息从消息队列中获取目标消息主题的消息数据。
在其中一个实施例中,一种消息队列的数据处理方法还包括:获取数据处理器的第二配置信息;从第二配置信息中获取第二存储路径信息;根据第二存储路径信息读取数据处理器的代码文件,代码文件用于实现预设数据处理逻辑;根据代码文件生成数据处理器。
在其中一个实施例中,代码文件内包含第一处理接口代码和第二处理接口代码,根据代码文件生成数据处理器,包括:根据第一处理接口代码生成数据处理器的第一处理接口,第一处理接口用于指示对目标消息主题的消息数据进行筛选,得到第一消息数据;根据第二处理接口代码生成数据处理器的第二处理接口,第一处理接口用于指示根据预设数据处理逻辑对第一消息数据进行数据处理,得到第二消息数据;通过数据处理器对目标消息主题的消息数据进行数据处理,包括:通过数据处理器的第一处理接口对目标消息主题的消息数据进行筛选,得到第一消息数据;通过数据处理器的第二处理接口对第一消息数据进行数据处理,得到第二消息数据。
在其中一个实施例中,根据第一配置信息识别目标消息主题的数据处理器,包括:根据第一配置信息识别目标消息主题的多个数据处理器,不同数据处理器用于根据不同预设数据处理逻辑对目标消息主题的消息数据进行数据处理;通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理,包括:通过消费者线程将目标消息主题的消息数据分别发送到各数据处理器中,通过各数据处理器对目标消息主题的各消息数据进行数据处理;其中,各数据处理器从目标消息主题的多个消息数据中筛选出对应的消息数据,并采用各数据处理器中的预设数据处理逻辑对筛选出的对应的消息数据进行数据处理。
在其中一个实施例中,一种消息队列的数据处理方法还包括:设置消费者线程的第四标识信息;根据第四标识信息销毁消费者线程。
一种消息队列的数据处理装置,该装置包括:第一获取模块,用于获取目标消息主题的第一配置信息;第二获取模块,用于根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据;识别模块,用于根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理;处理模块,用于通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一实施例方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例方法的步骤。
上述消息队列的数据处理方法、装置、计算机设备和存储介质,下游消息消费者***通过配置的方式得到目标消息主题的第一配置信息,进而根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据,根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理,进而通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。因此,下游消息消费者***对目标消息主题的消息数据进行处理时,将消息数据的获取和处理进行分离,由此当上游消息生产者发往消息队列的目标消息主题的消息数据的消息模式发生变化时,只需要对数据处理器的实现预设数据处理逻辑的代码进行修改或重新开发新代码,进而将修改后的数据处理器和消费者客户端进行快速组装得到新的下游消息消费者应用,即可实现对目标消息主题的新消息数据进行处理,从而减少了下游消息消费者***中对于下游消息消费者应用的代码开发的工作量,并且针对上游消息生产者的消息数据的变化下游消息消费者***可以快速部署上线新的下游消息消费者应用,提高了下游消息消费者***的开发效率。
附图说明
图1为一个实施例中一种消息队列的数据处理方法的应用环境图;
图2为一个实施例中一种消息队列的数据处理方法的流程示意图;
图3为一个实施例一种消息队列的数据处理方法的服务配置的***结构示意图;
图4为一个实施例中第一配置信息的配置界面示意图;
图5为一个实施例中数据处理器的创建流程示意图;
图6为一个实施例中一种消息队列的数据处理方法的***架构的组件工作图;
图7为一个实施例中一种消息队列的数据处理方法的具体操作流程示意图;
图8为一个业务场景应用中一种业务接入的操作流程示意图;
图9为一个实施例中一种消息队列的数据处理装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的一种消息队列的数据处理方法,可以应用于如图1所示的应用环境中。如图1所示,上游消息生产者***102用于生产本申请的数据处理的对象,即目标消息主题的消息数据。消息队列104用于接收上游消息生产者***102上传的目标消息主题的消息数据,并且响应下游消息消费者***106的目标消息主题的消息数据的订阅请求。其中,如图2所示,消息队列104存储有一个或多个消息主题的消息数据,一个或多个消息主题的消息数据中包含目标消息主题的消息数据。下游消息消费者***106用于从消息队列104订阅目标消息主题的消息数据,并执行本申请的一种消息队列的数据处理方法。具体地,如图2所示,下游消息消费者***106设置消费者客户端、数据处理器以及数据存储区,以通过这三者实现本申请的一种消息队列的数据处理方法。如,数据存储区存储有目标消息主题的第一配置信息,下游消息消费者***106根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列104中获取目标消息主题的消息数据,并且下游消息消费者***106根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理,进而通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。
在一个实施例中,如图2所示,提供了一种消息队列的数据处理方法,以该方法应用于图1中的下游消息消费者***106为例进行说明,包括以下步骤:
S202,获取目标消息主题的第一配置信息。
在本实施例中,第一配置信息用于指示下游消息消费者***按照预设配置规则对目标消息主题的消息数据进行数据处理。如,第一配置信息中预先配置有预设配置规则的指示信息,下游消息消费者***基于预设配置规则的指示信息执行目标消息主题的消息数据的数据处理。其中,第一配置信息可以通过人工输入得到。如,下游消息消费者***提供配置界面,用户在配置界面输入预设配置规则,下游消息消费者***根据用户输入的预设配置规则生成第一配置信息。
例如,如图3所示。下游消息消费者***通过配置服务的方式配置第一配置信息。具体可以是,用户通过配置平台进行第一配置信息的服务配置。配置服务主要包括消费者配置、数据处理器管理以及消费者线程管理。其中,消费者配置包括配置消费者名称、待连接的消息队列相关信息以及关联的数据处理器等消费者配置信息。数据处理器管理用于管理数据处理器配置信息。数据处理器配置信息包括封装了数据处理逻辑的jar(JavaArchive,一种软件格式)包、jar包路径等。消费者线程管理用于创建消费者客户端的消费者线程以及销毁消费者线程等。下游消息消费者***通过配置服务得到第一配置信息。
S204,根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据。
在本实施例中,如图3所示,下游消息消费者***创建消费者客户端。通过对消费者客户端创建多条消费者线程的方式可以实现对一个或多个消息主题的消息数据的数据处理。本实施例中,下游消息消费者***根据第一配置信息在消费者客户端创建目标消息主题的消费者线程。具体地,第一配置信息中包含消费者配置信息,下游消息消费者***基于消费者配置信息创建对应消费者的消费者线程。此外,第一配置信息中还包含消息队列配置信息,消息队列配置信息用于指示出消息队列。进而,下游消息消费者***基于消息队列配置信息通过消费者线程从消息队列中获取目标消息主题的消息数据。
S206,根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理。
在本实施例中,第一配置信息中还包含数据处理器配置信息,数据处理器配置信息用于指示出数据处理器。下游消息消费者***基于第一配置信息识别目标消息主题的数据处理器。其中,如图3所示,数据处理器可以由下游消息消费者***基于预设数据处理逻辑预先创建并存储在数据存储区中,如存储在数据库中。
S208,通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。
在本实施例中,消费者客户端的消费者线程获取到目标消息主题的消息数据后,将目标消息主题的消息数据发送到数据处理器。在具体的操作过程中,如图3所示,数据处理器以jar包的形式存储,将数据处理器传递到消费者线程中,由消费者线程将消息数据发送到数据处理器中,并控制数据处理器对目标消息主题的消息数据进行数据处理。
上述消息队列的数据处理方法、装置、计算机设备和存储介质,下游消息消费者***通过配置的方式得到目标消息主题的第一配置信息,进而根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据,根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理,进而通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。因此,下游消息消费者***对目标消息主题的消息数据进行处理时,将消息数据的获取和处理进行分离,由此当上游消息生产者发往消息队列的目标消息主题的消息数据的消息模式发生变化时,只需要对数据处理器的实现预设数据处理逻辑的代码进行修改或重新开发新代码,进而将修改后的数据处理器和消费者客户端进行快速组装,得到新的下游消息消费者应用,即可实现对目标消息主题的新消息数据进行处理,从而减少了下游消息消费者***中对于下游消息消费者应用的代码开发的工作量,并且针对上游消息生产者的消息数据的变化下游消息消费者***可以快速部署上线新的下游消息消费者应用,提高了下游消息消费者***的开发效率。
在一实施例中,第一配置信息包括目标消息主题的消费者的第一标识信息、消息队列的第二标识信息以及数据处理器的第三标识信息。上述根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据的步骤,包括:根据第一标识信息在消费者客户端创建消费者线程;根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据。上述根据第一配置信息识别目标消息主题的数据处理器的步骤,包括:根据第三标识信息识别目标消息主题的数据处理器。
在该实施例中,目标消息主题的第一配置信息中包括消费者的第一标识信息、消息队列的第二标识信息以及数据处理器的第三标识信息,通过各个标识信息识别出对应的对象。第一标识信息可以是创建的消费者的身份信息,第二标识信息可以是消息队列的名称信息,第三标识信息可以是创建的数据处理器的身份信息。此外,第一配置信息中还给出第一标识信息、第二标识信息以及第三标识信息的关联配置信息,下游消息消费者***通过关联配置信息确定消费者线程、消息队列以及数据处理器的关联关系。具体地,下游消息消费者***根据第一标识信息在消费者客户端创建消费者线程,根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据,根据第三标识信息识别目标消息主题的数据处理器。因此,下游消息消费者***在执行一种消息队列的数据处理方法时,能够根据第一标识信息、第二标识信息以及第三标识信息快速识别到对应的对象,提高数据处理的效率。
例如,如图4所示。消费者的第一标识信息为消费者名称,如A***业务数据处理。第二标识信息为参数配置。如参数配置的配置项对应的数据以及参数配置的值对应的数据。第三标识信息为数据处理的名称,如A业务数据处理。如图4所示,第一标识信息、第二标识信息以及第三标识信息的关联配置信息表征的关联关系为:根据参数配置中配置项的数据以及参数配置中值的数据识别对应的消息队列,采用A***业务数据处理的消费者线程从消息队列中获取A业务数据,将A业务数据传递给A业务数据处理的数据处理器进行数据处理。并且,A业务数据处理的数据处理器在A***业务数据处理的消费者线程中执行。
在一实施例中,第二标识信息包括消息队列的身份信息以及消息队列中消息数据的第一存储路径信息。上述根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据的步骤,包括:根据身份信息识别出消息队列;根据第一存储路径信息从消息队列中获取目标消息主题的消息数据。
在该实施例中,目标消息主题的消息数据存储在消息队列的某一存储区。通过第一存储路径信息可以从消息队列中读取出消息数据。第二标识信息中给出消息队列的身份信息以及第一存储路径信息,下游消息消费者***根据消息队列的身份信息识别到消息队列,进而根据第一存储路径信息从消息队列的存储区中读取到消息数据。例如,如图4所示,消息队列的身份信息为参数配置的配置项中的数据,第一存储路径信息为参数配置的值中的数据。
在一实施例中,上述根据第一配置信息识别目标消息主题的数据处理器的步骤之前,还包括:获取数据处理器的第二配置信息;从第二配置信息中获取第二存储路径信息;根据第二存储路径信息读取数据处理器的代码文件,代码文件用于实现预设数据处理逻辑;根据代码文件生成数据处理器。
在该实施例中,执行目标消息主题的消息数据处理之前,需创建数据处理器。具体地,开发数据处理器的代码,以实现预设数据处理逻辑,进而将代码存储为代码文件。配置数据处理器的第二配置信息,第二配置信息中包含用于指示代码文件的存储地址的第二存储路径信息。下游消息消费者***根据第二存储路径信息读取数据处理器的代码文件,进而运行代码文件中的代码,生成数据处理器。其中,第二配置信息可以采用人工输入配置信息的方式进行配置。第二配置信息与第一配置信息为独立的两个配置信息,第二配置信息用于指示下游消息消费者***创建数据处理器,第一配置信息用于指示下游消息消费者***对目标消息主题的消息数据进行数据处理。在其他实现方式中,也可以是第一配置信息内包含第二配合信息。该实施例实现了数据处理器的创建,为目标消息主题的消息数据的数据处理提供了技术基础。
在一实施例中,代码文件内包含第一处理接口代码和第二处理接口代码。上述根据代码文件生成数据处理器的步骤,包括:根据第一处理接口代码生成数据处理器的第一处理接口,第一处理接口用于指示对目标消息主题的消息数据进行筛选,得到第一消息数据;根据第二处理接口代码生成数据处理器的第二处理接口,第一处理接口用于指示根据预设数据处理逻辑对第一消息数据进行数据处理,得到第二消息数据。上述通过数据处理器对目标消息主题的消息数据进行数据处理的步骤,包括:通过数据处理器的第一处理接口对目标消息主题的消息数据进行筛选,得到第一消息数据;通过数据处理器的第二处理接口对第一消息数据进行数据处理,得到第二消息数据。
在该实施例中,代码文件内包含第一处理接口代码和第二处理接口代码。运行第一处理接口代码能够生成第一处理接口,运行第二处理接口代码能够生成第二处理接口。此处的处理接口,指的是用于数据处理的接口。接口中包含数据处理的方法,执行接口中的方法可实现对应的数据处理。其中,第一处理接口对目标消息主题的消息数据进行筛选,得到第一消息数据,第二处理接口对第一消息数据进行数据处理,得到第二消息数据。也即是,第一处理接口对目标消息主题的消息数据进行过滤,将目标消息主题的消息数据中非本数据处理器处理的数据过滤掉,得到本数据处理器处理的第一消息数据。进而,将第一消息数据传递到第二处理接口,以使得第二处理接口根据预设数据处理逻辑对第一消息数据进行数据处理。因此,可实现对数据处理器进行独立封装,对外提供用于接收目标消息主题的消息数据的接口即可。进而,当基于上游消息生产者发布的消息数据的模式进行对应功能开发时,由于数据处理器的独立封装性,只需要对数据处理器内的代码进行修改即可,减少了代码的开发量。
例如,数据处理器实现了数据处理的处理接口。处理接口包含两个方法:数据过滤方法和数据处理方法。接收到一条目标消息主题的消息时,通过数据过滤方法执行消息中消息数据的过滤,并将过滤结果返回。具体返回处理结果列表,处理结果列表可以为空,或包含一条或者多条记录。返回的处理结果列表中显示的是数据处理器过滤掉的消息数据。可以通过处理结果列表展示非数据处理器处理的其他数据信息。用户可按业务需求实现数据过滤方法中的数据过滤逻辑。
数据处理方法用于接收数据过滤方法过滤后的消息数据,并对过滤后的消息数据进一步处理。用户可以实现数据入库、写文件等操作创建数据处理器。数据处理器的处理接口可参见如下方式设置:
处理接口{
数据过滤(消息)返回列表
数据处理(列表)无返回值
};
其中,数据处理器的创建流程可参见图5所示。数据处理器配置信息中包含有数据处理器的jar包的路径信息,根据路径信息可加载到数据处理器的jar包,运行数据处理器的jar包可实现数据处理器的实例化。实例化后即完成数据处理器的创建。
在一实施例中,上述根据第一配置信息识别目标消息主题的数据处理器的步骤,包括:根据第一配置信息识别目标消息主题的多个数据处理器,不同数据处理器用于根据不同预设数据处理逻辑对目标消息主题的消息数据进行数据处理。上述通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理,包括:通过消费者线程将目标消息主题的消息数据分别发送到各数据处理器中,通过各数据处理器对目标消息主题的各消息数据进行数据处理。其中,各数据处理器从目标消息主题的多个消息数据中筛选出对应的消息数据,并采用各数据处理器中的预设数据处理逻辑对筛选出的对应的消息数据进行数据处理。
在该实施例中,创建的数据处理器为多个,各数据处理器用于根据不同的预设数据处理逻辑对目标消息主题的对应的消息数据进行数据处理。第一配置信息中包含有各个数据处理器的标识信息,通过第一配置信息可识别出各个数据处理器。当通过消费者线程从消息队列中获取到目标消息主题的消息数据时,将目标消息主题的消息数据分别发送到各数据处理器中,通过各数据处理器对目标消息主题的各消息数据进行数据处理。其中,各数据处理器具备数据筛选功能,在执行数据处理之前,对接收到的目标消息主题的多个消息数据进行筛选,以筛选出本数据处理器执行数据处理的数据对象。因此,各数据处理器可以独立封装,各数据处理器之间不存在数据交互,在目标消息主题的多个消息数据中任一消息数据的模式发生改变时,只需要修改对应的数据处理器的代码即可,无需对其他数据处理器的代码进行修改,大大减少了代码开发的工作量,而且可以快速部署上线新的下游消息消费者应用,省去了在下游消息消费者应用中修改代码、测试、发布等环节,提高了下游消息消费者应用的开发效率,节省了成本。
例如,如图6所示。按照图6所示的方式生成下游消息消费者应用。一个消费者线程用于处理消息队列中一个消费类型的消息主题的消息数据。一个消费者线程可对应多个数据处理器。各数据处理器之间信息隔离。消费者线程从消息队列中获取到消息主题的消息数据时,将获得的消息数据分别发送到与其连接的数据处理器。数据处理器具备数据过滤功能,从消息主题的消息数据中筛选出对应的消息数据进行处理。因此,可实现将各个数据处理器独立封装。当消费者线程从消息队列中获取到消息主题的消息数据发生变化时,只需将发生变化的消息数据对应的数据处理器进行代码修改即可,无需针对消费者线程的所有的数据处理进行代码开发,因此可减少代码的开发量,提高下游消息消费者应用的开发效率。
在一实施例中,上述通过消费者线程将目标消息主题的消息数据发送到数据处理器中的步骤之后,还包括:设置消费者线程的第四标识信息;根据第四标识信息销毁消费者线程。
在该实施例中,创建消费者线程之后,采用第四标识信息对消费者线程进行标识。当根据业务需求需要中断目标消息主题的数据处理时,可通过第四标识信息识别出消费者线程,进而销毁消费者线程,以中断目标消息主题的数据处理。因此,满足了业务需求。
在一具体实施例中,一种消息队列的数据处理方法的具体操作流程如图7所示。实现该实施例的一种消息队列的数据处理方法的***架构参见图6所示。结合图6,下游消息消费者***读取消费者配置以及读取与消费者关联的数据处理器的配置。其中,消费者配置通过用户配置得到,数据处理器的配置通过用户上传的数据处理模块得到。进而,加载数据处理器的jar文件并对数据处理器实例化。数据处理器的jar文件为用户上传的数据处理模块的jar文件,jar文件中包含数据处理器的实例化信息,通过执行jar文件中的代码可实现数据处理器实例化。数据处理器实例化后,基于消费者配置创建消费者线程,将数据处理器传递给消费者线程,由消费者线程实现一种消息队列的数据处理方法。此外,还记录每条消费者线程的ID,通过ID标识每条消费者线程。当需要销毁对应的消费者线程时,通过ID标识出消费者线程,进而销毁对应的消费者线程。
从业务场景应用对本申请的一种消息队列的数据处理方法进行举例说明:
一个业务接入的完整流程包括:需求沟通、代码开发、测试以及上线四个步骤。本例中消息队列为Kakfa,编程语言为java。完整的操作流程如图8所示。
1)需求沟通:需求沟通主要由上游生产者***提出,双方约定使用的Kafka的消息主题(topic)、消息格式、字段、处理逻辑。
2)代码开发:下游消费者***根据需求编写代码。这里只需要实现消息处理接口,并输出jar包。消息处理接口用于实现数据处理器。
数据处理接口{
数据过滤(消息)返回列表
数据处理(列表)无返回值
}。
3)测试:测试可以由开发人员完成,针对上面编写的数据处理接口的处理逻辑编写测试用例进行测试。
4)配置:开发人员配置数据处理器、配置消费者,最后点击按钮启动消费者。配置界面可参见图4所示。
因此,在上游消息模式变更或者新增消息模式时,下游消费者***只需要少量的开发,实现固定数据处理接口的消息处理模块,就可以通过配置快速构建出相应的处理流程,避免的下游消费者***的报错以及丢失数据,避免了生产环境发布带来的时间损耗和风险。
以实际业务应用种的场景举例:
本申请提出的方法简化了流程,节省了开发、测试、发布时间。普通的业务数据接入需求平均可节省3~4人天。另外很多在线服务经常规定需夜间发布,且版本发布时间经常受促销活动、机房检修等影响。配置化则提高了***的灵活性,可随时根据需要做变更。
上述各个实施例的一种消息队列的数据处理方法,相较于传统的消息队列的消费方式,本申请的一种消息队列的数据处理方法通过抽象数据处理的流程、定义数据处理接口,大大减少了代码开发的工作量,而且可以快速部署上线新的下游消费者应用,省去了在应用中修改代码、测试、发布等环节,提高了开发效率,节省了成本。
应该理解的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,提供了一种消息队列的数据处理装置,包括第一获取模块902、第二获取模块904、识别模块906以及处理模块908。第一获取模块902,用于获取目标消息主题的第一配置信息;第二获取模块904,用于根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据;识别模块906,用于根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理;处理模块908,用于通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。
在其中一个实施例中,第一配置信息包括目标消息主题的消费者的第一标识信息、消息队列的第二标识信息以及数据处理器的第三标识信息;第二获取模块904具体用于根据第一标识信息在消费者客户端创建消费者线程;根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据。识别模块906具体用于根据第三标识信息识别目标消息主题的数据处理器。
在其中一个实施例中,第二标识信息包括消息队列的身份信息以及消息队列中消息数据的第一存储路径信息;根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据,包括:根据身份信息识别出消息队列;根据第一存储路径信息从消息队列中获取目标消息主题的消息数据。
在其中一个实施例中,一种消息队列的数据处理装置还包括生成模块,用于获取数据处理器的第二配置信息;从第二配置信息中获取第二存储路径信息;根据第二存储路径信息读取数据处理器的代码文件,代码文件用于实现预设数据处理逻辑;根据代码文件生成数据处理器。
在其中一个实施例中,代码文件内包含第一处理接口代码和第二处理接口代码,根据代码文件生成数据处理器,包括:根据第一处理接口代码生成数据处理器的第一处理接口,第一处理接口用于指示对目标消息主题的消息数据进行筛选,得到第一消息数据;根据第二处理接口代码生成数据处理器的第二处理接口,第一处理接口用于指示根据预设数据处理逻辑对第一消息数据进行数据处理,得到第二消息数据。通过数据处理器对目标消息主题的消息数据进行数据处理,包括:通过数据处理器的第一处理接口对目标消息主题的消息数据进行筛选,得到第一消息数据;通过数据处理器的第二处理接口对第一消息数据进行数据处理,得到第二消息数据。
在其中一个实施例中,识别模块906具体用于根据第一配置信息识别目标消息主题的多个数据处理器,不同数据处理器用于根据不同预设数据处理逻辑对目标消息主题的消息数据进行数据处理。处理模块908具体用于通过消费者线程将目标消息主题的消息数据分别发送到各数据处理器中,通过各数据处理器对目标消息主题的各消息数据进行数据处理;其中,各数据处理器从目标消息主题的多个消息数据中筛选出对应的消息数据,并采用各数据处理器中的预设数据处理逻辑对筛选出的对应的消息数据进行数据处理。
在其中一个实施例中,一种消息队列的数据处理装置还包括销毁模块,用于设置消费者线程的第四标识信息;根据第四标识信息销毁消费者线程。
关于一种消息队列的数据处理装置的具体限定可以参见上文中对于一种消息队列的数据处理方法的限定,在此不再赘述。上述一种消息队列的数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是支持上述下游消息消费者***的服务器,其内部结构图可以如图10所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与消息队列连接,以从消息队列中读取消息数据。该计算机程序被处理器执行时以实现一种消息队列的数据处理方法。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取目标消息主题的第一配置信息;根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据;根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理;通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。
在一个实施例中,第一配置信息包括目标消息主题的消费者的第一标识信息、消息队列的第二标识信息以及数据处理器的第三标识信息;处理器执行计算机程序实现上述的根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据的步骤时,具体实现以下步骤:根据第一标识信息在消费者客户端创建消费者线程;根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据。处理器执行计算机程序实现上述的根据第一配置信息识别目标消息主题的数据处理器的步骤时,具体实现以下步骤:根据第三标识信息识别目标消息主题的数据处理器。
在一个实施例中,第二标识信息包括消息队列的身份信息以及消息队列中消息数据的第一存储路径信息;处理器执行计算机程序实现上述的根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据的步骤时,具体实现以下步骤:根据身份信息识别出消息队列;根据第一存储路径信息从消息队列中获取目标消息主题的消息数据。
在一个实施例中,处理器执行计算机程序时实现以下步骤:获取数据处理器的第二配置信息;从第二配置信息中获取第二存储路径信息;根据第二存储路径信息读取数据处理器的代码文件,代码文件用于实现预设数据处理逻辑;根据代码文件生成数据处理器。
在一个实施例中,代码文件内包含第一处理接口代码和第二处理接口代码;处理器执行计算机程序实现上述的根据代码文件生成数据处理器的步骤时,具体实现以下步骤:根据第一处理接口代码生成数据处理器的第一处理接口,第一处理接口用于指示对目标消息主题的消息数据进行筛选,得到第一消息数据;根据第二处理接口代码生成数据处理器的第二处理接口,第一处理接口用于指示根据预设数据处理逻辑对第一消息数据进行数据处理,得到第二消息数据。处理器执行计算机程序实现上述的通过数据处理器对目标消息主题的消息数据进行数据处理的步骤时,具体实现以下步骤:通过数据处理器的第一处理接口对目标消息主题的消息数据进行筛选,得到第一消息数据;通过数据处理器的第二处理接口对第一消息数据进行数据处理,得到第二消息数据。
在一个实施例中,处理器执行计算机程序实现上述的根据第一配置信息识别目标消息主题的数据处理器的步骤时,具体实现以下步骤:根据第一配置信息识别目标消息主题的多个数据处理器,不同数据处理器用于根据不同预设数据处理逻辑对目标消息主题的消息数据进行数据处理。处理器执行计算机程序实现上述的通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理的步骤时,具体实现以下步骤:通过消费者线程将目标消息主题的消息数据分别发送到各数据处理器中,通过各数据处理器对目标消息主题的各消息数据进行数据处理;其中,各数据处理器从目标消息主题的多个消息数据中筛选出对应的消息数据,并采用各数据处理器中的预设数据处理逻辑对筛选出的对应的消息数据进行数据处理。
在一个实施例中,处理器执行计算机程序时实现以下步骤:设置消费者线程的第四标识信息;根据第四标识信息销毁所述消费者线程。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例所述的一种消息队列的数据处理方法。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取目标消息主题的第一配置信息;根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据;根据第一配置信息识别目标消息主题的数据处理器,数据处理器用于根据预设数据处理逻辑对目标消息主题的消息数据进行数据处理;通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理。
在一个实施例中,第一配置信息包括目标消息主题的消费者的第一标识信息、消息队列的第二标识信息以及数据处理器的第三标识信息;计算机程序被处理器执行实现上述的根据第一配置信息在消费者客户端创建目标消息主题的消费者线程,通过消费者线程从消息队列中获取目标消息主题的消息数据的步骤时,具体实现以下步骤:根据第一标识信息在消费者客户端创建消费者线程;根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据。计算机程序被处理器执行实现上述的根据第一配置信息识别目标消息主题的数据处理器的步骤时,具体实现以下步骤:根据第三标识信息识别目标消息主题的数据处理器。
在一个实施例中,第二标识信息包括消息队列的身份信息以及消息队列中消息数据的第一存储路径信息;计算机程序被处理器执行实现上述的根据第二标识信息通过消费者线程从消息队列中获取目标消息主题的消息数据的步骤时,具体实现以下步骤:根据身份信息识别出消息队列;根据第一存储路径信息从消息队列中获取目标消息主题的消息数据。
在一个实施例中,计算机程序被处理器执行时实现以下步骤:获取数据处理器的第二配置信息;从第二配置信息中获取第二存储路径信息;根据第二存储路径信息读取数据处理器的代码文件,代码文件用于实现预设数据处理逻辑;根据代码文件生成数据处理器。
在一个实施例中,代码文件内包含第一处理接口代码和第二处理接口代码;计算机程序被处理器执行实现上述的根据代码文件生成数据处理器的步骤时,具体实现以下步骤:根据第一处理接口代码生成数据处理器的第一处理接口,第一处理接口用于指示对目标消息主题的消息数据进行筛选,得到第一消息数据;根据第二处理接口代码生成数据处理器的第二处理接口,第一处理接口用于指示根据预设数据处理逻辑对第一消息数据进行数据处理,得到第二消息数据。计算机程序被处理器执行实现上述的通过数据处理器对目标消息主题的消息数据进行数据处理的步骤时,具体实现以下步骤:通过数据处理器的第一处理接口对目标消息主题的消息数据进行筛选,得到第一消息数据;通过数据处理器的第二处理接口对第一消息数据进行数据处理,得到第二消息数据。
在一个实施例中,计算机程序被处理器执行实现上述的根据第一配置信息识别目标消息主题的数据处理器的步骤时,具体实现以下步骤:根据第一配置信息识别目标消息主题的多个数据处理器,不同数据处理器用于根据不同预设数据处理逻辑对目标消息主题的消息数据进行数据处理。计算机程序被处理器执行实现上述的通过消费者线程将目标消息主题的消息数据发送到数据处理器中,通过数据处理器对目标消息主题的消息数据进行数据处理的步骤时,具体实现以下步骤:通过消费者线程将目标消息主题的消息数据分别发送到各数据处理器中,通过各数据处理器对目标消息主题的各消息数据进行数据处理;其中,各数据处理器从目标消息主题的多个消息数据中筛选出对应的消息数据,并采用各数据处理器中的预设数据处理逻辑对筛选出的对应的消息数据进行数据处理。
在一个实施例中,计算机程序被处理器执行时实现以下步骤:设置消费者线程的第四标识信息;根据第四标识信息销毁所述消费者线程。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种消息队列的数据处理方法,所述方法包括:
获取目标消息主题的第一配置信息;
根据所述第一配置信息在消费者客户端创建所述目标消息主题的消费者线程,通过所述消费者线程从所述消息队列中获取所述目标消息主题的消息数据;
根据所述第一配置信息识别所述目标消息主题的数据处理器,所述数据处理器用于根据预设数据处理逻辑对所述目标消息主题的消息数据进行数据处理;
通过所述消费者线程将所述目标消息主题的消息数据发送到所述数据处理器中,通过所述数据处理器对所述目标消息主题的消息数据进行数据处理。
2.根据权利要求1所述的方法,其特征在于,所述第一配置信息包括目标消息主题的消费者的第一标识信息、消息队列的第二标识信息以及数据处理器的第三标识信息;
所述根据所述第一配置信息在消费者客户端创建所述目标消息主题的消费者线程,通过所述消费者线程从所述消息队列中获取所述目标消息主题的消息数据,包括:
根据所述第一标识信息在所述消费者客户端创建所述消费者线程;
根据所述第二标识信息通过所述消费者线程从所述消息队列中获取所述目标消息主题的消息数据;
所述根据所述第一配置信息识别所述目标消息主题的数据处理器,包括:
根据所述第三标识信息识别所述目标消息主题的数据处理器。
3.根据权利要求2所述的方法,其特征在于,所述第二标识信息包括所述消息队列的身份信息以及所述消息队列中所述消息数据的第一存储路径信息;
所述根据所述第二标识信息通过所述消费者线程从所述消息队列中获取所述目标消息主题的消息数据,包括:
根据所述身份信息识别出所述消息队列;
根据所述第一存储路径信息从所述消息队列中获取所述目标消息主题的消息数据。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述数据处理器的第二配置信息;
从所述第二配置信息中获取第二存储路径信息;
根据所述第二存储路径信息读取所述数据处理器的代码文件,所述代码文件用于实现所述预设数据处理逻辑;
根据所述代码文件生成所述数据处理器。
5.根据权利要求4所述的方法,其特征在于,所述代码文件内包含第一处理接口代码和第二处理接口代码,所述根据所述代码文件生成所述数据处理器,包括:
根据所述第一处理接口代码生成所述数据处理器的第一处理接口,所述第一处理接口用于指示对所述目标消息主题的消息数据进行筛选,得到第一消息数据;
根据所述第二处理接口代码生成所述数据处理器的第二处理接口,所述第一处理接口用于指示根据预设数据处理逻辑对所述第一消息数据进行数据处理,得到第二消息数据;
所述通过所述数据处理器对所述目标消息主题的消息数据进行数据处理,包括:
通过所述数据处理器的第一处理接口对所述目标消息主题的消息数据进行筛选,得到所述第一消息数据;
通过所述数据处理器的第二处理接口对所述第一消息数据进行数据处理,得到所述第二消息数据。
6.根据权利要求1所述的方法,其特征在于,所述根据所述第一配置信息识别所述目标消息主题的数据处理器,包括:
根据所述第一配置信息识别所述目标消息主题的多个数据处理器,不同数据处理器用于根据不同预设数据处理逻辑对所述目标消息主题的消息数据进行数据处理;
所述通过所述消费者线程将所述目标消息主题的消息数据发送到所述数据处理器中,通过所述数据处理器对所述目标消息主题的消息数据进行数据处理,包括:
通过所述消费者线程将所述目标消息主题的消息数据分别发送到各数据处理器中,通过各数据处理器对所述目标消息主题的各消息数据进行数据处理;
其中,各数据处理器从所述目标消息主题的多个消息数据中筛选出对应的消息数据,并采用各数据处理器中的预设数据处理逻辑对筛选出的对应的消息数据进行数据处理。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
设置所述消费者线程的第四标识信息;
根据所述第四标识信息销毁所述消费者线程。
8.一种消息队列的数据处理装置,其特征在于,所述装置包括:
第一获取模块,用于获取目标消息主题的第一配置信息;
第二获取模块,用于根据所述第一配置信息在消费者客户端创建所述目标消息主题的消费者线程,通过所述消费者线程从所述消息队列中获取所述目标消息主题的消息数据;
识别模块,用于根据所述第一配置信息识别所述目标消息主题的数据处理器,所述数据处理器用于根据预设数据处理逻辑对所述目标消息主题的消息数据进行数据处理;
处理模块,用于通过所述消费者线程将所述目标消息主题的消息数据发送到所述数据处理器中,通过所述数据处理器对所述目标消息主题的消息数据进行数据处理。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110191376.5A CN112882846B (zh) | 2021-02-19 | 2021-02-19 | 消息队列的数据处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110191376.5A CN112882846B (zh) | 2021-02-19 | 2021-02-19 | 消息队列的数据处理方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112882846A true CN112882846A (zh) | 2021-06-01 |
CN112882846B CN112882846B (zh) | 2024-02-09 |
Family
ID=76056626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110191376.5A Active CN112882846B (zh) | 2021-02-19 | 2021-02-19 | 消息队列的数据处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112882846B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268466A (zh) * | 2021-06-07 | 2021-08-17 | 上海数禾信息科技有限公司 | 消息集群平滑迁移的方法及*** |
CN113946362A (zh) * | 2021-09-02 | 2022-01-18 | 北京房江湖科技有限公司 | 消费数据处理方法及存储介质 |
CN116737400A (zh) * | 2023-08-15 | 2023-09-12 | 中移(苏州)软件技术有限公司 | 一种队列数据处理方法、装置及相关设备 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050021836A1 (en) * | 2003-05-01 | 2005-01-27 | Reed Carl J. | System and method for message processing and routing |
US20120166643A1 (en) * | 2010-12-27 | 2012-06-28 | Customized Technology Services, Inc. | Systems and methods for controlling and managing personal data communications |
CN107395729A (zh) * | 2017-07-27 | 2017-11-24 | 深圳乐信软件技术有限公司 | 一种消息队列的消费***、方法及装置 |
CN107888499A (zh) * | 2017-11-17 | 2018-04-06 | 北京邮电大学 | 一种基于sdn的发布订阅***及消息转发方法 |
CN108021358A (zh) * | 2017-12-15 | 2018-05-11 | 无线生活(杭州)信息科技有限公司 | 一种数据处理方法及装置 |
CN110032459A (zh) * | 2019-04-22 | 2019-07-19 | 深圳乐信软件技术有限公司 | 消息队列配置方法、装置、计算机设备及存储介质 |
US20190324828A1 (en) * | 2018-04-18 | 2019-10-24 | Open Text GXS ULC | Producer-Side Prioritization of Message Processing |
WO2020038447A1 (zh) * | 2018-08-23 | 2020-02-27 | 比亚迪股份有限公司 | 一种轨道交通***综合网管方法、装置及*** |
CN111209310A (zh) * | 2020-04-23 | 2020-05-29 | 太平金融科技服务(上海)有限公司 | 基于流计算的业务数据处理方法、装置和计算机设备 |
CN111224814A (zh) * | 2019-11-19 | 2020-06-02 | 中国联合网络通信集团有限公司 | 报文处理方法及设备 |
CN111651536A (zh) * | 2020-04-28 | 2020-09-11 | 平安医疗健康管理股份有限公司 | 数据处理方法及装置 |
WO2020238365A1 (zh) * | 2019-05-31 | 2020-12-03 | 深圳前海微众银行股份有限公司 | 消息消费方法、装置、设备及计算机存储介质 |
CN112134938A (zh) * | 2020-09-09 | 2020-12-25 | 重庆易宠科技有限公司 | 一种消息处理方法、装置、终端及计算机可读存储介质 |
CN112291121A (zh) * | 2020-12-30 | 2021-01-29 | 金锐同创(北京)科技股份有限公司 | 一种数据处理方法及相关设备 |
-
2021
- 2021-02-19 CN CN202110191376.5A patent/CN112882846B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050021836A1 (en) * | 2003-05-01 | 2005-01-27 | Reed Carl J. | System and method for message processing and routing |
US20120166643A1 (en) * | 2010-12-27 | 2012-06-28 | Customized Technology Services, Inc. | Systems and methods for controlling and managing personal data communications |
CN107395729A (zh) * | 2017-07-27 | 2017-11-24 | 深圳乐信软件技术有限公司 | 一种消息队列的消费***、方法及装置 |
CN107888499A (zh) * | 2017-11-17 | 2018-04-06 | 北京邮电大学 | 一种基于sdn的发布订阅***及消息转发方法 |
CN108021358A (zh) * | 2017-12-15 | 2018-05-11 | 无线生活(杭州)信息科技有限公司 | 一种数据处理方法及装置 |
US20190324828A1 (en) * | 2018-04-18 | 2019-10-24 | Open Text GXS ULC | Producer-Side Prioritization of Message Processing |
WO2020038447A1 (zh) * | 2018-08-23 | 2020-02-27 | 比亚迪股份有限公司 | 一种轨道交通***综合网管方法、装置及*** |
CN110032459A (zh) * | 2019-04-22 | 2019-07-19 | 深圳乐信软件技术有限公司 | 消息队列配置方法、装置、计算机设备及存储介质 |
WO2020238365A1 (zh) * | 2019-05-31 | 2020-12-03 | 深圳前海微众银行股份有限公司 | 消息消费方法、装置、设备及计算机存储介质 |
CN111224814A (zh) * | 2019-11-19 | 2020-06-02 | 中国联合网络通信集团有限公司 | 报文处理方法及设备 |
CN111209310A (zh) * | 2020-04-23 | 2020-05-29 | 太平金融科技服务(上海)有限公司 | 基于流计算的业务数据处理方法、装置和计算机设备 |
CN111651536A (zh) * | 2020-04-28 | 2020-09-11 | 平安医疗健康管理股份有限公司 | 数据处理方法及装置 |
CN112134938A (zh) * | 2020-09-09 | 2020-12-25 | 重庆易宠科技有限公司 | 一种消息处理方法、装置、终端及计算机可读存储介质 |
CN112291121A (zh) * | 2020-12-30 | 2021-01-29 | 金锐同创(北京)科技股份有限公司 | 一种数据处理方法及相关设备 |
Non-Patent Citations (1)
Title |
---|
张政;侍守创;: "基于消息中间件的制造执行***的设计与实现", 计算机应用与软件, no. 10, pages 118 - 121 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268466A (zh) * | 2021-06-07 | 2021-08-17 | 上海数禾信息科技有限公司 | 消息集群平滑迁移的方法及*** |
CN113946362A (zh) * | 2021-09-02 | 2022-01-18 | 北京房江湖科技有限公司 | 消费数据处理方法及存储介质 |
CN116737400A (zh) * | 2023-08-15 | 2023-09-12 | 中移(苏州)软件技术有限公司 | 一种队列数据处理方法、装置及相关设备 |
CN116737400B (zh) * | 2023-08-15 | 2023-11-03 | 中移(苏州)软件技术有限公司 | 一种队列数据处理方法、装置及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112882846B (zh) | 2024-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112882846B (zh) | 消息队列的数据处理方法、装置、计算机设备和存储介质 | |
CN108804618B (zh) | 数据库配置方法、装置、计算机设备和存储介质 | |
CN110191063B (zh) | 服务请求的处理方法、装置、设备及存储介质 | |
CN112035228A (zh) | 一种资源调度方法及装置 | |
CN109039751B (zh) | 配置路由的方法、装置、计算机设备和存储介质 | |
CN114531477B (zh) | 功能组件的配置方法、装置、计算机设备和存储介质 | |
CN112491659B (zh) | 一种流量回放测试方法、装置、计算机设备和存储介质 | |
CN113867600A (zh) | 处理流式数据的开发方法、装置和计算机设备 | |
CN110717647A (zh) | 决策流构建方法、装置、计算机设备和存储介质 | |
CN113377668A (zh) | 服务接口的自动化测试方法、装置和计算机设备 | |
CN111897843B (zh) | 物联网数据流转策略的配置方法、装置和计算机设备 | |
CN111722994A (zh) | 一种任务请求的响应方法及设备 | |
CN111258741A (zh) | 仓库任务执行的方法、分布式服务器集群及计算机设备 | |
CN112564979B (zh) | 构建任务的执行方法、装置、计算机设备和存储介质 | |
CN115098114A (zh) | 一种基于区块链的分布式应用部署方法及装置 | |
CN112698817B (zh) | 基于微服务架构的消息接入方法、装置、***及存储介质 | |
CN114884915A (zh) | 基于灰度发布的消息处理方法、装置以及设备 | |
CN114581241A (zh) | 智能合约的处理方法和装置、处理器及电子设备 | |
CN114185920A (zh) | 日志数据处理方法、装置、计算机设备和存储介质 | |
CN112882919A (zh) | 基于log4j的微服务架构的日志链路追踪方法和*** | |
CN116431275B (zh) | 容忍配置方法、装置、计算机设备和存储介质 | |
CN111698266A (zh) | 服务节点调用方法、装置、设备及可读存储介质 | |
US12039302B2 (en) | Building base applications with user interface micro frontends | |
US20230409295A1 (en) | Building base applications with user interface micro frontends | |
CN114116051B (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 |