CN111506430B - 多任务下数据处理的方法、装置及电子设备 - Google Patents
多任务下数据处理的方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111506430B CN111506430B CN202010329777.8A CN202010329777A CN111506430B CN 111506430 B CN111506430 B CN 111506430B CN 202010329777 A CN202010329777 A CN 202010329777A CN 111506430 B CN111506430 B CN 111506430B
- Authority
- CN
- China
- Prior art keywords
- data
- processed
- message queue
- producer
- value
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 72
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000008569 process Effects 0.000 claims abstract description 30
- 238000004519 manufacturing process Methods 0.000 claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 6
- 230000029087 digestion Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 7
- 238000009825 accumulation Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- LGRFSURHDFAFJT-UHFFFAOYSA-N Phthalic anhydride Natural products C1=CC=C2C(=O)OC(=O)C2=C1 LGRFSURHDFAFJT-UHFFFAOYSA-N 0.000 description 1
- JHIWVOJDXOSYLW-UHFFFAOYSA-N butyl 2,2-difluorocyclopropane-1-carboxylate Chemical compound CCCCOC(=O)C1CC1(F)F JHIWVOJDXOSYLW-UHFFFAOYSA-N 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- 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
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种多任务下数据处理的方法、装置及电子设备,该方法包括:获取生产者生产的待处理数据;将待处理数据输入消息队列中;将消息队列中的待处理数据发送至消费者进行处理;利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程。本发明将生产者产生的数据丢进消息队列内,消息队列作为数据的容器,使得多个消费者同时可以处理消息队列中的数据。由此将数据获取和处理分发在多个机器上处理,从而提升机器利用率的同时也能缩短业务整体处理时间。同时,利用系统计数器更好地控制数据产出和消化平衡。
Description
技术领域
本发明涉及计算机开发领域,尤其涉及一种多任务下数据处理的方法、装置及电子设备。
背景技术
在计算机研发过程中,对于处理复杂业务逻辑的方案,通常是同步串行执行各个业务流程,在业务代码中顺序编写各个处理逻辑。例如:UART端口是异步串行通信机制,接收到一个数据后操作系统就会产生一个中断,接收到的数据通过消息传送给任务并触发任务的执行;因此一百个字节的数据处理就产生一百个中断,需要发送一百个消息从而触发一百次任务才能完成,这样数据量大的情况下,单机器单接口执行效率低,执行时间长;如是多集群的生产环境,只通过定时任务处理业务数据,机器的利用率较低;数据处理存在高峰波,容易导致数据堆积,对系统的稳定性产生影响,不能合理利用机器性能。
因此,现需要一种可以将数据的获取和处理分发在多个机器上处理,从而提升机器利用率的同时也能缩短业务整体处理时间的方式。
发明内容
为了解决现有技术中在多集群的生产环境下,只通过定时任务处理业务数据,机器的利用率较低;数据处理存在高峰波,容易导致数据堆积,对系统的稳定性产生影响,不能合理利用机器性能的问题,本发明提供一种多任务下数据处理的方法、装置及电子设备。
第一方面,本发明提供一种多任务下数据处理的方法,该方法包括:
获取生产者生产的待处理数据;
将待处理数据输入消息队列中;
将消息队列中的待处理数据发送至消费者进行处理;
利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;
根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程。
进一步地,利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数包括:
根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值;
根据消费者处理的待处理数据的个数,对第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数。
进一步地,根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程包括:
将当前消息队列内的待处理数据总个数与预设阈值作比较;
若大于预设阈值,则停止生产者生产数据,直到当前消息队列内的待处理数据总个数小于等于预设阈值。
进一步地,根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程包括:
将当前消息队列内的待处理数据总个数与预设阈值作比较;
若小于预设阈值,则生产者继续生产数据。
进一步地,根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值包括:
根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行累加操作,获得第一数值。
进一步地,根据消费者处理的待处理数据的个数,对第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数包括:
根据消费者处理的待处理数据的个数,对第一数值的当前数值进行减法操作,获得当前消息队列内的待处理数据总个数。
第二方面,本发明提供一种多任务下数据处理的装置,该装置包括:
第一获取模块,用于获取生产者生产的待处理数据;
输入模块,用于将待处理数据输入消息队列中;
处理模块,用于将消息队列中的待处理数据发送至消费者进行处理;
第二获取模块,用于利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;
确定生产数据进程模块,用于根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程。
进一步地,第二获取模块包括:
获得第一数值单元,用于根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值;
当前待处理数据总个数获取单元,用于根据消费者处理的待处理数据的个数,对第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面提供的多任务下数据处理的方法的步骤。
第四方面,本发明提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面提供的多任务下数据处理的方法的步骤。
本发明通过使用生产者-消费者设计模式,将数据的获取和处理进行解耦,将生产者产生的数据丢进消息队列内,消息队列作为数据的容器,使得多个消费者同时可以处理消息队列中的数据。由此将数据获取和处理分发在多个机器上处理,从而提升机器利用率的同时也能缩短业务整体处理时间。同时,依据系统计数器统计消息队列中的数据总数,这样可以更好地控制生产者和消费者端的数据产出和消化平衡,能够增加处理数据能力的同时又不会对机器性能产生影响。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的多任务下数据处理的方法流程示意图;
图2为本发明实施例提供的生产者-消费者工作原理图;
图3为本发明实施例提供的多任务下数据处理的整体流程示意图;
图4为本发明实施例提供的多任务下数据处理的装置框图;
图5为本发明实施例提供的电子设备框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
现有技术中,对于处理复杂业务逻辑的方案,通常是同步串行执行各个业务流程,在业务代码中顺序编写各个处理逻辑,这样处理数据的缺点是:业务处理量较多较大的情况下,同步顺序执行消耗的时间较大,同时在处理大量数据的任务情况下,也不能合理利用机器性能。为了解决上述问题,本发明实施例提供一种多任务下数据处理的方法,如图1所示,该方法包括:
步骤S101,获取生产者生产的待处理数据;
步骤S102,将待处理数据输入消息队列中;
步骤S103,将消息队列中的待处理数据发送至消费者进行处理;
步骤S104,利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;
步骤S105,根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程。
具体为,计算机服务器在获取生产者生产的待处理数据后,将这些数据通过匀速器匀速地放到消息队列中,与此同时,消费者可以对消息队列中的待处理数据进行消化处理。苯酐实施例的生产者-消费者模式:通过一个容器来解决生产者和消费者的强耦合关系,生产者生成数据无需等待消费者索取,消费者无需直接索要数据。两者并不进行任何通讯,而是通过容器来进行操作。
在这里,本发明实施例优选的消息队列是MQ队列,其他消息队列,如ActiveMQ、RocketMQ、Kafka也是可以用来保存消息的。消息队列中间件是分布式系统中重要的组件。消息队列的作用有以下几个方面,1.应用解耦:消息生产者将消息写入消息队列,需要消息的消费者从消息队列中获取,消息生产者不需要做修改。2.异步处理:消息生产者将消息写入消息队列,非必要的业务逻辑以异步的方式运行,加快响应速度。3.削峰限流:系统慢慢的按照数据库能处理的并发量,从消息队列中慢慢拉取消息。避免流量过大导致应用系统关闭的情况。
在本发明实施例中还设置一个限制流程,即使用了系统计数器,利用系统计数器对生产者生产的待处理数据的个数、消费者处理的待处理数据的个数进行统计,得到当前消息队列内的待处理数据总个数;再将当前消息队列内的待处理数据总个数和当前消费者能够消化的数值(预设阈值)进行比较,确定生产者生产数据进程,以免出现数据溢出情况。
本发明实施例通过使用生产者-消费者设计模式,将数据的获取和处理进行解耦,将生产者产生的数据丢进消息队列内,消息队列作为数据的容器,使得多个消费者同时可以处理消息队列中的数据。由此将数据获取和处理分发在多个机器上处理,从而提升机器利用率的同时也能缩短业务整体处理时间。同时,依据系统计数器统计消息队列中的数据总数,这样可以更好地控制生产者和消费者端的数据产出和消化平衡,能够增加处理数据能力的同时又不会对机器性能产生影响。
基于上述各实施例的内容,作为一种可选实施例:利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数包括:
根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值;
根据消费者处理的待处理数据的个数,对第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数。
具体为,根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,这里的第一预设操作即是累加操作,例如:生产者生产一个待处理数据,将该待处理数据放入消息队列中,那么系统计数器数值就+1,将累加后的数据作为第一数值保存;之后消费者会处理消息队列中的数据,这时依据消费者处理的待处理数据的个数,对上述的第一数值的当前数值进行第二预设操作,这里的第二预设操作就是做减法操作,例如:消费者处理消息队列中的一个数据,相应的第一数值就会-1,也即是系统计数器对应的数值-1,这样便得到当前消息队列内的待处理数据总个数。本发明实施例中的系统计数器使用的是redis实现的,也可以使用数据库、ZooKeeper等方式实现。
基于上述各实施例的内容,作为一种可选实施例:根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程包括:
将当前消息队列内的待处理数据总个数与预设阈值作比较;
若大于预设阈值,则停止生产者生产数据,直到当前消息队列内的待处理数据总个数小于等于预设阈值;若小于预设阈值,则生产者继续生产数据。
具体为,在本发明实施例中设置一个限制流程,即设置一个消费者能够处理数据总数的业务预设阈值,在当前消息队列内的待处理数据总个数大于预设阈值时,说明此时的消费者的消费能力已经饱和了,数据堆积的量过大了,那就停止生产者生产数据,直到消费者将数据消耗到数量<=阈值,生产者再继续生产数据。否则不做任何处理。
另外,在合理利用现有机器性能的情况下,为了大量提升了业务处理的能力,同时如果随着业务量的增加,当现有机器环境处理有了瓶颈时,只需适当的增加消费者(增加机器集群的部署),即可满足更多的业务数据处理。
基于上述各实施例的内容,作为一种可选实施例:如图2所示,图2是本发明实施例提供的生产者-消费者工作原理图,在图中可看到在多集群的环境中,每个节点上都会有生产者和消费者,同时每个节点上也都有消费者模块功能,利用MQ消息队列的负载均衡机制,会将一条消息推送到一个节点上进行消费处理。这样有多个节点,就可以增加处理数据的能力。
基于上述各实施例的内容,作为一种可选实施例:如图3所示,图3为本发明实施例提供的多任务下数据处理的整体流程示意图。图中详细步骤为:
1)生产任务开始;
2)选择一个节点作为生产者;
3)判断当前未处理数据的总个数是否超过预设阈值,超过,执行步骤4);未超过,执行步骤5);
4)结束生产者生产数据;
5)生产者生产数据;
6)通过匀速器匀速地将数据放到消息队列中;
7)将未处理的数据个数+1,循环执行步骤3)。
根据本发明的再一个方面,本发明实施例提供多任务下数据处理的装置,参见图4,图4为本发明实施例提供的多任务下数据处理的装置框图。该装置用于在前述各实施例中完成本发明实施例提供的多任务下数据处理。因此,在前述各实施例中的本发明实施例提供的多任务下数据处理的方法中的描述和定义,可以用于本发明实施例中各执行模块的理解。
该装置包括:
第一获取模块401,用于获取生产者生产的待处理数据;
输入模块402,用于将待处理数据输入消息队列中;
处理模块403,用于将消息队列中的待处理数据发送至消费者进行处理;
第二获取模块404,用于利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;
确定生产数据进程模块405,用于根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程。
具体的,本实施例的装置中各模块实现其功能的具体过程可参见对应的方法实施例中的相关描述,此处不再赘述。
本发明实施例通过使用生产者-消费者设计模式,将数据的获取和处理进行解耦,将生产者产生的数据丢进消息队列内,消息队列作为数据的容器,使得多个消费者同时可以处理消息队列中的数据。由此将数据获取和处理分发在多个机器上处理,从而提升机器利用率的同时也能缩短业务整体处理时间。同时,依据系统计数器统计消息队列中的数据总数,这样可以更好地控制生产者和消费者端的数据产出和消化平衡,能够增加处理数据能力的同时又不会对机器性能产生影响。
基于上述各实施例的内容,作为一种可选实施例:第二获取模块包括:
获得第一数值单元,用于根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值;
当前待处理数据总个数获取单元,用于根据消费者处理的待处理数据的个数,对第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数。
图5为本发明实施例提供的电子设备框图,如图5所示,该设备包括:处理器501、存储器502和总线503;
其中,处理器501及存储器502分别通过总线503完成相互间的通信;处理器501用于调用存储器502中的程序指令,以执行上述实施例所提供的多任务下数据处理的方法,例如包括:获取生产者生产的待处理数据;将待处理数据输入消息队列中;将消息队列中的待处理数据发送至消费者进行处理;利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程。
本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现多任务下数据处理的方法的步骤。例如包括:获取生产者生产的待处理数据;将待处理数据输入消息队列中;将消息队列中的待处理数据发送至消费者进行处理;利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
最后,本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (5)
1.一种多任务下数据处理的方法,其特征在于,所述方法包括:
获取生产者生产的待处理数据;
将所述待处理数据通过匀速器匀速地输入消息队列中;
将所述消息队列中的待处理数据发送至消费者进行处理;
利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;
根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程;
其中,所述利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数包括:
根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值;
根据消费者处理的待处理数据的个数,对所述第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数;
所述根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值包括:
根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行累加操作,获得第一数值;
所述根据消费者处理的待处理数据的个数,对所述第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数包括:
根据消费者处理的待处理数据的个数,对所述第一数值的当前数值进行减法操作,获得当前消息队列内的待处理数据总个数;
其中,所述根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程包括:
将所述当前消息队列内的待处理数据总个数与预设阈值作比较;
若大于预设阈值,则停止生产者生产数据,直到所述当前消息队列内的待处理数据总个数小于等于预设阈值。
2.根据权利要求1所述的方法,其特征在于,所述根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程包括:
将所述当前消息队列内的待处理数据总个数与预设阈值作比较;
若小于预设阈值,则生产者继续生产数据。
3.一种多任务下数据处理的装置,其特征在于,所述装置包括:
第一获取模块,用于获取生产者生产的待处理数据;
输入模块,用于将所述待处理数据通过匀速器匀速地输入消息队列中;
处理模块,用于将所述消息队列中的待处理数据发送至消费者进行处理;
第二获取模块,用于利用系统计数器计算生产者生产的待处理数据的个数和消费者处理的待处理数据的个数,得到当前消息队列内的待处理数据总个数;
确定生产数据进程模块,用于根据当前消息队列内的待处理数据总个数和预设阈值,确定生产者生产数据进程;
所述第二获取模块包括:获得第一数值单元,用于根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值;
当前待处理数据总个数获取单元,用于根据消费者处理的待处理数据的个数,对第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数;
所述根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行第一预设操作,获得第一数值包括:
根据生产者生产的待处理数据的个数,对系统计数器的当前数值进行累加操作,获得第一数值;
所述根据消费者处理的待处理数据的个数,对所述第一数值的当前数值进行第二预设操作,获得当前消息队列内的待处理数据总个数包括:
根据消费者处理的待处理数据的个数,对所述第一数值的当前数值进行减法操作,获得当前消息队列内的待处理数据总个数;
所述确定生产数据进程模块,还用于将所述当前消息队列内的待处理数据总个数与预设阈值作比较,若大于预设阈值,则停止生产者生产数据,直到所述当前消息队列内的待处理数据总个数小于等于预设阈值。
4.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1或2所述多任务下数据处理的方法的步骤。
5.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1或2所述多任务下数据处理的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010329777.8A CN111506430B (zh) | 2020-04-23 | 2020-04-23 | 多任务下数据处理的方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010329777.8A CN111506430B (zh) | 2020-04-23 | 2020-04-23 | 多任务下数据处理的方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111506430A CN111506430A (zh) | 2020-08-07 |
CN111506430B true CN111506430B (zh) | 2024-04-19 |
Family
ID=71864297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010329777.8A Active CN111506430B (zh) | 2020-04-23 | 2020-04-23 | 多任务下数据处理的方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111506430B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113055480B (zh) * | 2021-03-17 | 2023-05-23 | 网宿科技股份有限公司 | 一种调度方法及装置 |
CN113360463A (zh) * | 2021-04-15 | 2021-09-07 | 网宿科技股份有限公司 | 数据处理方法、装置、服务器和可读存储介质 |
CN113326150A (zh) * | 2021-05-31 | 2021-08-31 | 中国工商银行股份有限公司 | 一种联机小批量消息处理方法和装置 |
CN113703998A (zh) * | 2021-08-25 | 2021-11-26 | 深圳市慧鲤科技有限公司 | 图像转换方法、装置、电子设备及计算机可读存储介质 |
US11528232B1 (en) | 2021-08-27 | 2022-12-13 | Hong Kong Applied Science and Technology Research Institute Company Limited | Apparatus and method for handling real-time tasks with diverse size based on message queue |
CN115344403A (zh) * | 2022-07-27 | 2022-11-15 | 广州方舟信息科技有限公司 | 一种基于分布式消息队列的用户权益数据处理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104428754A (zh) * | 2012-08-02 | 2015-03-18 | 艾玛迪斯简易股份公司 | 在分布式并行环境中对异步消息排序的方法、系统和计算机程序产品 |
CN104468330A (zh) * | 2014-12-03 | 2015-03-25 | 北京国双科技有限公司 | 分布式消息队列系统的数据处理方法和装置 |
CN109344172A (zh) * | 2018-08-31 | 2019-02-15 | 深圳市元征科技股份有限公司 | 一种高并发数据处理方法、装置及客户端服务器 |
CN110389957A (zh) * | 2019-07-24 | 2019-10-29 | 深圳市盟天科技有限公司 | 基于分库分表的文件生成方法、装置、存储介质及设备 |
CN110851248A (zh) * | 2019-10-12 | 2020-02-28 | 中国平安财产保险股份有限公司 | 异步任务数据处理方法、装置及计算机可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060048162A1 (en) * | 2004-08-26 | 2006-03-02 | Bull Hn Information Systems Inc. | Method for implementing a multiprocessor message queue without use of mutex gate objects |
US20160371122A1 (en) * | 2015-06-19 | 2016-12-22 | Hewlett Packard Enterprise Development Lp | File processing workflow management |
US9998418B2 (en) * | 2015-11-11 | 2018-06-12 | International Business Machines Corporation | Intelligent message queue management |
US20190129771A1 (en) * | 2017-10-26 | 2019-05-02 | Nokia Solutions And Networks Oy | Balanced message distribution in distributed message handling systems |
-
2020
- 2020-04-23 CN CN202010329777.8A patent/CN111506430B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104428754A (zh) * | 2012-08-02 | 2015-03-18 | 艾玛迪斯简易股份公司 | 在分布式并行环境中对异步消息排序的方法、系统和计算机程序产品 |
CN104468330A (zh) * | 2014-12-03 | 2015-03-25 | 北京国双科技有限公司 | 分布式消息队列系统的数据处理方法和装置 |
CN109344172A (zh) * | 2018-08-31 | 2019-02-15 | 深圳市元征科技股份有限公司 | 一种高并发数据处理方法、装置及客户端服务器 |
CN110389957A (zh) * | 2019-07-24 | 2019-10-29 | 深圳市盟天科技有限公司 | 基于分库分表的文件生成方法、装置、存储介质及设备 |
CN110851248A (zh) * | 2019-10-12 | 2020-02-28 | 中国平安财产保险股份有限公司 | 异步任务数据处理方法、装置及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
刘峰 ; 鄂海红 ; .基于海量数据的消息队列的性能对比与优化方案.软件.2016,(10),全文. * |
邰宇 ; .基于海量数据消息队列的性能比较及其优化.科技传播.2018,(03),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111506430A (zh) | 2020-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111506430B (zh) | 多任务下数据处理的方法、装置及电子设备 | |
CN113138860B (zh) | 消息队列的管理方法及装置 | |
CN107589990B (zh) | 一种基于线程池的数据通讯的方法及系统 | |
CN111221643A (zh) | 任务处理方法和任务处理装置 | |
CN110781180B (zh) | 一种数据筛选方法和数据筛选装置 | |
CN103064736A (zh) | 任务处理装置及方法 | |
CN114911598A (zh) | 任务调度方法、装置、设备以及存储介质 | |
CN110096339B (zh) | 一种基于系统负载实现的扩缩容配置推荐系统及方法 | |
CN115150471A (zh) | 数据处理方法、装置、设备、存储介质及程序产品 | |
CN112860401B (zh) | 任务调度方法、装置、电子设备和存储介质 | |
CN114153635A (zh) | 消息处理方法、装置、存储介质及计算机设备 | |
CN111475312B (zh) | 基于实时操作系统的消息驱动方法和装置 | |
CN101349975B (zh) | 一种在嵌入式操作系统上实现中断底半部机制的方法及装置 | |
CN103577299A (zh) | 监控方法和装置、数据处理方法和装置及分布式计算系统 | |
CN113971083A (zh) | 任务调度方法、装置、设备、介质及产品 | |
CN114546926A (zh) | 核心簇同步、控制方法、数据处理方法、核心、设备、介质 | |
CN115002126A (zh) | 一种基于边缘服务器集群的服务调度方法及装置 | |
CN113971082A (zh) | 任务调度方法、装置、设备、介质及产品 | |
CN112988417A (zh) | 消息处理方法、装置、电子设备及计算机可读介质 | |
CN114598705B (zh) | 消息负载均衡方法、装置、设备和介质 | |
CN110380991A (zh) | 一种IOCP机制及基于eFPGA和IOCP的物联网通信加速系统 | |
CN116719632B (zh) | 任务调度方法、装置、设备以及介质 | |
CN111726418B (zh) | 云资源的调配方法、装置、终端设备及存储介质 | |
CN111061562B (zh) | 一种软件协同打包方法、系统、终端及存储介质 | |
CN111160546B (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 |