CN111737005A - 任务处理方法、装置、计算机设备和存储介质 - Google Patents
任务处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN111737005A CN111737005A CN202010621795.3A CN202010621795A CN111737005A CN 111737005 A CN111737005 A CN 111737005A CN 202010621795 A CN202010621795 A CN 202010621795A CN 111737005 A CN111737005 A CN 111737005A
- Authority
- CN
- China
- Prior art keywords
- task
- newly added
- processing
- code
- score
- 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
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
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
本申请涉及分布式部署领域,提供任务处理方法、装置、计算机设备和存储介质,包括:获取新增任务的目标任务类型;获取当前处理目标任务类型的任务的主机数量,并判断是否达到预设的第一阈值;若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;若均小于,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理。本申请在对新增任务进行处理时,无需手动去配置也可以让服务器主动调整任务处理能力。
Description
技术领域
本申请涉及分布式部署的技术领域,特别涉及一种任务处理方法、装置、计算机设备和存储介质。
背景技术
目前,在任务平台中,为了保障对任务的处理能力不受影响,通常需要在任务处理时进行限流,即限制同时处理任务的数量。现行的限流方案通常是通过信号量和线程池的方式对提供的服务和对外调用进行限流操作,而这些方案中通常是对单台主机进行配置和限流,缺少一个动态的分布式的动态限流方案。同时,在新增任务时,无法在保障其他任务的正常处理前提下,及时将新增任务分配处理。
发明内容
本申请的主要目的为提供一种任务处理方法、装置、计算机设备和存储介质,旨在克服目前任务处理时无法动态限流的缺陷。
为实现上述目的,本申请提供了一种任务处理方法,包括以下步骤:
获取新增任务的目标任务类型;
获取当前处理所述目标任务类型的任务的主机数量,并判断所述主机数量是否达到预设的第一阈值;
若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;
若均小于对应的阈值,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理;
再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长;
若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,或者其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,停止调大所述第一阈值。
进一步地,所述获取新增任务的目标任务类型的步骤,包括:
获取所述新增任务的属性表达式,根据所述属性表达式获取所述新增任务的的属性编码,所述属性编码包括任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码;
将所述任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码分别输入至映射脚本中,输出所述任务部门编码、任务处理事项编码、任务重要度编码、任务处理时间编码分别对应的第一打分、第二打分、第三打分以及第四打分;其中,所述映射脚本中存储有属性编码-打分的对应关系;
对所述第一打分、第二打分、第三打分以及第四打分进行加权求和计算,得到所述新增任务的总分值;
根据总分值与目标任务类型的映射关系,得到所述新增任务的目标任务类型。
进一步地,所述获取新增任务的目标任务类型的步骤之后,包括:
获取所述新增任务的数据量,并将所述数据量与预设数据量进行对比;
若所述新增任务的数据量小于预设数据量,则将所述新增任务存储至第一文件夹中;若所述新增任务的数据量不小于预设数据量,则将所述新增任务存储至第二文件夹中;
创建数据表,并在每存储一个新增任务之后,在所述数据表中构建每一个新增任务的任务名称、存储文件夹的对应关系。
进一步地,所述新增任务中包括多条文字信息;所述获取新增任务的目标任务类型的步骤之后,包括:
创建一个空白图层;
对多条所述文字信息按照预设顺序进行排序,并获取所述文字信息的条数,以及获取每一条文字信息的文字数量;
在所述空白图层中划分对应所述条数的多个目标区域,并建立所述文字信息与所述目标区域的一对一映射关系;
将排序后的每一条所述文字信息添加至具有一对一映射关系的所述目标区域中;
根据排序后的每一条文字信息的文字数量,计算所有所述文字信息的文字数量的第一比值;
将一预设印章分割为对应所述文字信息的条数数量的子印章,且各个所述子印章的面积比值与所述第一比值相同;
将各个所述子印章添加至对应的文字信息所在的目标区域中,并将所述子印章、文字信息与所述空白图层进行合成得到任务图片,并进行存储。
进一步地,所述将所述子印章、文字信息与所述空白图层进行合成得到任务图片的步骤之后,包括:
创建所述任务图片的副本;
将所述任务图片的副本转化成字符串,并将所述字符串添加至一个数组中,生成一个字符组;
对所述字符组进行哈希计算,得到一个哈希值;
通过所述哈希值对所述任务图片进行加密。
本申请还提供了一种任务处理装置,包括:
第一获取单元,用于获取新增任务的目标任务类型;
第二获取单元,用于获取当前处理所述目标任务类型的任务的主机数量,并判断所述主机数量是否达到预设的第一阈值;
第三获取单元,用于若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;
分配单元,用于若均小于对应的阈值,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理;
第四获取单元,用于再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长;
停止单元,用于若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,或者其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,停止调大所述第一阈值。
进一步地,所述第一获取单元,包括:
获取子单元,用于获取所述新增任务的属性表达式,根据所述属性表达式获取所述新增任务的的属性编码,所述属性编码包括任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码;
打分子单元,用于将所述任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码分别输入至映射脚本中,输出所述任务部门编码、任务处理事项编码、任务重要度编码、任务处理时间编码分别对应的第一打分、第二打分、第三打分以及第四打分;其中,所述映射脚本中存储有属性编码-打分的对应关系;
计算子单元,用于对所述第一打分、第二打分、第三打分以及第四打分进行加权求和计算,得到所述新增任务的总分值;
确定子单元,用于根据总分值与目标任务类型的映射关系,得到所述新增任务的目标任务类型。
进一步地,还包括:
第五获取单元,用于获取所述新增任务的数据量,并将所述数据量与预设数据量进行对比;
第一存储单元,用于若所述新增任务的数据量小于预设数据量,则将所述新增任务存储至第一文件夹中;若所述新增任务的数据量不小于预设数据量,则将所述新增任务存储至第二文件夹中;
构建单元,用于创建数据表,并在每存储一个新增任务之后,在所述数据表中构建每一个新增任务的任务名称、存储文件夹的对应关系。
进一步地,还包括:
创建单元,用于创建一个空白图层;
排序单元,用于对多条所述文字信息按照预设顺序进行排序,并获取所述文字信息的条数,以及获取每一条文字信息的文字数量;
建立单元,用于在所述空白图层中划分对应所述条数的多个目标区域,并建立所述文字信息与所述目标区域的一对一映射关系;
第一添加单元,用于将排序后的每一条所述文字信息添加至具有一对一映射关系的所述目标区域中;
比值计算单元,用于根据排序后的每一条文字信息的文字数量,计算所有所述文字信息的文字数量的第一比值;
分割单元,用于将一预设印章分割为对应所述文字信息的条数数量的子印章,且各个所述子印章的面积比值与所述第一比值相同;
第二添加单元,用于将各个所述子印章添加至对应的文字信息所在的目标区域中,并将所述子印章、文字信息与所述空白图层进行合成得到任务图片,并进行存储。
进一步地,所述第二添加单元,还用于:
创建所述任务图片的副本;
将所述任务图片的副本转化成字符串,并将所述字符串添加至一个数组中,生成一个字符组;
对所述字符组进行哈希计算,得到一个哈希值;
通过所述哈希值对所述任务图片进行加密。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
本申请提供的任务处理方法、装置、计算机设备和存储介质,包括:获取新增任务的目标任务类型;获取当前处理所述目标任务类型的任务的主机数量,并判断所述主机数量是否达到预设的第一阈值;若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;若均小于对应的阈值,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理;再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长;若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,或者其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,停止调大所述第一阈值。本申请在对新增任务进行处理时,无需手动去配置也可以让服务器主动调整任务处理能力,支持新增任务的处理,同时不会影响其他任务的处理效率。
附图说明
图1是本申请一实施例中任务处理方法步骤示意图;
图2是本申请一实施例中任务处理装置结构框图;
图3为本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例中提供了一种任务处理方法,包括以下步骤:
步骤S1,获取新增任务的目标任务类型;
步骤S2,获取当前处理所述目标任务类型的任务的主机数量,并判断所述主机数量是否达到预设的第一阈值;
步骤S3,若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;
步骤S4,若均小于对应的阈值,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理;
步骤S5,再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长;
步骤S6,若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,或者其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,停止调大所述第一阈值。
在本实施例中,上述方法应用于分布式服务器中,用于分配每一个任务至分布式服务器中的主机上进行处理。上述任务包括多种任务类型,而不同任务类型的任务通常所需要的处理者数量不同。在上述分布式服务器中预先维护有每一种任务类型所对应的处理者的数量阈值,即第一阈值。举例来说,共用20台主机,预先设定的某任务A对应的处理者的数量阈值为10,即代表同时处理该任务A的主机最多为10个,若第一阈值增大到11,则代表同时处理该任务A的主机最多为11个。
如上述步骤S1所述的,当有大量的新增任务时,需要将新增任务分配至主机上进行处理,因此获取到新增任务的目标任务类型,即确定出该任务属于什么任务类型。由于每一种任务类型都预先设置有对应处理该任务的主机的数量阈值,因此,当上述新增任务来临时,可能目前分布式服务器处理上述目标任务类型的任务的主机数量已经达到了阈值;因此,需要进一步地进行协调处理。
如上述步骤S2所述的,获取到当前分布式服务器中所有处理该目标任务类型的任务的主机数量,并判断该主机数量是否达到预设的第一阈值;若未达到预设的第一阈值,则可以将上述新增任务按照预设分配规则分配至上述主机上进行处理。若达到预设的第一阈值,则表明此时处理上述目标任务类型的任务的主机已经达到饱和。
如上述步骤S3所述的,若达到预设的第一阈值,为了尽快将上述新增任务进行分配处理,避免积压,可以调大上述第一阈值,以使得上述新增任务可以有更多的处理者,即有更多数量的主机来处理上述任务;同时也要考虑到增加上述新增任务的处理者时,应当避免造成其他任务的处理时长增加,以及避免主机的硬件性能过于饱和,避免造成主机性能崩溃。
因此,在本实施例中,需要获取到当前每台所述主机的第一CPU使用率和第一内存使用率,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值,若均小于阈值,则表明此时每台主机都处于空闲状态,此时,则可以将新增任务分配至上述主机上;若有任一台主机的第一CPU使用率或者第一内存使用率达到了对应的阈值,则此时不宜分配新增任务。在本实施例中,需要结合所有主机进行综合考虑,不能仅仅是考虑一台主机的硬件使用状态。在本实施例中,还需要获取到当前处理其他每一种任务类型的任务的第一平均处理时长,为了保障其他任务类型的任务的正常处理,不应当使得其第一平均处理时长增加。
如上述步骤S4所述的,若均小于对应的阈值,则表明此时每台主机都处于空闲状态,因此,可以依次递增所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于递增后的所述第一阈值,当小于递增后的第一阈值时,则可以将所述新增任务分配至一台所述主机进行处理。
如上述步骤S5所述的,由于增加了上述分布式服务器中处理上述目标任务类型任务的主机数量,此时会增加主机的处理压力,因此,需要再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长。
如上述步骤S6所述的,将上述第二CPU使用率和第二内存使用率分别与对应的阈值进行对比,若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,则表明该太主机处于过压状态,其势必会降低其处理任务的处理速度,从而增加处理任务的处理时长,因此,此时不宜再分配新增任务,则停止递增上述第一阈值,即不再增加上述第一阈值。
或者,将上述其它任一种任务类型的任务的第二平均处理时长与对应的第一平均处理时长进行对比,当其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,则表明此时降低了处理任务的处理速度,因此需要停止递增所述第一阈值,即不再增加上述第一阈值。
在本实施例中,持续监测当前处理上述目标任务类型任务的主机数量,若在预设时间段内,上述主机数量都没有达到递增后的第一阈值时,则表明此时已经没有足够的任务需要分配,因此将处理上述目标任务类型任务的处理者数量恢复至预设的第一阈值。
在本实施例中,协调分布式服务器中的每一台主机的性能,并且通过动态的阈值计算方式让每一个任务都可以相对公平地被分配资源处理;让每台主机均在最大性能下提供任务处理的能力。通过本方案,当某一时刻新增任务时,无需手动去配置也可以让服务器主动调整工作能力,尽可能的支持该任务的处理,同时不会影响其他任务的处理效率。
在一个实施例中,所述获取新增任务的目标任务类型的步骤S1,包括:
步骤S101,获取所述新增任务的属性表达式,根据所述属性表达式获取所述新增任务的的属性编码,所述属性编码包括任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码;
步骤S102,将所述任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码分别输入至映射脚本中,输出所述任务部门编码、任务处理事项编码、任务重要度编码、任务处理时间编码分别对应的第一打分、第二打分、第三打分以及第四打分;其中,所述映射脚本中存储有属性编码-打分的对应关系;
步骤S103,对所述第一打分、第二打分、第三打分以及第四打分进行加权求和计算,得到所述新增任务的总分值;
步骤S104,根据总分值与目标任务类型的映射关系,得到所述新增任务的目标任务类型。
在本实施例中,上述新增任务的目标任务类型并非通常意义上的任务类型(例如,测试任务、开发任务、检测任务等),而是融合有新增任务的任务部门、任务处理事项、任务处理时间以及任务重要度等特性的一个参数;上述目标任务类型的不同,可以表达其优先级的不同,不同优先级的目标任务类型可以对应不同的第一阈值。
具体地,上述属性表达式指的是采用编码的形式表达出上述新增任务的一种表达式,例如一个属性表达式为:(P1=1;P2=4;P3=2;P4=4min),对于每个编码中的数字、字母等参数所代表的含义不同,其中,P1代表任务部门,参数1代表项目部,参数2代表开发部;P2代表任务处理事项,其中参数4可以代表为安全验证任务;P3代表任务重要度,参数2代表重要,参数1代表非常重要;P4代表任务处理时间。基于上述属性表达式,便可以获取到上述新增任务的属性。
不同部门、不同处理事项、不同处理时间、不同的重要程度的任务,其优先级可以不同,显然应该对应为不同的任务类型,而不应当是如现有技术中不同的处理事项则对应不同的任务类型。例如,某个任务为重要部门的任务,但是其重要程度并不高,处理时间也较长,则显然该任务的优先级可以降低。因此,本实施例中,对于上述新增任务的属性编码,基于映射脚本中存储的属性编码-打分的对应关系,分别获取对应的打分;每一种属性编码对应打分的权重不同,任务重要度编码对应打分的权重最高(例如0.6。根据每一种属性编码对应的打分的权重,进行加权计算,便可以得到上述新增任务的总分值;最后,再根据总分值与目标任务类型的映射关系,得到所述新增任务的目标任务类型。
在一实施例中,每个任务在处理之后,为了便于后续查询该任务,需要将该任务对应进行存储,目前的存储机制为将所有的任务数据存储至同一个文件夹,这样虽然也可以针对任务进行统一存储,但是在查询时面临的问题是,由于将所有的任务都存储在一个文件夹,查询该文件夹所消耗的时间较长。目前还存在,一种方式是,根据该任务的处理主机不同,将其存储在不同文件夹;但是由于不同的任务其数据量不同,而在查询时,若将大文件以及小文件存储在一个文件夹,则会明显降低对文件夹的整体查询速度,这主要是因为硬盘在读取数据时,大部分硬盘对小文件的读取速度反而不如大文件的读取速度,特别是从一个小文件的读取跳跃到其他小文件的读取上,需要消耗大量时间;而一个文件夹中都是大文件,则从一个大文件的读取跳跃到其他大文件的读取,整体消耗的时间反而相对较少。
所述获取新增任务的目标任务类型的步骤S1之后,包括:
步骤S11,获取所述新增任务的数据量,并将所述数据量与预设数据量进行对比;
步骤S12,若所述新增任务的数据量小于预设数据量,则将所述新增任务存储至第一文件夹中;若所述新增任务的数据量不小于预设数据量,则将所述新增任务存储至第二文件夹中;即将不同数据量大小的任务存储至不同的文件夹。
步骤S13,创建数据表,并在每存储一个新增任务之后,在所述数据表中构建每一个新增任务的任务名称、存储文件夹的对应关系。在本步骤中,即在数据表中保存每一个新增任务所保存的位置,便于后续在查询上述任务时,首先根据任务名称在上述数据表中查找到任务对应的位置,即查找到任务保存在哪个文件夹,然后在对应的文件夹中进行查询,便于减少查询时间;同时,由于小文件和大文件分别存储在不同的文件夹中,便于有针对性查询数据,提升查询速度。
在其他实施例中,也可以是在查询时,直接获取需要查询任务的属性,从属性中获取任务的数据量,根据数据量匹配出对应的文件夹,然后在对应的文件夹中查询对应的任务。
在一实施例中,所述新增任务中包括多条文字信息;所述获取新增任务的目标任务类型的步骤S1之后,包括:
创建一个空白图层;
对多条所述文字信息按照预设顺序进行排序,并获取所述文字信息的条数,以及获取每一条文字信息的文字数量;
在所述空白图层中划分对应所述条数的多个目标区域,并建立所述文字信息与所述目标区域的一对一映射关系;
将排序后的每一条所述文字信息添加至具有一对一映射关系的所述目标区域中;
根据排序后的每一条文字信息的文字数量,计算所有所述文字信息的文字数量的第一比值;
将一预设印章分割为对应所述文字信息的条数数量的子印章,且各个所述子印章的面积比值与所述第一比值相同;
将各个所述子印章添加至对应的文字信息所在的目标区域中,并将所述子印章、文字信息与所述空白图层进行合成得到任务图片,并进行存储。
在本实施例中,上述新增任务包括有多条文字信息,例如,任务内容字段、任务期限字段等,从上述新增任务中提取从上述文字信息,并获取文字信息的条数;创建一个空白图层,并根据上述文字信息的条数,将空白图层划分对应的多个目标区域,每条文字信息添加在一个目标区域中。
为了保障上述任务图片的真实性,还需要在上述任务图片上加盖印章;而并不是将一个完整的印章加盖在图片上,这是因为整个印章的防伪性较差;因此,本实施例中,将印章分成多个子印章,每一个子印章加盖在每一条文字信息所在的目标区域中,则增强了数据的防伪性;且子印章之间的面积比值与每一条所述文字信息的文字数量的第一比值存在着对应关系,后续在对任务进行复查时,根据上述文件信息的条数、每条文字信息的字数以及上述子印章的比值便可以验证上述任务图片是否发生修改,便于后续进行任务复查。
在一实施例中,所述将所述子印章、文字信息与所述空白图层进行合成得到任务图片的步骤之后,包括:
创建所述任务图片的副本;
将所述任务图片的副本转化成字符串,并将所述字符串添加至一个数组中,生成一个字符组;
对所述字符组进行哈希计算,得到一个哈希值;
通过所述哈希值对所述任务图片进行加密。
在本实施例中,需要对上述任务图片进行加密,因此,创建一个和上述任务图片一致的副本,并将其转化成字符串,通常为base64格式的字符串,将所述字符串添加至一个数组中,生成一个字符组。该字符组为上述任务图片的一种数据流表达形式,对其进行哈希计算时相对于对任务图片进行哈希计算,可以显著降低计算量,哈希计算得到的哈希值,则作为上述任务图片的加密密码。
参照图2,本申请一实施例中还提供了一种任务处理装置,包括:
第一获取单元10,用于获取新增任务的目标任务类型;
第二获取单元20,用于获取当前处理所述目标任务类型的任务的主机数量,并判断所述主机数量是否达到预设的第一阈值;
第三获取单元30,用于若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;
分配单元40,用于若均小于对应的阈值,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理;
第四获取单元50,用于再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长;
停止单元60,用于若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,或者其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,停止调大所述第一阈值。
在一实施例中,所述第一获取单元10,包括:
获取子单元,用于获取所述新增任务的属性表达式,根据所述属性表达式获取所述新增任务的的属性编码,所述属性编码包括任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码;
打分子单元,用于将所述任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码分别输入至映射脚本中,输出所述任务部门编码、任务处理事项编码、任务重要度编码、任务处理时间编码分别对应的第一打分、第二打分、第三打分以及第四打分;其中,所述映射脚本中存储有属性编码-打分的对应关系;
计算子单元,用于对所述第一打分、第二打分、第三打分以及第四打分进行加权求和计算,得到所述新增任务的总分值;
确定子单元,用于根据总分值与目标任务类型的映射关系,得到所述新增任务的目标任务类型。
在一实施例中,还包括:
第五获取单元,用于获取所述新增任务的数据量,并将所述数据量与预设数据量进行对比;
第一存储单元,用于若所述新增任务的数据量小于预设数据量,则将所述新增任务存储至第一文件夹中;若所述新增任务的数据量不小于预设数据量,则将所述新增任务存储至第二文件夹中;
构建单元,用于创建数据表,并在每存储一个新增任务之后,在所述数据表中构建每一个新增任务的任务名称、存储文件夹的对应关系。
在一实施例中,还包括:
创建单元,用于创建一个空白图层;
排序单元,用于对多条所述文字信息按照预设顺序进行排序,并获取所述文字信息的条数,以及获取每一条文字信息的文字数量;
建立单元,用于在所述空白图层中划分对应所述条数的多个目标区域,并建立所述文字信息与所述目标区域的一对一映射关系;
第一添加单元,用于将排序后的每一条所述文字信息添加至具有一对一映射关系的所述目标区域中;
比值计算单元,用于根据排序后的每一条文字信息的文字数量,计算所有所述文字信息的文字数量的第一比值;
分割单元,用于将一预设印章分割为对应所述文字信息的条数数量的子印章,且各个所述子印章的面积比值与所述第一比值相同;
第二添加单元,用于将各个所述子印章添加至对应的文字信息所在的目标区域中,并将所述子印章、文字信息与所述空白图层进行合成得到任务图片,并进行存储。
在一实施例中,所述第二添加单元,还用于:
创建所述任务图片的副本;
将所述任务图片的副本转化成字符串,并将所述字符串添加至一个数组中,生成一个字符组;
对所述字符组进行哈希计算,得到一个哈希值;
通过所述哈希值对所述任务图片进行加密。
在本实施例中,上述装置实施例中的各个单元、子单元的具体实现请参照上述方法实施例中所述,在此不再进行赘述。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储任务图片数据等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种任务处理方法。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种任务处理方法。可以理解的是,本实施例中的计算机可读存储介质可以是易失性可读存储介质,也可以为非易失性可读存储介质。
综上所述,为本申请实施例中提供的任务处理方法、装置、计算机设备和存储介质,包括:获取新增任务的目标任务类型;获取当前处理所述目标任务类型的任务的主机数量,并判断所述主机数量是否达到预设的第一阈值;若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;若均小于对应的阈值,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理;再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长;若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,或者其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,停止调大所述第一阈值。本申请在对新增任务进行处理时,无需手动去配置也可以让服务器主动调整任务处理能力,支持新增任务的处理,同时不会影响其他任务的处理效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种任务处理方法,其特征在于,包括以下步骤:
获取新增任务的目标任务类型;
获取当前处理所述目标任务类型的任务的主机数量,并判断所述主机数量是否达到预设的第一阈值;
若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;
若均小于对应的阈值,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理;
再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长;
若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,或者其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,停止调大所述第一阈值。
2.根据权利要求1所述的任务处理方法,其特征在于,所述获取新增任务的目标任务类型的步骤,包括:
获取所述新增任务的属性表达式,根据所述属性表达式获取所述新增任务的的属性编码,所述属性编码包括任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码;
将所述任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码分别输入至映射脚本中,输出所述任务部门编码、任务处理事项编码、任务重要度编码、任务处理时间编码分别对应的第一打分、第二打分、第三打分以及第四打分;其中,所述映射脚本中存储有属性编码-打分的对应关系;
对所述第一打分、第二打分、第三打分以及第四打分进行加权求和计算,得到所述新增任务的总分值;
根据总分值与目标任务类型的映射关系,得到所述新增任务的目标任务类型。
3.根据权利要求1所述的任务处理方法,其特征在于,所述获取新增任务的目标任务类型的步骤之后,包括:
获取所述新增任务的数据量,并将所述数据量与预设数据量进行对比;
若所述新增任务的数据量小于预设数据量,则将所述新增任务存储至第一文件夹中;若所述新增任务的数据量不小于预设数据量,则将所述新增任务存储至第二文件夹中;
创建数据表,并在每存储一个新增任务之后,在所述数据表中构建每一个新增任务的任务名称、存储文件夹的对应关系。
4.根据权利要求1所述的任务处理方法,其特征在于,所述新增任务中包括多条文字信息;所述获取新增任务的目标任务类型的步骤之后,包括:
创建一个空白图层;
对多条所述文字信息按照预设顺序进行排序,并获取所述文字信息的条数,以及获取每一条文字信息的文字数量;
在所述空白图层中划分对应所述条数的多个目标区域,并建立所述文字信息与所述目标区域的一对一映射关系;
将排序后的每一条所述文字信息添加至具有一对一映射关系的所述目标区域中;
根据排序后的每一条文字信息的文字数量,计算所有所述文字信息的文字数量的第一比值;
将一预设印章分割为对应所述文字信息的条数数量的子印章,且各个所述子印章的面积比值与所述第一比值相同;
将各个所述子印章添加至对应的文字信息所在的目标区域中,并将所述子印章、文字信息与所述空白图层进行合成得到任务图片,并进行存储。
5.根据权利要求4所述的任务处理方法,其特征在于,所述将所述子印章、文字信息与所述空白图层进行合成得到任务图片的步骤之后,包括:
创建所述任务图片的副本;
将所述任务图片的副本转化成字符串,并将所述字符串添加至一个数组中,生成一个字符组;
对所述字符组进行哈希计算,得到一个哈希值;
通过所述哈希值对所述任务图片进行加密。
6.一种任务处理装置,其特征在于,包括:
第一获取单元,用于获取新增任务的目标任务类型;
第二获取单元,用于获取当前处理所述目标任务类型的任务的主机数量,并判断所述主机数量是否达到预设的第一阈值;
第三获取单元,用于若达到,则获取当前每台主机的第一CPU使用率和第一内存使用率,以及获取当前处理其他每一种任务类型的任务的第一平均处理时长,并判断每台所述主机的第一CPU使用率以及第一内存使用率是否均小于对应的阈值;
分配单元,用于若均小于对应的阈值,则依次调大所述第一阈值,以使得当前处理所述目标任务类型的任务的主机数量小于调大后的所述第一阈值,并将所述新增任务分配至一台所述主机进行处理;
第四获取单元,用于再次获取每台所述主机的第二CPU使用率和第二内存使用率,以及再次获取处理其他每一种任务类型的任务的第二平均处理时长;
停止单元,用于若任一台所述主机的第二CPU使用率或者第二内存使用率达到对应的阈值,或者其他任一种任务类型的任务的第二平均处理时长大于第一平均处理时长时,停止调大所述第一阈值。
7.根据权利要求6所述的任务处理装置,其特征在于,所述第一获取单元,包括:
获取子单元,用于获取所述新增任务的属性表达式,根据所述属性表达式获取所述新增任务的的属性编码,所述属性编码包括任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码;
打分子单元,用于将所述任务部门编码、任务处理事项编码、任务重要度编码以及任务处理时间编码分别输入至映射脚本中,输出所述任务部门编码、任务处理事项编码、任务重要度编码、任务处理时间编码分别对应的第一打分、第二打分、第三打分以及第四打分;其中,所述映射脚本中存储有属性编码-打分的对应关系;
计算子单元,用于对所述第一打分、第二打分、第三打分以及第四打分进行加权求和计算,得到所述新增任务的总分值;
确定子单元,用于根据总分值与目标任务类型的映射关系,得到所述新增任务的目标任务类型。
8.根据权利要求6所述的任务处理装置,其特征在于,还包括:
第五获取单元,用于获取所述新增任务的数据量,并将所述数据量与预设数据量进行对比;
第一存储单元,用于若所述新增任务的数据量小于预设数据量,则将所述新增任务存储至第一文件夹中;若所述新增任务的数据量不小于预设数据量,则将所述新增任务存储至第二文件夹中;
构建单元,用于创建数据表,并在每存储一个新增任务之后,在所述数据表中构建每一个新增任务的任务名称、存储文件夹的对应关系。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010621795.3A CN111737005A (zh) | 2020-06-30 | 2020-06-30 | 任务处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010621795.3A CN111737005A (zh) | 2020-06-30 | 2020-06-30 | 任务处理方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111737005A true CN111737005A (zh) | 2020-10-02 |
Family
ID=72652219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010621795.3A Pending CN111737005A (zh) | 2020-06-30 | 2020-06-30 | 任务处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111737005A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113535719A (zh) * | 2021-07-07 | 2021-10-22 | 锐掣(杭州)科技有限公司 | 数据过滤方法、数据过滤装置、存储介质及产品 |
CN113986542A (zh) * | 2021-10-27 | 2022-01-28 | 北京达佳互联信息技术有限公司 | 新增任务的处理方法、装置、电子设备及存储介质 |
-
2020
- 2020-06-30 CN CN202010621795.3A patent/CN111737005A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113535719A (zh) * | 2021-07-07 | 2021-10-22 | 锐掣(杭州)科技有限公司 | 数据过滤方法、数据过滤装置、存储介质及产品 |
CN113986542A (zh) * | 2021-10-27 | 2022-01-28 | 北京达佳互联信息技术有限公司 | 新增任务的处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109344183B (zh) | 数据交互方法、装置、计算机设备和存储介质 | |
CN109474578B (zh) | 报文消息校验方法、装置、计算机设备和存储介质 | |
CN109542428B (zh) | 业务处理方法、装置、计算机设备和存储介质 | |
CN108399101B (zh) | 资源调度的方法、装置和系统 | |
CN108966158B (zh) | 短信发送方法、系统、计算机设备和存储介质 | |
CN110888911A (zh) | 样本数据处理方法、装置、计算机设备及存储介质 | |
CN110598380B (zh) | 用户权限管理方法、装置、计算机设备和存储介质 | |
CN110647329A (zh) | 代码混淆方法、装置、计算机设备和存储介质 | |
CN111737005A (zh) | 任务处理方法、装置、计算机设备和存储介质 | |
CN108717426B (zh) | 企业数据的更新方法、装置、计算机设备及存储介质 | |
CN110213392B (zh) | 数据分发方法、装置、计算机设备和存储介质 | |
CN110908778A (zh) | 任务部署方法、系统和存储介质 | |
CN112153170A (zh) | 访问服务器的方法、装置、设备及存储介质 | |
CN110765169A (zh) | 信息推荐方法、装置、计算机设备及存储介质 | |
CN112348371A (zh) | 云资产的安全风险评估方法、装置、设备、及存储介质 | |
CN109857748B (zh) | 一种合同数据处理方法、装置及电子设备 | |
CN114417202A (zh) | 基于人工智能的混合页面的跳转方法、装置及设备 | |
CN108133026B (zh) | 一种多数据的处理方法、系统及存储介质 | |
CN111291300B (zh) | 网页数据处理方法、装置、网页系统及服务器 | |
CN110460685B (zh) | 用户唯一标识处理方法、装置、计算机设备和存储介质 | |
CN112433925A (zh) | 基于人工智能的日志生成方法、装置、计算机设备和介质 | |
CN108848165B (zh) | 业务请求处理方法、装置、计算机设备和存储介质 | |
CN112104569A (zh) | 报文数据处理方法、装置、计算机设备和存储介质 | |
CN111008377A (zh) | 账号监控方法、装置、计算机设备和存储介质 | |
CN110930193A (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 |