CN113268317B - 一种任务处理方法、装置及电子设备 - Google Patents
一种任务处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN113268317B CN113268317B CN202010096919.0A CN202010096919A CN113268317B CN 113268317 B CN113268317 B CN 113268317B CN 202010096919 A CN202010096919 A CN 202010096919A CN 113268317 B CN113268317 B CN 113268317B
- Authority
- CN
- China
- Prior art keywords
- task
- instance
- asynchronous
- node
- acquiring
- 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
- 238000003672 processing method Methods 0.000 title abstract description 13
- 239000012634 fragment Substances 0.000 claims abstract description 96
- 238000012546 transfer Methods 0.000 claims abstract description 55
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000012545 processing Methods 0.000 claims abstract description 29
- 239000000463 material Substances 0.000 claims abstract description 23
- 238000012544 monitoring process Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims 1
- 238000005192 partition Methods 0.000 abstract description 13
- 238000004364 calculation method Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 230000011218 segmentation Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000002699 waste material Substances 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
-
- 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)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种任务处理方法、装置及电子设备。该方法包括:获取客户端根据目标数据集的n个分片数据集创建的异步任务并存储;从存储的异步任务中获取当前可执行的目标异步任务;通过异步任务集群中的实例集将目标异步任务中包含的m个任务分片分配给实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集;通过实例集并发执行每个任务分片;每执行完成一个任务分片,将已执行完成的任务分片对应的分片数据集删除;若执行任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片,解决了现有技术中任务重复执行的技术问题,提高了任务执行效率。
Description
技术领域
本发明涉及软件技术领域,特别涉及一种任务处理方法、装置及电子设备。
背景技术
互联网应用中,存在大量异步计算场景,比如广告投放中的批量买词、调价等操作,在大数据量下无法同步计算,需要分布式异步计算来对大数据量的计算任务进行快速处理。
现有技术中,对于大数据量的计算任务的处理,应用比较广泛的分布式任务调度方法全都是基于定时任务进行触发,任务严格按照定时触发器配置并发执行,执行任务的实例发生故障,故障实例中的任务失效转移,由新的实例重新执行故障实例对应的整个任务,会对故障实例已执行的部分任务重复执行,造成计算资源的大量浪费,尤其是在任务分配粒度较大的情况下,任务执行效率大大降低。
发明内容
本发明实施例提供一种任务处理方法、装置及电子设备,用于解决现有技术中分布式异步计算中任务分片失效转移后任务重复执行的技术问题,提高任务执行效率。
第一方面,本发明实施例提供一种任务处理方法,应用于异步任务集群,所述方法包括:
获取客户端提交的异步任务并存储,其中,所述异步任务由所述客户端根据目标数据集的n个分片数据集创建,n≥1;
从存储的所述异步任务中获取当前可执行的目标异步任务;
通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集,m≥1;
通过所述实例集中的所述各任务实例并发执行每个任务分片;
每执行完成一个任务分片,将已执行完成的任务分片对应的分片数据集删除;
若执行所述任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片。
可选的,所述通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,包括:
创建用于执行所述目标异步任务的实例集,所述实例集中包含主实例和任务实例;
通过所述主实例对所述目标异步任务进行任务分配,将所述目标异步任务中包含的m个任务分片平均分配给所述实例集中的各任务实例。
可选的,所述创建用于执行所述目标异步任务的实例集,包括:
为所述目标异步任务建立任务节点;
所述异步任务集群中的所有实例监听所述任务节点,在监听到所述任务节点建立后,根据所述任务节点的应用配置,在所述任务节点下选择性注册实例节点;
所述任务节点下注册的所有实例节点对应的实例形成所述实例集。
可选的,在所述任务节点下选择性注册实例节点之后,所述方法还包括:
获取所述任务节点的节点锁,检测所述任务节点下是否存在主实例节点;
若不存在所述主实例节点,在所述任务节点下创建主实例节点并存储主实例的实例名称;
若存在所述主实例节点,等待所述主实例完成任务分片。
可选的,获取客户端提交的异步任务并存储,包括:
根据客户端提交的任务标识获取对应的异步任务;
将所述异步任务按照任务执行的顺序存储至第一数据库的数据库队列中;
所述从存储的所述异步任务中获取当前可执行的目标异步任务,包括:
从所述数据库队列中获取无前置任务或者前置任务已完成的异步任务作为当前可执行的所述目标异步任务。
可选的,所述从存储的所述异步任务中获取当前可执行的目标异步任务,包括:
根据所述异步任务集群的并发配置信息从所述数据库队列中获取所述目标异步任务;
其中,所述并发配置信息包括如下至少一项信息:可并发执行的最大任务数、单账户最大可并发执行的任务数及每个类型的任务最大可并发执行的任务数。
可选的,所述根据客户端提交的任务标识获取对应的异步任务,包括:
从分布式高性能消息队列kafka中消费所述客户端提交的任务标识;
根据所述任务标识从所述客户端对应的第二数据库中获取所述异步任务。
可选的,所述方法还包括:
当实例集中的第一任务实例执行完所述主实例分配的任务分片后,检测失效转移节点下是否有失效转移的任务分片;
若有,获取失效转移节点锁,将所述失效转移节点下的第一任务分片删除,并为所述第一任务分片创建失效任务节点,并将所述第一任务实例的实例信息写入所述失效任务节点中,由所述第一任务实例继续执行所述第一任务分片;
释放所述失效转移节点锁,以供第二实例获取并继续执行所述失效转移节点下的第二任务分片。
第二方面,本发明实施例提供一种任务处理装置,应用于异步任务集群,所述装置包括:
第一获取单元,用于获取客户端提交的异步任务并存储,其中,所述异步任务由所述客户端根据目标数据集的n个分片数据集创建,n≥1;
第二获取单元,用于从存储的所述异步任务中获取当前可执行的目标异步任务;
分配单元,用于通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集,m≥1;
执行单元,用于通过所述实例集中的所述各任务实例并发执行每个任务分片;每执行完成一个任务分片,将已执行完成的任务分片对应的分片数据集删除;若执行所述任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片。
可选的,所述分配单元用于:
创建用于执行所述目标异步任务的实例集,所述实例集中包含主实例和任务实例;
通过所述主实例对所述目标异步任务进行任务分配,将所述目标异步任务中包含的m个任务分片平均分配给所述实例集中的各任务实例。
可选的,所述分配单元还用于:
为所述目标异步任务建立任务节点;
所述异步任务集群中的所有实例监听所述任务节点,在监听到所述任务节点建立后,根据所述任务节点的应用配置,在所述任务节点下选择性注册实例节点;
所述任务节点下注册的所有实例节点对应的实例形成所述实例集。
可选的,所述分配单元还用于:
在所述任务节点下选择性注册实例节点之后,获取所述任务节点的节点锁,检测所述任务节点下是否存在主实例节点;
若不存在所述主实例节点,在所述任务节点下创建主实例节点并存储主实例的实例名称;
若存在所述主实例节点,等待所述主实例完成任务分片。
可选的,所述第一获取单元用于:根据客户端提交的任务标识获取对应的异步任务;将所述异步任务按照任务执行的顺序存储至第一数据库的数据库队列中;
所述第二获取单元用于:从所述数据库队列中获取无前置任务或者前置任务已完成的异步任务作为当前可执行的所述目标异步任务。
可选的,所述第二获取单元还用于:
根据所述异步任务集群的并发配置信息从所述数据库队列中获取所述目标异步任务;
其中,所述并发配置信息包括如下至少一项信息:可并发执行的最大任务数、单账户最大可并发执行的任务数及每个类型的任务最大可并发执行的任务数。
可选的,所述第一获取单元还用于:
从分布式高性能消息队列kafka中消费所述客户端提交的任务标识;
根据所述任务标识从所述客户端对应的第二数据库中获取所述异步任务。
可选的,所述装置还包括失效转移单元,用于:
当实例集中的第一任务实例执行完所述主实例分配的任务分片后,检测失效转移节点下是否有失效转移的任务分片;
若有,获取失效转移节点锁,将所述失效转移节点下的第一任务分片删除,并为所述第一任务分片创建失效任务节点,并将所述第一任务实例的实例信息写入所述失效任务节点中,由所述第一任务实例继续执行所述第一任务分片;
释放所述失效转移节点锁,以供第二实例获取并继续执行所述失效转移节点下的第二任务分片。
本申请实施例中的上述一个或多个技术方案,至少具有如下技术效果:
本申请实施例提供一种任务处理方法,应用于异步任务集群,该方法包括获取客户端提交的异步任务并存储,其中,该异步任务由所述客户端根据目标数据集的n个分片数据集创建,n≥1;从存储的异步任务中获取当前可执行的目标异步任务,实现了事件触发的异步任务处理;通过异步任务集群中的实例集进行任务分配,将目标异步任务中包含的m个任务分片分配给实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集,m≥1;通过实例集中的各任务实例并发执行每个任务分片,实现了分布式的异步任务计算;每执行完成一个所述分片数据集对应的任务,将已执行完成的任务对应的分片数据集删除;若执行所述任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片,由于已执行完成的任务分片对应物料数据即分片数据集已删除,该任务重新执行时,已执行过的任务物料数据已删除无法获取,进而不能重复执行已执行过的任务,解决了现有技术中分布式异步计算中实例故障后任务重复执行的技术问题,提高了任务执行效率。
附图说明
图1为本申请实施例提供的一种任务处理方法的流程示意图;
图2为本申请实施例提供的一种任务处理装置的框架示意图;
图3为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
在本申请实施例提供的技术方案中,提供一种任务处理方法,在分布式异步任务处理时,对已处理完成的任务删除该任务的物料信息,避免重复执行,以解决现有技术中分布式异步计算中实例故障后任务重复执行的技术问题,提高任务执行效率。
下面结合附图对本申请实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。
实施例
本申请实施例提供一种任务处理方法,应用于异步任务集群,该异步任务集群为同一应用appId节点下的所有服务器形成的一个集群,可共同处理异步任务。实际应用中,经常会遇到大批量的任务处理场景,对于大批量的任务处理客户端可以向异步任务集群提交待处理的任务,通过异步任务集群快速进行任务处理。
客户端在向异步任务集群提交任务之前,先对待处理的目标数据集进行数据分片,获得n个分片数据集并存储。例如,假设待处理目标是将符合条件的关键词的价格提高10%,符合条件的关键词总量为2百万个,那么这2百万个关键词为一个目标数据集,将该目标数据集分成100个分片数据集。客户端清楚待处理目标数据集内部的业务逻辑,通过客户端将目标数据集划分成块,能够有效的保证数据划分的正确性。
客户端在存储分片数据集时,可以将各个分片数据集存储于Redis(RemoteDictionary Server,远程字典服务),由于Redis支持主从同步,既方便客户端存储,也方便异步任务集群快速获取分片数据。在划分分片数据集之后,客户端还根据各个分片数据集创建异步任务并存储,以根据异步任务进行任务调度,任务执行时再去获取需要处理的分片数据集,从而提高任务调度的调度效率。
针对客户端提交的任务,异步任务集群执行一种任务处理方法,请参考图1,该方法包括如下步骤S11~S16:
S11、获取客户端提交的异步任务并存储,其中,所述异步任务由所述客户端根据目标数据集的n个分片数据集创建,n≥1。
其中,每个分片数据集对应的任务可以是异步任务的最小任务单元即一个任务分片,可以作为异步任务的分配依据。
S12、从存储的所述异步任务中获取当前可执行的目标异步任务。
其中,目标异步任务为无前置任务或前置任务已完成的任务。客户端提交任务后,异步任务集群从提交的任务中获得可执行任务执行,实现了基于事件驱动的异步任务处理。
S13、通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集,m≥1。
其中,异步任务集群包含多个服务器,一个服务器提供一个实例进行任务处理,多个实例形成一个实例集。对目标异步任务进行任务分配又称任务分片,可以根据实例集中包含的实例数将目标异步任务包含的m个任务分片分配给各实例,可以采取均匀分片或根据各个实例的执行能力针对性分片,每个实例都会分配到一个或多个任务分片,使得实例集中的各个实例能够同时执行目标异步任务的业务逻辑,对其各个任务分片进行并发执行,实现目标异步任务的分布式计算。
S14、通过所述实例集中的各任务实例并发执行每个任务分片。
其中,实例集中每个实例都可以采用多线程方式执行任务分片。每个实例根据其所要执行的任务分片,获取每个分片任务的物料数据即对应的分片数据集,并对获取到的分片数据集执行任务处理即执行每个任务分片。
S15、每执行完成一个所述分片数据集对应的任务分片,将已执行完成的任务分片对应的所述分片数据集删除。
其中,一个任务分片为任务执行过程中的最小任务单元,一个任务分片的物料数据对应一个分片数据集。例如:假设实例集中每个实例被分配到任务是:为10关键词集合中的每个关键词进行改价,那么每执行完一个关键词集合中的所有关键词改价之后,将已执行完成的任务分片对应的原关键词集合删除,即删除已执行完成的任务分片对应的物料数据,由于其物料数据已删除,为此无法再重复执行其任务分片。
S16、若执行所述任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片。
其中,实例发生故障是指实例对应的服务器宕机、被下线等异常情况。空闲实例是指实例集中无当前任务执行的实例。一旦实例发生故障,当前正在执行的任务分片及其未执行的任务分片将无法执行完成,为了完成所有任务分片的任务处理,主实例将未执行完成的任务分片进行失效转移,通过空闲实例来继续执行该失效转移的任务分片。由于已执行完成的任务分片对应的物料数据已删除,所以重新执行任务分片时只能获取到未执行完成的任务分片对应的分片数据集,据此执行剩余的任务分片,实现了任务的断点续传。
在具体实施过程中,S11可以从传递消息的中间件获取客户端提交的任务标识,或者,通过异步任务集群提供的接口接收客户端提交的任务标识;再根据客户端提交的任务标识获取对应的异步任务。
其中,传递消息的中间件可以是分布式高性能消息队列kafka。客户端完成数据分片之后,根据各个分片数据集创建异步任务,将异步任务存储于数据库,将异步任务的任务标识即任务ID发送至分布式高性能消息队列kafka。异步任务集群从分布式高性能消息队列kafka中消费客户端提交的任务标识;根据消费获得的任务标识从客户端对应的第二数据库中获取异步任务。将kafka作为中间件,通过消费kafka消息来获取异步任务,能够有效的保证任务提交及消费的有序性。
S11对于获取到的异步任务,按照任务执行的顺序存储至第一数据库的数据库队列中。第一数据库为异步任务集群存储数据的数据库,与客户端存储异步任务的数据不相关。若S11从kafka中消费获得任务标识,由于kafka中的任务标识即可包含任务执行的先后顺序,S11可以依据从kafka中获得任务标识的先后顺序作为任务执行的顺序,将对应的异步任务有序的在数据库队列中进行排队。若任务标识是从异步任务集群提供的接口中获得,S11可以将任务标识的提交顺序作为任务执行顺序,将对应的异步任务在数据库队列中进行排队。
基于S11获取并存储的异步任务,S12可以从所述数据库队列中获取无前置任务或者前置任务已完成的异步任务作为当前可执行的所述目标异步任务。由于数据库队列中异步任务已按照任务执行顺序排队,先出队列的任务无前置任务或者前置任务已执行,只需检测前置任务是否完成即可。在从存储的异步任务中获取当前可执行的目标异步任务时,可以根据异步任务集群的并发配置信息从数据库队列中获取目标异步任务,以保证异步任务有序的并发执行。其中,异步任务集群的并发配置信息包括如下至少一项信息:可并发执行的最大任务数、单账户最大可并发执行的任务数及每个类型的任务最大可并发执行的任务数。例如:若异步任务集群可并发执行的最大任务数为100,可从数据库队列中获取最大包含100个任务数的目标异步任务。
在获得目标异步任务之后,执行S13和S14,包括:
①、创建用于执行目标异步任务的实例集,实例集中包含主实例和任务实例。该实例集也是一种异步任务集群。
具体的,异步任务集群可以将目标任务注册至Zookeeper,Zookeeper是一个为分布式应用提供一致性服务的软件,提供配置维护、域名服务、分布式同步以及同步服务等功能,由Zookeeper为目标异步任务创建任务节点,异步任务集群监听目标异步任务的节点变化,根据节点变化来创建实例集,并通过实例集来实现目标异步任务的并发执行。当然,任务节点也可以由异步任务集群来创建,本实例不做限定。
异步任务集群中的所有实例监听任务节点,在监听到任务节点建立后,根据监听到的任务节点的应用配置,在该任务节点下选择性注册实例节点。其中,任务节点的应用配置包括:任务类型、任务数、任务计算量等参数信息。每一个实例都有专属的服务类型,可根据应用配置选择在服务类型与任务类型一致、任务数和任务计算量与实例的服务能力相匹配的任务节点下注册实例节点,为该任务节点提供服务。目标异步任务的任务节点下注册的所有实例节点对应的实例形成任务处理的实例集。
各实例在任务节点下注册实例节点之后,参与选举leader实例即主实例:获取任务节点的节点锁,检测该任务节点下是否存在主实例节点;若不存在主实例节点,在任务节点下创建主实例节点并存储主实例的实例名称;若存在主实例节点,等待主实例完成任务分片。主实例选举完成后,主实例释放节点锁。其他实例获取节点锁之后,发现leader实例已选举完成,自动成为任务实例,等待leader实例完成任务分片。其中,节点锁为限制节点变化的工具,只有获取到了节点锁的实例才能对节点进行处理,未获取到节点锁的实例则等待节点锁的释放,以此可以节点变换有序,保证任务顺畅执行。
②、通过主实例对目标异步任务进行任务分片获得m个任务分片,并为每个任务分片配置任务实例。
例如:若当前实例集中有4台实例,目标数据在redis中有100个分片数据集,若一个分片数据集为一个任务分片,每台实例将被分配到100/4=25个任务分片;leader实例在任务节点下创建任务分片节点,每个任务分片节点下包含分配的实例信息、执行状态信息等。
③、通过任务实例根据i个分片数据集并发执行每个任务分片。
任务分片完成后,各个任务实例获取分配给自身的任务分片,并多线程执行分配给自身的任务分片。具体的,各个任务实例根据自身所要执行的任务分片,从任务节点下获取任务分片对应的参数信息,包括任务分片的物料数据的存储位置,根据其参数信息从redis中获取对应的i个分片数据集即物料数据,然后,对其物料数据执行相应的任务处理。例如:若某任务分片是对第100~199个关键词进行改价,执行该任务分片则获取第100~199个关键词并对第100~199个关键词进行改价。
在执行任务分片时,执行S15每执行完成一个分片数据集对应的任务分片,将已执行完成的任务分片对应的分片数据集删除。若任务分片的所有任务执行完成,将任务分片对应的所有分片数据集删除,并且将任务分片的执行状态修改为执行完成。
若任务分片执行过程中,任务实例发生故障,执行S16进行任务失效转移。若有任务实例(包括leader实例)发生宕机或下线,任务节点下对应的实例节点将自动被移除。收到实例节点被移除消息的其他实例,查询zookeeper得到分配给宕机实例的任务分片,在任务节点下创建失效转移节点,并将未执行完成的任务分片转移至失效转移节点下。其他实例在执行完分配给自身的任务分片后,会去检查失效转移节点下是否有失效转移的任务分片,如果有,则继续处理这些任务分片。
具体的,针对失效转移下的任务分片,当实例集中的第一任务实例即未发生故障的其他实例,执行完主实例分配的任务分片后,检测失效转移节点下是否有失效转移的任务分片。若有,获取失效转移节点锁,将失效转移节点下的第一任务分片删除,并为第一任务分片创建失效任务节点,并将第一任务实例的实例信息写入失效任务节点中,由第一任务实例继续执行第一任务分片。随后,释放失效转移节点锁,以供第二实例获取并继续执行失效转移节点下的第二任务分片。第一任务分片和第二任务分片可以是失效转移节点下的最小任务分片,也可以是失效转移节点下的最小任务单元。其中,删除实例节点以及创建失效转移节点均是在同一个任务节点下完成,以此保证节点数据的一致性。
若任务分片执行过程中,leader实例发生宕机或下线,任务节点下该实例对应的实例节点和leader节点下的实例节点都将自动被移除,异步任务集群中的其余实例收到leader节点和实例节点被移除的消息后,立即参与leader实例选举,保证目标异步任务执行过程中一直有leader实例存在,以完成目标异步任务的任务处理。
当所有任务分片执行完成后,由leader实例执行目标异步任务的后续操作,并将目标异步任务的执行状态修改为已完成,然后将目标异步任务从zookeeper上删除。异步任务集群的所有实例监听zookeeper上任务节点的变化,当收到任务删除的事件后,检查zookeeper中是否有任务的前置任务为当前已删除的任务,如果有,则该任务为已删除任务的后继任务,开始调度执行该后继任务。
第一方面,在上述实施例中,异步任务服务启动时,会根据目标异步任务的应用配置,创建相应任务节点并在任务节点下注册自身实例节点(临时节点,一个异步任务服务对应一个实例节点,服务宕机或重启,该临时节点将自动被移除),该任务节点下的所有实例形成一个实例集也即异步任务集群,共同处理提交的目标异步任务。
异步任务集群中各个实例通过监听任务节点变化感知其他服务器状态,当某服务宕机(对应的实例节点将自动被移除),进行leader选举(leader实例对应的服务宕机)和任务分片失效转移,其余存活实例会继续执行失效转移的任务分片,保证任务的正常执行。
当异步任务集群添加新的服务器(创建自身实例节点),该服务器将立即参与当前应用下所有任务的执行。未分片的任务,新实例会参与任务的分片及执行;已完成分片的任务,新实例监听失效转移的任务分片,随时等待执行分配的任务分片,直至任务正常执行完成。
第二方面,通过将任务ID提交至kafka消息队列,异步任务集群消费kafka消息来获取任务ID,以kafka作为消息中间件,保证消息的有序消费;同时,异步任务集群也向客户端提供提交任务接口,支持任务实时提交。异步任务集群将收到的异步任务有序的存储于数据库中,以数据库作为任务实时队列,保证任务不丢失;同时,异步任务集群根据服务的并发配置信息(任务并发配置包括同时可并发执行的最大任务数、单账户最大可并发执行的任务数、各个类型的任务最大可并发执行的任务数),可控的从数据库队列中获取最大并发执行的任务信息,从而保证任务有序/并发执行;任务并发配置仅限制了可并发执行的任务数,并不会导致任务丢失,任务的并发配置实现了任务限流,保证服务平稳运行的目标。
第三方面,通过实例集中的所有实例同时执行同一任务,首先为该任务选举一个leader实例,由leader实例进行任务分片,将各任务分片分配给各实例;其余实例即任务实例等待leader实例完成任务分片,然后各实例获取分配给自身的任务分片信息,多线程并发执行自己的任务分片。
第四方面,当某服务器被下线或宕机时即对应实例发生故障时,会将leader实例分配给故障实例的任务分片进行失效转移;各实例执行完分配给自身的任务分片后,检查是否有失效转移的任务分片,如果有,则获取失效转移的任务分片继续执行,避免任务执行的遗漏或错误。
第五方面,将异步任务的物料数据进行存储,已执行的物料数据会实时删除,以保证各任务分片在失效转移后继续执行时,已执行的物料数据不会被重复执行,实现了任务断点续传,提高了任务执行效率。
针对上述实施例提供一种任务处理方法,本申请实施例还对应提供一种任务处理装置,应用于异步任务集群,请参考图2,该装置包括:
第一获取单元21,用于获取客户端提交的异步任务并存储,其中,所述异步任务由所述客户端根据目标数据集的n个分片数据集创建,n≥1;
第二获取单元22,用于从存储的所述异步任务中获取当前可执行的目标异步任务;
分配单元23,用于通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集,m≥1;
执行单元24,用于通过所述实例集中的所述各任务实例并发执行每个任务分片;每执行完成一个任务分片,将已执行完成的任务分片对应的分片数据集删除;若执行所述任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片。
作为一种可选的实施方式,所述分配单元23用于:创建用于执行所述目标异步任务的实例集,所述实例集中包含主实例和任务实例;通过所述主实例对所述目标异步任务进行任务分配,将所述目标异步任务中包含的m个任务分片平均分配给所述实例集中的各任务实例。
作为一种可选的实施方式,所述分配单元23还用于:为所述目标异步任务建立任务节点;所述异步任务集群中的所有实例监听所述任务节点,在监听到所述任务节点建立后,根据所述任务节点的应用配置,在所述任务节点下选择性注册实例节点;所述任务节点下注册的所有实例节点对应的实例形成所述实例集。
作为一种可选的实施方式,所述分配单元23还用于:在所述任务节点下选择性注册实例节点之后,获取所述任务节点的节点锁,检测所述任务节点下是否存在主实例节点;若不存在所述主实例节点,在所述任务节点下创建主实例节点并存储主实例的实例名称;若存在所述主实例节点,等待所述主实例完成任务分片。
作为一种可选的实施方式,所述第一获取单元21用于:根据客户端提交的任务标识获取对应的异步任务;将所述异步任务按照任务执行的顺序存储至第一数据库的数据库队列中;
所述第二获取单元22用于:从所述数据库队列中获取无前置任务或者前置任务已完成的异步任务作为当前可执行的所述目标异步任务。
作为一种可选的实施方式,所述第二获取单元22还用于:根据所述异步任务集群的并发配置信息从所述数据库队列中获取所述目标异步任务;其中,所述并发配置信息包括如下至少一项信息:可并发执行的最大任务数、单账户最大可并发执行的任务数及每个类型的任务最大可并发执行的任务数。
作为一种可选的实施方式,所述第一获取单元21还用于:
从分布式高性能消息队列kafka中消费所述客户端提交的任务标识;根据所述任务标识从所述客户端对应的第二数据库中获取所述异步任务。
作为一种可选的实施方式,所述装置还包括失效转移单元25,失效转移单元25用于:当实例集中的第一任务实例执行完所述主实例分配的任务分片后,检测失效转移节点下是否有失效转移的任务分片;若有,获取失效转移节点锁,将所述失效转移节点下的第一任务分片删除,并为所述第一任务分片创建失效任务节点,并将所述第一任务实例的实例信息写入所述失效任务节点中,由所述第一任务实例继续执行所述第一任务分片;释放所述失效转移节点锁,以供第二实例获取并继续执行所述失效转移节点下的第二任务分片。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图3是根据一示例性实施例示出的一种用于实现任务处理方法的电子设备800的框图。例如,电子设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图3,电子设备800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/展现(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制电子设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理部件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在电子设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为电子设备800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为电子设备800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述电子设备800和用户之间的提供一个展现接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为展现和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当电子设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于展现音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为电子设备800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为电子设备800的显示器和小键盘,传感器组件814还可以检测电子设备800或电子设备800一个组件的位置改变,用户与电子设备800接触的存在或不存在,电子设备800方位或加速/减速和电子设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于电子设备800和其他设备之间有线或无线方式的通信。电子设备800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由电子设备800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种任务处理方法,所述方法包括:获取客户端提交的异步任务并存储,其中,所述异步任务由所述客户端根据目标数据集的n个分片数据集创建,n≥1;从存储的所述异步任务中获取当前可执行的目标异步任务;通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集,m≥1;通过所述实例集中的所述各任务实例并发执行每个任务分片;每执行完成一个任务分片,将已执行完成的任务分片对应的分片数据集删除;若执行所述任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种任务处理方法,其特征在于,应用于异步任务集群,所述方法包括:
获取客户端提交的异步任务并存储,其中,所述异步任务由所述客户端根据目标数据集的n个分片数据集创建,n≥1;
从存储的所述异步任务中获取当前可执行的目标异步任务;
通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集,m≥1;
通过所述实例集中的所述各任务实例并发执行每个任务分片;
每执行完成一个任务分片,将已执行完成的任务分片对应的分片数据集删除;
若执行所述任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片。
2.如权利要求1所述的方法,其特征在于,所述通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,包括:
创建用于执行所述目标异步任务的实例集,所述实例集中包含主实例和任务实例;
通过所述主实例对所述目标异步任务进行任务分配,将所述目标异步任务中包含的m个任务分片平均分配给所述实例集中的各任务实例。
3.如权利要求2所述方法,其特征在于,所述创建用于执行所述目标异步任务的实例集,包括:
为所述目标异步任务建立任务节点;
所述异步任务集群中的所有实例监听所述任务节点,在监听到所述任务节点建立后,根据所述任务节点的应用配置,在所述任务节点下选择性注册实例节点;
所述任务节点下注册的所有实例节点对应的实例形成所述实例集。
4.如权利要求3所述的方法,其特征在于,在所述任务节点下选择性注册实例节点之后,所述方法还包括:
获取所述任务节点的节点锁,检测所述任务节点下是否存在主实例节点;
若不存在所述主实例节点,在所述任务节点下创建主实例节点并存储主实例的实例名称;
若存在所述主实例节点,等待所述主实例完成任务分片。
5.如权利要求1所述的方法,其特征在于,获取客户端提交的异步任务并存储,包括:
根据客户端提交的任务标识获取对应的异步任务;
将所述异步任务按照任务执行的顺序存储至第一数据库的数据库队列中;
所述从存储的所述异步任务中获取当前可执行的目标异步任务,包括:
从所述数据库队列中获取无前置任务或者前置任务已完成的异步任务作为当前可执行的所述目标异步任务。
6.如权利要求5所述的方法,其特征在于,所述从存储的所述异步任务中获取当前可执行的目标异步任务,包括:
根据所述异步任务集群的并发配置信息从所述数据库队列中获取所述目标异步任务;
其中,所述并发配置信息包括如下至少一项信息:可并发执行的最大任务数、单账户最大可并发执行的任务数及每个类型的任务最大可并发执行的任务数。
7.如权利要求5所述的方法,其特征在于,所述根据客户端提交的任务标识获取对应的异步任务,包括:
从分布式高性能消息队列kafka中消费所述客户端提交的任务标识;
根据所述任务标识从所述客户端对应的第二数据库中获取所述异步任务。
8.如权利要求1~6任一所述的方法,其特征在于,所述方法还包括:
当实例集中的第一任务实例执行完所述主实例分配的任务分片后,检测失效转移节点下是否有失效转移的任务分片;
若有,获取失效转移节点锁,将所述失效转移节点下的第一任务分片删除,并为所述第一任务分片创建失效任务节点,并将所述第一任务实例的实例信息写入所述失效任务节点中,由所述第一任务实例继续执行所述第一任务分片;
释放所述失效转移节点锁,以供第二实例获取并继续执行所述失效转移节点下的第二任务分片。
9.一种任务处理装置,其特征在于,应用于异步任务集群,所述装置包括:
第一获取单元,用于获取客户端提交的异步任务并存储,其中,所述异步任务由所述客户端根据目标数据集的n个分片数据集创建,n≥1;
第二获取单元,用于从存储的所述异步任务中获取当前可执行的目标异步任务;
分配单元,用于通过异步任务集群中的实例集进行任务分配,将所述目标异步任务中包含的m个任务分片分配给所述实例集中的各任务实例,一个任务分片的物料数据对应一个所述分片数据集,m≥1;
执行单元,用于通过所述实例集中的所述各任务实例并发执行每个任务分片;每执行完成一个任务分片,将已执行完成的任务分片对应的分片数据集删除;若执行所述任务分片的实例发生故障,将发生故障的实例未执行完成的任务分片进行失效转移,等待空闲实例执行失效转移的任务分片。
10.如权利要求9所述的装置,其特征在于,所述分配单元用于:
创建用于执行所述目标异步任务的实例集,所述实例集中包含主实例和任务实例;
通过所述主实例对所述目标异步任务进行任务分配,将所述目标异步任务中包含的m个任务分片平均分配给所述实例集中的各任务实例。
11.如权利要求10所述装置,其特征在于,所述分配单元还用于:
为所述目标异步任务建立任务节点;
所述异步任务集群中的所有实例监听所述任务节点,在监听到所述任务节点建立后,根据所述任务节点的应用配置,在所述任务节点下选择性注册实例节点;
所述任务节点下注册的所有实例节点对应的实例形成所述实例集。
12.如权利要求11所述的装置,其特征在于,所述分配单元还用于:
在所述任务节点下选择性注册实例节点之后,获取所述任务节点的节点锁,检测所述任务节点下是否存在主实例节点;
若不存在所述主实例节点,在所述任务节点下创建主实例节点并存储主实例的实例名称;
若存在所述主实例节点,等待所述主实例完成任务分片。
13.如权利要求9所述的装置,其特征在于,所述第一获取单元用于:根据客户端提交的任务标识获取对应的异步任务;将所述异步任务按照任务执行的顺序存储至第一数据库的数据库队列中;
所述第二获取单元用于:从所述数据库队列中获取无前置任务或者前置任务已完成的异步任务作为当前可执行的所述目标异步任务。
14.如权利要求13所述的装置,其特征在于,所述第二获取单元还用于:
根据所述异步任务集群的并发配置信息从所述数据库队列中获取所述目标异步任务;
其中,所述并发配置信息包括如下至少一项信息:可并发执行的最大任务数、单账户最大可并发执行的任务数及每个类型的任务最大可并发执行的任务数。
15.如权利要求13所述的装置,其特征在于,所述第一获取单元还用于:
从分布式高性能消息队列kafka中消费所述客户端提交的任务标识;
根据所述任务标识从所述客户端对应的第二数据库中获取所述异步任务。
16.如权利要求9~14任一所述的装置,其特征在于,所述装置还包括失效转移单元,用于:
当实例集中的第一任务实例执行完所述主实例分配的任务分片后,检测失效转移节点下是否有失效转移的任务分片;
若有,获取失效转移节点锁,将所述失效转移节点下的第一任务分片删除,并为所述第一任务分片创建失效任务节点,并将所述第一任务实例的实例信息写入所述失效任务节点中,由所述第一任务实例继续执行所述第一任务分片;
释放所述失效转移节点锁,以供第二实例获取并继续执行所述失效转移节点下的第二任务分片。
17.一种电子设备,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上的程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上的程序所包含的用于进行如权利要求1~8任一所述方法对应的操作指令。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1~8任一所述方法对应步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010096919.0A CN113268317B (zh) | 2020-02-17 | 2020-02-17 | 一种任务处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010096919.0A CN113268317B (zh) | 2020-02-17 | 2020-02-17 | 一种任务处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113268317A CN113268317A (zh) | 2021-08-17 |
CN113268317B true CN113268317B (zh) | 2023-10-31 |
Family
ID=77227637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010096919.0A Active CN113268317B (zh) | 2020-02-17 | 2020-02-17 | 一种任务处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113268317B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116541419A (zh) * | 2023-07-06 | 2023-08-04 | 美云智数科技有限公司 | 数据导入导出方法、装置、电子设备及可读存储介质 |
CN118394531B (zh) * | 2024-06-27 | 2024-09-03 | 上海甄零科技有限公司 | 一种异步程序处理方法、系统及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874437A (zh) * | 2017-02-04 | 2017-06-20 | 中国人民大学 | 面向数据库一体机的内存数据仓库行列存储转换实现方法 |
CN108833131A (zh) * | 2018-04-25 | 2018-11-16 | 北京百度网讯科技有限公司 | 分布式数据库云服务的系统、方法、设备和计算机存储介质 |
US10275326B1 (en) * | 2014-10-31 | 2019-04-30 | Amazon Technologies, Inc. | Distributed computing system failure detection |
CN110673933A (zh) * | 2019-08-15 | 2020-01-10 | 平安普惠企业管理有限公司 | 基于ZooKeeper的分布式异步队列实现方法、装置、设备及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140053157A1 (en) * | 2012-08-16 | 2014-02-20 | Microsoft Corporation | Asynchronous execution flow |
-
2020
- 2020-02-17 CN CN202010096919.0A patent/CN113268317B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10275326B1 (en) * | 2014-10-31 | 2019-04-30 | Amazon Technologies, Inc. | Distributed computing system failure detection |
CN106874437A (zh) * | 2017-02-04 | 2017-06-20 | 中国人民大学 | 面向数据库一体机的内存数据仓库行列存储转换实现方法 |
CN108833131A (zh) * | 2018-04-25 | 2018-11-16 | 北京百度网讯科技有限公司 | 分布式数据库云服务的系统、方法、设备和计算机存储介质 |
CN110673933A (zh) * | 2019-08-15 | 2020-01-10 | 平安普惠企业管理有限公司 | 基于ZooKeeper的分布式异步队列实现方法、装置、设备及介质 |
Non-Patent Citations (2)
Title |
---|
基于Zookeeper的GIS集群实现;苟丽美;张锋叶;林国华;;计算机工程与设计(09);全文 * |
基于单元集群的MapReduce中节点失效的改进;张乐;;微型机与应用(16);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113268317A (zh) | 2021-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111950988B (zh) | 分布式工作流调度方法、装置、存储介质及电子设备 | |
WO2017166713A1 (zh) | 服务请求处理方法及装置 | |
US9170842B2 (en) | Information processing terminal and resource release method | |
EP3142304B1 (en) | Synchronization method for notification message of electronic device, server and electronic device | |
US10454795B1 (en) | Intermediate batch service for serverless computing environment metrics | |
CN113268317B (zh) | 一种任务处理方法、装置及电子设备 | |
CN112784136B (zh) | 数据查询方法、装置及电子设备 | |
CN114138439A (zh) | 任务调度方法及装置、电子设备和存储介质 | |
WO2022041879A1 (zh) | 通知触发消息的处理方法和装置 | |
CN114153582A (zh) | 资源调度方法及装置、电子设备和存储介质 | |
CN111241134B (zh) | 一种数据处理方法及装置 | |
CN115328741A (zh) | 一种异常处理方法、装置、设备和存储介质 | |
CN105373563B (zh) | 数据库切换方法及装置 | |
US10402370B2 (en) | Information processing method and electronic apparatus | |
CN106550021B (zh) | 推送消息的推送方法及装置 | |
CN110795314B (zh) | 一种检测慢节点的方法、装置及计算机可读存储介质 | |
CN112291216A (zh) | 通信方法、装置和电子设备 | |
CN113360254A (zh) | 任务调度方法及系统 | |
CN116048757A (zh) | 任务处理方法、装置、电子设备和存储介质 | |
CN116841713A (zh) | 任务扫描方法、装置、电子设备以及存储介质 | |
CN110908814A (zh) | 消息处理方法、装置、电子设备及存储介质 | |
CN115658745A (zh) | 数据处理方法、装置、计算机设备和计算机可读存储介质 | |
CN115834483A (zh) | 基于集群的流量控制方法、装置、设备及存储介质 | |
CN112799863B (zh) | 用于输出信息的方法和装置 | |
CN116244358A (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 |