CN117076450A - Task request scheduling optimization method, device, computer equipment and medium - Google Patents
Task request scheduling optimization method, device, computer equipment and medium Download PDFInfo
- Publication number
- CN117076450A CN117076450A CN202311039347.2A CN202311039347A CN117076450A CN 117076450 A CN117076450 A CN 117076450A CN 202311039347 A CN202311039347 A CN 202311039347A CN 117076450 A CN117076450 A CN 117076450A
- Authority
- CN
- China
- Prior art keywords
- update table
- empty
- task request
- value
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- 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)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种任务请求调度的优化方法、装置、计算机设备及介质,涉及信息处理技术领域,其中,所述方法包括:预先创建一个更新表;将所有的任务请求的jobid计算出对应的hash值;通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置;判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败。通过本发明的方法可以有效减少因redis乐观锁触发而导致部分任务请求请求失败的情况。
The invention discloses an optimization method, device, computer equipment and medium for task request scheduling, and relates to the field of information processing technology. The method includes: creating an update table in advance; calculating the corresponding jobid of all task requests. hash value; calculate the remainder of the length value of the update table through the hash value, and subtract 1 from the remainder to obtain the subscript position of the update table where the target task request is located; determine whether the subscript position is empty , if it is empty, assign a value of 1 to the subscript position, if not, return failure. The method of the present invention can effectively reduce the failure of some task requests due to the triggering of redis optimistic lock.
Description
技术领域Technical field
本发明涉及信息处理技术领域,具体涉及一种任务请求调度的优化方法、装置、计算机设备以及非易失性计算机可读存储介质。The invention relates to the field of information processing technology, and in particular to an optimization method, device, computer equipment and non-volatile computer-readable storage medium for task request scheduling.
背景技术Background technique
目前,随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。At present, with the development of computer technology, more and more technologies are applied in the financial field. The traditional financial industry is gradually transforming into financial technology (Fintech). However, due to the security and real-time requirements of the financial industry, technology has also been put forward. higher requirement.
目前,银行结构的业务系统每天都有大量的消费数据的任务要执行,而业务系统消费数据的集群中的节点数量又是有限的,一直以来业务系统都致力于用更少的节点通过合理的编排,尽可能的跑更多的任务,例如,通过把集群中节点分为了好几个队列,然后把任务通过打标签的方式也分为好几种任务,不同的队列处理不同标签的任务,但是,当要执行的任务越来越多,业务系统的队列也越来越多,当业务高峰时,队列内节点经常是全部占用的状态,导致优先级高的任务迟迟无法执行。At present, the bank-structured business system has a large number of data consumption tasks to be performed every day, and the number of nodes in the cluster where the business system consumes data is limited. The business system has always been committed to using fewer nodes to pass reasonable Orchestrate and run as many tasks as possible, for example, by dividing the nodes in the cluster into several queues, and then dividing the tasks into several tasks by labeling. Different queues process tasks with different labels, but , when there are more and more tasks to be executed, there are also more and more queues in the business system. When the business peaks, the nodes in the queue are often fully occupied, resulting in the delay in executing high-priority tasks.
当前,在统计某个分片的任务请求数时,目前使用redis的乐观锁机制,通过为当前分片创建一个redis的key,然后使用watch命令实现(使用watch命令之后,它就会获取这个key的值,然后监视,当我们去执行任务的时候,就会去更新这个值,更新的时候,首先它会去比较现在要更新的这个key值是否和之前获取到的值是一样的,如果一样,则继续下面的步骤,如果不一样则报错给客户端不继续执行)。当前,一般情况是没有任何问题的,但是,在任务请求调度频繁时,如果一个任务请求通过这个校验,更新掉了这个值,那么与这个任务请求同时到来的其它任务请求就只能报错,然后进行重试,这样会导致任务请求量大幅增加,而且报错频发,为此,现有技术需要针对这种情况进行优化。Currently, when counting the number of task requests for a certain shard, the optimistic locking mechanism of redis is currently used, by creating a redis key for the current shard and then using the watch command (after using the watch command, it will obtain the key value, and then monitor it. When we execute the task, we will update this value. When updating, first it will compare whether the key value to be updated is the same as the value obtained before. If so, , then continue with the following steps, if not, an error will be reported to the client and execution will not continue). Currently, there is generally no problem. However, when task requests are scheduled frequently, if a task request passes this check and the value is updated, other task requests that arrive at the same time as this task request will only report an error. Then retry, which will lead to a significant increase in the number of task requests and frequent error reports. For this reason, the existing technology needs to be optimized for this situation.
综上所述,如何提供一种任务请求调度的优化方法、装置、计算机设备以及非易失性计算机可读存储介质,以有效减少因redis乐观锁触发而导致部分任务请求请求失败的情况,是目前本领域技术人员亟待解决的问题。In summary, how to provide an optimization method, device, computer equipment and non-volatile computer-readable storage medium for task request scheduling to effectively reduce the failure of some task request requests due to redis optimistic lock triggering is It is currently a problem that needs to be solved urgently by those skilled in the art.
发明内容Contents of the invention
鉴于上述现有技术的不足之处,本发明的目的在于提供一种可用于金融科技或其他相关领域的任务请求调度的优化方法、装置、计算机设备以及非易失性计算机可读存储介质,可以有效减少因redis乐观锁触发而导致部分任务请求请求失败的情况。In view of the shortcomings of the above-mentioned prior art, the purpose of the present invention is to provide an optimization method, device, computer equipment and non-volatile computer-readable storage medium that can be used for task request scheduling in financial technology or other related fields, which can Effectively reduce the failure of some task requests due to redis optimistic lock triggering.
为了达到上述目的,本发明采取了以下技术方案:In order to achieve the above objects, the present invention adopts the following technical solutions:
一种任务请求调度的优化方法,其中,包括:An optimization method for task request scheduling, which includes:
预先创建一个更新表;Create an update table in advance;
将所有的任务请求的jobid计算出对应的hash值;Calculate the corresponding hash values of the jobids of all task requests;
通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置;Use the hash value to calculate the remainder of the length value of the update table, and subtract 1 from the calculated remainder to obtain the subscript position of the update table where the target task request is located;
判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败。Determine whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, return failure.
在进一步的技术方案中,所述的任务请求调度的优化方法,其中,所述预先创建一个更新表,包括:In a further technical solution, the task request scheduling optimization method is provided, wherein the pre-created update table includes:
预先基于数据库的目标分片创建一个更新表。Pre-create an update table based on the target shard of the database.
在进一步的技术方案中,所述的任务请求调度的优化方法,其中,所述预先基于数据库的目标分片创建一个更新表,其中,所述目标分片的base值初始为0。In a further technical solution, in the optimization method of task request scheduling, an update table is created in advance based on the target sharding of the database, and the base value of the target sharding is initially 0.
在进一步的技术方案中,所述的任务请求调度的优化方法,其中,所述判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败之后,包括:In a further technical solution, the optimization method of task request scheduling, wherein the step of determining whether the subscript position is empty, and if it is empty, assigns a value of 1 to the subscript position, and if it is not empty, Return after failure, including:
取所述更新表中所有赋值的项相加,然后再加base值,以得到所述目标分片的任务请求数。Add up all the assigned items in the update table, and then add the base value to obtain the number of task requests for the target shard.
一种任务请求调度的优化装置,其中,包括:An optimization device for task request scheduling, which includes:
创建模块,用于预先创建一个更新表;Create module, used to create an update table in advance;
计算模块,用于将所有的任务请求的jobid计算出对应的hash值;The calculation module is used to calculate the corresponding hash value of the jobid of all task requests;
求余模块,用于通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置;The remainder module is used to calculate the remainder of the length value of the update table through the hash value, and subtract 1 from the remainder to obtain the subscript position of the update table where the target task request is located;
判断模块,用于判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败。A judgment module is used to judge whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, return failure.
在进一步的技术方案中,所述的任务请求调度的优化装置,其中,所述预先创建一个更新表,包括:In a further technical solution, the task request scheduling optimization device, wherein the pre-created update table includes:
预先基于数据库的目标分片创建一个更新表。Pre-create an update table based on the target shard of the database.
在进一步的技术方案中,所述的任务请求调度的优化装置,其中,所述预先基于数据库的目标分片创建一个更新表,其中,所述目标分片的base值初始为0。In a further technical solution, in the task request scheduling optimization device, an update table is created in advance based on the target fragments of the database, and the base value of the target fragments is initially 0.
在进一步的技术方案中,所述的任务请求调度的优化装置,其中,所述判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败之后,包括:In a further technical solution, the optimization device for task request scheduling, wherein the step of determining whether the subscript position is empty, and if it is empty, assigns a value of 1 to the subscript position, and if it is not empty, Return after failure, including:
取所述更新表中所有赋值的项相加,然后再加base值,以得到所述目标分片的任务请求数。Add up all the assigned items in the update table, and then add the base value to obtain the number of task requests for the target shard.
一种计算机设备,其中,所述计算机设备包括至少一个处理器;以及,A computer device, wherein the computer device includes at least one processor; and,
与所述至少一个处理器通信连接的存储器;其中,a memory communicatively connected to the at least one processor; wherein,
所述存储器上存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行时,可实现如上述任一项所述的任务请求调度的优化方法。The memory stores a computer program that can be executed by the at least one processor. When the computer program is executed by the at least one processor, the optimization method for task request scheduling as described in any one of the above can be implemented.
一种非易失性计算机可读存储介质,其中,所述非易失性计算机可读存储介质存储有计算机程序,所述计算机程序被至少一个处理器执行时,可实现如上述任一项所述的任务请求调度的优化方法。A non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program. When the computer program is executed by at least one processor, it can implement any of the above. The optimization method of task request scheduling described above.
相较于现有技术,本发明提供了一种任务请求调度的优化方法、装置、计算机设备以及非易失性计算机可读存储介质,其中,所述方法包括:预先创建一个更新表;将所有的任务请求的jobid计算出对应的hash值;通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置;判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败。通过本发明的方法可以有效减少因redis乐观锁触发而导致部分任务请求请求失败的情况。Compared with the existing technology, the present invention provides an optimization method, device, computer equipment and non-volatile computer-readable storage medium for task request scheduling, wherein the method includes: creating an update table in advance; Calculate the corresponding hash value of the jobid of the task request; calculate the remainder of the length value of the update table through the hash value, and subtract 1 from the remainder to obtain the subscript position of the update table where the target task request is located; Determine whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, return failure. The method of the present invention can effectively reduce the failure of some task requests due to the triggering of redis optimistic lock.
附图说明Description of the drawings
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。In order to explain the embodiments of the present invention or the technical solutions in the prior art more clearly, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings in the following description are only These are some embodiments recorded in the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without exerting creative efforts.
图1为本发明实施例提供的一种任务请求调度的优化方法的流程示意图。Figure 1 is a schematic flowchart of a method for optimizing task request scheduling provided by an embodiment of the present invention.
图2为本发明实施例提供的一种任务请求调度的优化装置的功能模块示意图。Figure 2 is a functional module schematic diagram of an optimization device for task request scheduling provided by an embodiment of the present invention.
图3为本发明实施例提供的所述计算机设备的硬件结构示意图。FIG. 3 is a schematic diagram of the hardware structure of the computer device provided by an embodiment of the present invention.
图4为本发明实施例提供的所述更新表的示意图。Figure 4 is a schematic diagram of the update table provided by an embodiment of the present invention.
具体实施方式Detailed ways
为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。In order to make the purpose, technical solution and effect of the present invention clearer and clearer, the present invention will be further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described here are only used to explain the present invention and are not intended to limit the present invention.
在本发明的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。In the description of the present invention, the words "including", "including", "having", "containing", etc. are all open terms, which mean including but not limited to. Reference to the terms "one embodiment," "a specific embodiment," "some embodiments," "such as," etc. in the description means that a particular feature, structure or characteristic described in connection with the embodiment or example is included in at least one of the present application in an embodiment or example. In this specification, schematic representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. The sequence of steps involved in each embodiment is used to schematically illustrate the implementation of the present application. The sequence of steps is not limited and can be adjusted appropriately as needed.
下面结合附图,详细说明本发明的各种非限制性实施方式。Various non-limiting embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
目前,随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。At present, with the development of computer technology, more and more technologies are applied in the financial field. The traditional financial industry is gradually transforming into financial technology (Fintech). However, due to the security and real-time requirements of the financial industry, technology has also been put forward. higher requirement.
目前,银行结构的业务系统每天都有大量的消费数据的任务要执行,而业务系统消费数据的集群中的节点数量又是有限的,一直以来业务系统都致力于用更少的节点通过合理的编排,尽可能的跑更多的任务,例如,通过把集群中节点分为了好几个队列,然后把任务通过打标签的方式也分为好几种任务,不同的队列处理不同标签的任务,但是,当要执行的任务越来越多,业务系统的队列也越来越多,当业务高峰时,队列内节点经常是全部占用的状态,导致优先级高的任务迟迟无法执行。At present, the bank-structured business system has a large number of data consumption tasks to be performed every day, and the number of nodes in the cluster where the business system consumes data is limited. The business system has always been committed to using fewer nodes to pass reasonable Orchestrate and run as many tasks as possible, for example, by dividing the nodes in the cluster into several queues, and then dividing the tasks into several tasks by labeling. Different queues process tasks with different labels, but , when there are more and more tasks to be executed, there are also more and more queues in the business system. When the business peaks, the nodes in the queue are often fully occupied, resulting in the delay in executing high-priority tasks.
当前,在统计某个分片的任务请求数时,目前使用redis的乐观锁机制,通过为当前分片创建一个redis的key,然后使用watch命令实现(使用watch命令之后,它就会获取这个key的值,然后监视,当我们去执行任务的时候,就会去更新这个值,更新的时候,首先它会去比较现在要更新的这个key值是否和之前获取到的值是一样的,如果一样,则继续下面的步骤,如果不一样则报错给客户端不继续执行)。当前,一般情况是没有任何问题的,但是,在任务请求调度频繁时,如果一个任务请求通过这个校验,更新掉了这个值,那么与这个任务请求同时到来的其它任务请求就只能报错,然后进行重试,这样会导致任务请求量大幅增加,而且报错频发,为此,现有技术需要针对这种情况进行优化。Currently, when counting the number of task requests for a certain shard, the optimistic locking mechanism of redis is currently used, by creating a redis key for the current shard and then using the watch command (after using the watch command, it will obtain the key value, and then monitor it. When we execute the task, we will update this value. When updating, first it will compare whether the key value to be updated is the same as the value obtained before. If so, , then continue with the following steps, if not, an error will be reported to the client and execution will not continue). Currently, there is generally no problem. However, when task requests are scheduled frequently, if a task request passes this check and the value is updated, other task requests that arrive at the same time as this task request will only report an error. Then retry, which will lead to a significant increase in the number of task requests and frequent error reports. For this reason, the existing technology needs to be optimized for this situation.
综上所述,如何提供一种任务请求调度的优化方法、装置、计算机设备以及非易失性计算机可读存储介质,以有效减少因redis乐观锁触发而导致部分任务请求请求失败的情况,是目前本领域技术人员亟待解决的问题。In summary, how to provide an optimization method, device, computer equipment and non-volatile computer-readable storage medium for task request scheduling to effectively reduce the failure of some task request requests due to redis optimistic lock triggering is It is currently a problem that needs to be solved urgently by those skilled in the art.
因此,为了解决上述问题,请参阅图1,本发明实施例提供了一种任务请求调度的优化方法,其中,所述方法包括步骤:Therefore, in order to solve the above problem, please refer to Figure 1. An embodiment of the present invention provides an optimization method for task request scheduling, wherein the method includes the steps:
S100、预先创建一个更新表;S100. Create an update table in advance;
S200、将所有的任务请求的jobid计算出对应的hash值;S200. Calculate the corresponding hash values of the jobids of all task requests;
S300、通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置;S300. Calculate the remainder of the length value of the update table through the hash value, and subtract 1 from the calculated remainder to obtain the subscript position of the update table where the target task request is located;
S400、判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败。S400. Determine whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, return failure.
进一步地,请参阅图4,所述的任务请求调度的优化方法,其中,所述步骤S100、预先创建一个更新表,包括:Further, please refer to Figure 4, the optimization method of task request scheduling, wherein the step S100 is to create an update table in advance, including:
预先基于数据库的目标分片创建一个更新表。Pre-create an update table based on the target shard of the database.
进一步地,所述的任务请求调度的优化方法,其中,所述预先基于数据库的目标分片创建一个更新表,其中,所述目标分片的base值初始为0。Further, in the optimization method of task request scheduling, an update table is created in advance based on the target fragment of the database, and the base value of the target fragment is initially 0.
具体实施时,本实施例中,预先基于数据库的目标分片创建一个更新表,其中,分片(sharding)是数据库分区的一种,它将大型数据库分成更小、更快、更容易管理的部分,例如,按地理位置拆分用户数据库就是一个常见的例子,位于东海岸的用户被分到一台服务器上,位于西海岸的用户被分在另一台服务器上;其次,所述目标分片的base值初始为0,base值即为当前时间所述目标分片内任务请求数的统计值。During specific implementation, in this embodiment, an update table is created in advance based on the target sharding of the database. Sharding is a type of database partitioning, which divides a large database into smaller, faster, and easier to manage For example, splitting the user database by geographical location is a common example. Users located on the East Coast are allocated to one server, and users located on the West Coast are allocated to another server. Secondly, the target sharding The base value is initially 0, and the base value is the statistical value of the number of task requests in the target shard at the current time.
进一步地,所述的任务请求调度的优化方法,其中,所述步骤S200、将所有的任务请求的jobid计算出对应的hash值。Further, in the optimization method of task request scheduling, the step S200 is to calculate the corresponding hash values of the jobids of all task requests.
具体实施时,本实施例中,在预先基于数据库的目标分片创建一个更新表后,再将所有的任务请求的jobid计算出对应的hash值,其中,jobid表示job(任务请求)的不可变且唯一的标识符,业务系统内唯一。During specific implementation, in this embodiment, after an update table is created in advance based on the target sharding of the database, the corresponding hash values of the jobids of all task requests are calculated, where jobid represents the immutability of the job (task request). And the unique identifier is unique within the business system.
进一步地,所述的任务请求调度的优化方法,其中,所述步骤S300、通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置。Further, the optimization method of task request scheduling, wherein the step S300 is to calculate the remainder of the length value of the update table through the hash value, and subtract 1 from the calculated remainder to obtain the location of the target task request. Describes the subscript position of the update table.
具体实施时,本实施例中,在将所有的任务请求的jobid计算出对应的hash值后,再通过所述hash值对所述更新表的长度值求余,求出的余-1即得到目标任务请求所在所述更新表的下标位置。During specific implementation, in this embodiment, after calculating the corresponding hash values of the jobids of all task requests, the remainder of the length value of the update table is calculated using the hash value, and the calculated remainder -1 is obtained. The subscript position of the update table where the target task request is located.
进一步地,所述的任务请求调度的优化方法,其中,所述步骤S400、判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败。Further, in the optimization method of task request scheduling, the step S400 is to determine whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, then Return failure.
具体实施时,本实施例中,在得到目标任务请求所在所述更新表的下标位置后,判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则说明已经被其他任务请求抢占,则返回失败。During specific implementation, in this embodiment, after obtaining the subscript position of the update table where the target task request is located, it is determined whether the subscript position is empty. If it is empty, a value of 1 is assigned to the subscript position. If If it is not empty, it means that it has been preempted by other task requests, and failure will be returned.
进一步地,所述的任务请求调度的优化方法,其中,所述步骤S400、判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败之后,包括:Further, in the optimization method of task request scheduling, the step S400 is to determine whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, then After returning failure, include:
取所述更新表中所有赋值的项相加,然后再加base值,以得到所述目标分片的任务请求数。Add up all the assigned items in the update table, and then add the base value to obtain the number of task requests for the target shard.
具体实施时,本实施例中,当需要得到所述目标分片的任务请求数时,则可以取所述更新表中所有赋值的项相加,然后再加base值后计算得到。During specific implementation, in this embodiment, when it is necessary to obtain the number of task requests of the target shard, all the assigned items in the update table can be added together, and then the base value is added and calculated.
由以上方法实施例可知,本发明提供的任务请求调度的优化方法,通过预先基于数据库的目标分片创建一个更新表,其中,所述目标分片的base值初始为0;再通过将所有的任务请求的jobid计算出对应的hash值;然后,通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置;最后,判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败;同时,还可取所述更新表中所有赋值的项相加,然后再加base值,以得到所述目标分片的任务请求数。这样,本发明的方法可以有效减少因redis乐观锁触发而导致部分任务请求请求失败的情况,通过更新表的设计可有效减少失败任务请求的重试,极大的缓解了业务系统的调度压力。It can be seen from the above method embodiments that the optimization method for task request scheduling provided by the present invention creates an update table based on the target sharding of the database in advance, where the base value of the target shard is initially 0; and then all the Calculate the corresponding hash value of the jobid of the task request; then, use the hash value to calculate the remainder of the length value of the update table, and subtract 1 from the calculated remainder to obtain the subscript position of the update table where the target task request is located. ; Finally, determine whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, a failure is returned. At the same time, all assigned items in the update table can also be obtained. Add, and then add the base value to get the number of task requests for the target shard. In this way, the method of the present invention can effectively reduce the failure of some task requests due to the triggering of redis optimistic lock. Through the design of the update table, the retry of failed task requests can be effectively reduced, which greatly relieves the scheduling pressure of the business system.
应该理解的是,虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤,这些操作步骤并不是必然按照实施例或流程图的顺序依次执行。实施例或流程图中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。需要说明的是,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员,根据本发明实施例的描述可以理解,不同实施例中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,亦可以交换执行等等。而且,实施例或流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流、交替或者同步地执行。It should be understood that although the present application provides method operation steps as described in the embodiments or flow charts, more or less operation steps may be included based on conventional or non-inventive efforts, and these operation steps are not necessarily implemented in accordance with Examples or flowcharts are executed in sequence. The sequence of steps listed in the embodiments or flowcharts is only one way of executing the sequence of many steps, and does not represent the only execution sequence. It should be noted that there does not necessarily exist a certain sequence between the above steps. Persons of ordinary skill in the art can understand based on the description of the embodiments of the present invention that in different embodiments, the above steps may have different execution orders. That is, it can be executed in parallel, executed interchangeably, and so on. Moreover, at least some of the steps in the embodiments or flowcharts may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but may be executed at different times. These sub-steps or The execution order of the stages is not necessarily sequential, but may be performed in turn, alternately or synchronously with other steps or sub-steps of other steps or at least part of the stages.
基于上述实施例,请参阅图2,本发明另一实施例还提供了一种任务请求调度的优化装置,其中,所述装置包括:Based on the above embodiment, please refer to Figure 2. Another embodiment of the present invention also provides an optimization device for task request scheduling, wherein the device includes:
创建模块11,用于预先创建一个更新表;Create module 11, used to create an update table in advance;
计算模块12,用于将所有的任务请求的jobid计算出对应的hash值;The calculation module 12 is used to calculate the corresponding hash values of the jobids of all task requests;
求余模块13,用于通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置;The remainder module 13 is used to calculate the remainder of the length value of the update table through the hash value, and subtract 1 from the remainder to obtain the subscript position of the update table where the target task request is located;
判断模块14,用于判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败。The judgment module 14 is used to judge whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, return failure.
进一步地,请参阅图4,所述的任务请求调度的优化装置,其中,所述预先创建一个更新表,包括:Further, please refer to Figure 4, the optimization device for task request scheduling, wherein the pre-created update table includes:
预先基于数据库的目标分片创建一个更新表。Pre-create an update table based on the target shard of the database.
进一步地,所述的任务请求调度的优化装置,其中,所述预先基于数据库的目标分片创建一个更新表,其中,所述目标分片的base值初始为0。Further, in the task request scheduling optimization device, an update table is created in advance based on the target fragment of the database, and the base value of the target fragment is initially 0.
具体实施时,本实施例中,预先基于数据库的目标分片创建一个更新表,其中,分片(sharding)是数据库分区的一种,它将大型数据库分成更小、更快、更容易管理的部分,例如,按地理位置拆分用户数据库就是一个常见的例子,位于东海岸的用户被分到一台服务器上,位于西海岸的用户被分在另一台服务器上;其次,所述目标分片的base值初始为0,base值即为当前时间所述目标分片内任务请求数的统计值。During specific implementation, in this embodiment, an update table is created in advance based on the target sharding of the database. Sharding is a type of database partitioning, which divides a large database into smaller, faster, and easier to manage For example, splitting the user database by geographical location is a common example. Users located on the East Coast are allocated to one server, and users located on the West Coast are allocated to another server. Secondly, the target sharding The base value is initially 0, and the base value is the statistical value of the number of task requests in the target shard at the current time.
进一步地,所述的任务请求调度的优化装置,其中,所述将所有的任务请求的jobid计算出对应的hash值。Further, in the task request scheduling optimization device, the corresponding hash values are calculated from the jobids of all task requests.
具体实施时,本实施例中,在预先基于数据库的目标分片创建一个更新表后,再将所有的任务请求的jobid计算出对应的hash值,其中,jobid表示job(任务请求)的不可变且唯一的标识符,业务系统内唯一。During specific implementation, in this embodiment, after an update table is created in advance based on the target sharding of the database, the corresponding hash values of the jobids of all task requests are calculated, where jobid represents the immutability of the job (task request). And the unique identifier is unique within the business system.
进一步地,所述的任务请求调度的优化装置,其中,所述通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置。Further, the optimization device for task request scheduling, wherein the remainder of the length value of the update table is calculated using the hash value, and the calculated remainder is subtracted by 1 to obtain the update table where the target task request is located. subscript position.
具体实施时,本实施例中,在将所有的任务请求的jobid计算出对应的hash值后,再通过所述hash值对所述更新表的长度值求余,求出的余-1即得到目标任务请求所在所述更新表的下标位置。During specific implementation, in this embodiment, after calculating the corresponding hash values of the jobids of all task requests, the remainder of the length value of the update table is calculated using the hash value, and the calculated remainder -1 is obtained. The subscript position of the update table where the target task request is located.
进一步地,所述的任务请求调度的优化装置,其中,所述判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败。Further, in the task request scheduling optimization device, the step is to determine whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, return failure.
具体实施时,本实施例中,在得到目标任务请求所在所述更新表的下标位置后,判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则说明已经被其他任务请求抢占,则返回失败。During specific implementation, in this embodiment, after obtaining the subscript position of the update table where the target task request is located, it is determined whether the subscript position is empty. If it is empty, a value of 1 is assigned to the subscript position. If If it is not empty, it means that it has been preempted by other task requests, and failure will be returned.
进一步地,所述的任务请求调度的优化装置,其中,所述判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败之后,包括:Further, the optimization device for task request scheduling, wherein the step of determining whether the subscript position is empty, and if it is empty, assigns a value of 1 to the subscript position, and if it is not empty, returns after failure. ,include:
取所述更新表中所有赋值的项相加,然后再加base值,以得到所述目标分片的任务请求数。Add up all the assigned items in the update table, and then add the base value to obtain the number of task requests for the target shard.
具体实施时,本实施例中,当需要得到所述目标分片的任务请求数时,则可以取所述更新表中所有赋值的项相加,然后再加base值后计算得到。During specific implementation, in this embodiment, when it is necessary to obtain the number of task requests of the target shard, all the assigned items in the update table can be added together, and then the base value is added and calculated.
由以上装置实施例可知,本发明提供的任务请求调度的优化装置,通过预先基于数据库的目标分片创建一个更新表,其中,所述目标分片的base值初始为0;再通过将所有的任务请求的jobid计算出对应的hash值;然后,通过所述hash值对所述更新表的长度值求余,求出的余减去1以得到目标任务请求所在所述更新表的下标位置;最后,判断所述下标位置是否为空,若为空,则为所述下标位置赋值1,若不为空,则返回失败;同时,还可取所述更新表中所有赋值的项相加,然后再加base值,以得到所述目标分片的任务请求数。这样,本发明的装置可以有效减少因redis乐观锁触发而导致部分任务请求请求失败的情况,通过更新表的设计可有效减少失败任务请求的重试,极大的缓解了业务系统的调度压力。It can be seen from the above device embodiments that the optimization device for task request scheduling provided by the present invention creates an update table based on the target fragmentation of the database in advance, wherein the base value of the target fragmentation is initially 0; and then all the Calculate the corresponding hash value of the jobid of the task request; then, use the hash value to calculate the remainder of the length value of the update table, and subtract 1 from the calculated remainder to obtain the subscript position of the update table where the target task request is located. ; Finally, determine whether the subscript position is empty. If it is empty, assign a value of 1 to the subscript position. If it is not empty, a failure is returned. At the same time, all assigned items in the update table can also be obtained. Add, and then add the base value to get the number of task requests for the target shard. In this way, the device of the present invention can effectively reduce the failure of some task requests due to the triggering of redis optimistic lock. Through the design of the update table, the retry of failed task requests can be effectively reduced, which greatly relieves the scheduling pressure of the business system.
基于上述实施例,请参阅图3,本发明另一实施例还提供了一种计算机设备,其中,所述计算机设备10包括:Based on the above embodiment, please refer to Figure 3. Another embodiment of the present invention further provides a computer device, wherein the computer device 10 includes:
存储器120以及一个或多个处理器110,图3中以一个处理器110为例进行介绍,处理器110和存储器120可以通过通信总线或者其他方式连接,图3中以通过通信总线连接为例。The memory 120 and one or more processors 110 are introduced in FIG. 3 by taking one processor 110 as an example. The processor 110 and the memory 120 may be connected through a communication bus or other means. In FIG. 3 , the connection through a communication bus is taken as an example.
处理器110用于完成计算机设备10的各种控制逻辑,其可以为通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、单片机、ARM(Acorn RISCMachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核、或任何其它这种配置。The processor 110 is used to complete various control logics of the computer device 10, which can be a general processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a single chip microcomputer, an ARM ( Acorn RISCMachine) or other programmable logic devices, discrete gate or transistor logic, discrete hardware components, or any combination of these components. Also, processor 110 may be any conventional processor, microprocessor, or state machine. Processor 110 may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors combined with a DSP core, or any other such configuration.
存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的任务请求调度的优化方法对应的计算机程序。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行计算机设备10的各种功能应用以及数据处理,即实现上述方法实施例中的任务请求调度的优化方法。As a non-volatile computer-readable storage medium, the memory 120 can be used to store non-volatile software programs, non-volatile computer executable programs and modules, such as the optimization method for task request scheduling in the embodiment of the present invention. computer program. The processor 110 executes various functional applications and data processing of the computer device 10 by running non-volatile software programs, instructions and units stored in the memory 120, that is, implementing the optimization method of task request scheduling in the above method embodiment. .
存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。The memory 120 may include a program storage area and a data storage area, where the program storage area may store an operating device and an application program required for at least one function; the storage data area may store data created according to the use of the computer device 10 , etc. In addition, the memory 120 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory 120 optionally includes memory located remotely relative to the processor 110 , and these remote memories may be connected to the computer device 10 through a network. Examples of the above-mentioned networks include but are not limited to the Internet, intranets, local area networks, mobile communication networks and combinations thereof.
一个或者多个单元存储在存储器120中,当被一个或者多个处理器110执行时,可实现如上述任一项方法实施例中的任务请求调度的优化方法,例如,可实现以上描述的图1中的方法步骤S100至步骤S400。One or more units are stored in the memory 120. When executed by one or more processors 110, the optimization method of task request scheduling in any of the above method embodiments can be implemented. For example, the above-described figure can be implemented. Method steps S100 to S400 in 1.
本领域技术人员可以理解,图3中示出的硬件结构示意图,仅仅是与本发明方案相关的部分结构的示意图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多的部件,或者组合某些部件,或者具有不同的部件布置。Those skilled in the art can understand that the schematic diagram of the hardware structure shown in Figure 3 is only a schematic diagram of a part of the structure related to the solution of the present invention, and does not constitute a limitation on the computer equipment to which the solution of the present invention is applied. A specific computer Devices may include more components than those shown in the figures, or certain components may be combined or have different arrangements of components.
基于上述实施例,本发明还提供了一种非易失性计算机可读存储介质,其中,所述非易失性计算机可读存储介质存储有计算机程序,所述计算机程序被至少一个处理器执行时,可实现如上述任一项方法实施例中的任务请求调度的优化方法,例如,可实现以上描述的图1中的方法步骤S100至步骤S400。Based on the above embodiments, the present invention also provides a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and the computer program is executed by at least one processor When , the optimization method of task request scheduling in any of the above method embodiments can be implemented. For example, the method steps S100 to S400 in Figure 1 described above can be implemented.
作为示例,非易失性存储介质能够包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦ROM(EEPROM)或闪速存储器。易失性存储器能够包括作为外部高速缓存存储器的随机存取存储器(RAM)。通过说明并非限制,RAM可以以诸如同步RAM(SRAM)、动态RAM、(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、Synchl ink DRAM(SLDRAM)以及直接Rambus(兰巴斯)RAM(DRRAM)之类的许多形式得到。本文中所描述的操作环境的所公开的存储器组件或存储器旨在包括这些和/或任何其他适合类型的存储器中的一个或多个。By way of example, non-volatile storage media can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) as external cache memory. By way of illustration and not limitation, RAM may be provided in a form such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchl ink DRAM (SLDRAM) As well as many forms such as direct Rambus RAM (DRRAM). The disclosed memory components or memories of the operating environments described herein are intended to include one or more of these and/or any other suitable types of memory.
本发明的另一种实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,可实现如上述任一项方法实施例中的任务请求调度的优化方法,例如,可实现以上描述的图1中的方法步骤S100至步骤S400。Another embodiment of the present invention provides a computer program product, the computer program product including a computer program stored on a non-volatile computer-readable storage medium, the computer program including program instructions, when the program When the instructions are executed by the processor, the optimization method of task request scheduling in any of the above method embodiments can be implemented. For example, the method steps S100 to S400 in Figure 1 described above can be implemented.
以上所描述的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际需要选择其中的部分或者全部模块来实现本实施例方案的目的。The embodiments described above are only illustrative, in which the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place. Or it can be distributed across multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存在于计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)执行各个实施例或者实施例的某些部分的方法。Through the description of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a general hardware platform, and of course can also be implemented by hardware. Based on this understanding, the part of the above technical solution that essentially contributes to the relevant technology can be embodied in the form of a software product. The computer software product can exist in a computer-readable storage medium, such as ROM/RAM, disk , optical disk, etc., including a number of instructions to cause a computer device (which can be a personal computer, a server, or a network device, etc.) to execute various embodiments or methods of certain parts of the embodiments.
除了其他之外,诸如“能够”、“能”、“可能”或“可以”之类的条件语言除非另外具体地陈述或者在如所使用的上下文内以其他方式理解,否则一般地旨在传达特定实施方式能包括(然而其他实施方式不包括)特定特征、元件和/或操作。因此,这样的条件语言一般地还旨在暗示特征、元件和/或操作对于一个或多个实施方式无论如何都是需要的或者一个或多个实施方式必须包括用于在有或没有输入或提示的情况下判定这些特征、元件和/或操作是否被包括或者将在任何特定实施方式中被执行的逻辑。Among other things, conditional language such as "could", "could", "could" or "could" is generally intended to convey that unless otherwise specifically stated or otherwise understood within the context in which it is used, Certain embodiments can include (whereas other embodiments do not) certain features, elements, and/or operations. Accordingly, such conditional language is also generally intended to imply that features, elements, and/or operations are in any event required for one or more embodiments or that one or more embodiments must be included for use with or without input or prompts. Logic that determines whether such features, elements, and/or operations are included or will be performed in any particular implementation.
已经在本文中在本说明书和附图中描述的内容包括能够提供一种任务请求调度的优化方法、装置、计算机设备以及非易失性计算机可读存储介质的示例。当然,不能够出于描述本公开的各种特征的目的来描述元件和/或方法的每个可以想象的组合,但是可以认识到,所公开的特征的许多另外的组合和置换是可能的。因此,显而易见的是,在不脱离本公开的范围或精神的情况下能够对本公开做出各种修改,但是,所有这些各种修改都应属于本发明所附权利要求的保护范围。此外,或在替代方案中,本公开的其他实施例从对本说明书和附图的考虑以及如本文中所呈现的本公开的实践中可能是显而易见的。意图是,本说明书和附图中所提出的示例在所有方面被认为是说明性的而非限制性的。尽管在本文中采用了特定术语,但是它们在通用和描述性意义上被使用并且不用于限制的目的。What has been described herein in this specification and the accompanying drawings includes examples that can provide an optimization method, apparatus, computer equipment, and non-volatile computer-readable storage media for task request scheduling. Of course, not every conceivable combination of elements and/or methods can be described for the purpose of describing the various features of the present disclosure, but it is recognized that many additional combinations and permutations of the disclosed features are possible. Therefore, it is obvious that various modifications can be made to the present disclosure without departing from the scope or spirit of the present disclosure, but all such various modifications should fall within the protection scope of the appended claims of the present invention. Additionally, or in the alternative, other embodiments of the disclosure may be apparent from a consideration of the specification and drawings, and practice of the disclosure as presented herein. It is intended that the examples set forth in the specification and drawings are to be considered in all respects as illustrative and not restrictive. Although specific terms are employed herein, they are used in a generic and descriptive sense and not for purpose of limitation.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311039347.2A CN117076450A (en) | 2023-08-17 | 2023-08-17 | Task request scheduling optimization method, device, computer equipment and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311039347.2A CN117076450A (en) | 2023-08-17 | 2023-08-17 | Task request scheduling optimization method, device, computer equipment and medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117076450A true CN117076450A (en) | 2023-11-17 |
Family
ID=88703668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311039347.2A Pending CN117076450A (en) | 2023-08-17 | 2023-08-17 | Task request scheduling optimization method, device, computer equipment and medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117076450A (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100185597A1 (en) * | 2006-01-27 | 2010-07-22 | International Business Machines Corporation | Method and Apparatus for Optimistic Locking Using SQL Select, Update, Delete, and Insert Statements |
CN104008100A (en) * | 2013-02-21 | 2014-08-27 | 纽海信息技术(上海)有限公司 | Cluster environment concurrent processing method |
CN106341492A (en) * | 2016-10-19 | 2017-01-18 | 杭州赛客网络科技有限公司 | Distributed memory data storing and reading method based on cloud communication service |
CN111858576A (en) * | 2019-04-25 | 2020-10-30 | 北京京东尚科信息技术有限公司 | Real-time message processing method, system, device, storage medium and electronic device |
-
2023
- 2023-08-17 CN CN202311039347.2A patent/CN117076450A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100185597A1 (en) * | 2006-01-27 | 2010-07-22 | International Business Machines Corporation | Method and Apparatus for Optimistic Locking Using SQL Select, Update, Delete, and Insert Statements |
CN104008100A (en) * | 2013-02-21 | 2014-08-27 | 纽海信息技术(上海)有限公司 | Cluster environment concurrent processing method |
CN106341492A (en) * | 2016-10-19 | 2017-01-18 | 杭州赛客网络科技有限公司 | Distributed memory data storing and reading method based on cloud communication service |
CN111858576A (en) * | 2019-04-25 | 2020-10-30 | 北京京东尚科信息技术有限公司 | Real-time message processing method, system, device, storage medium and electronic device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10594759B2 (en) | Efficiently executing concurrent operations that depend on each other in a streaming data environment | |
WO2020211579A1 (en) | Processing method, device and system for distributed bulk processing system | |
CN108304554B (en) | File splitting method and device, computer equipment and storage medium | |
US12314251B2 (en) | Transaction processing method and apparatus, computing device, and storage medium | |
CN110347489B (en) | A Stream Processing Method for Multi-center Data Collaborative Computing Based on Spark | |
CN107589915A (en) | Capacity information monitoring method, device and the equipment of a kind of distributed memory system | |
US20240202078A1 (en) | Intelligent backup scheduling and sizing | |
US11914569B2 (en) | Light weight redundancy tool for performing transactions | |
US20240403124A1 (en) | Divided main memory with computing device memory section and database memory section | |
CN111752961A (en) | A data processing method and device | |
CN116529726A (en) | Data synchronization method, device and medium between cloud database nodes | |
CN118245471A (en) | Database management method, computer device, storage medium and program product | |
CN106537321A (en) | Method and device for accessing file, and storage system | |
CN114116790A (en) | Data processing method and device | |
CN103064898A (en) | Business locking and unlocking method and device | |
RU2721235C2 (en) | Method and system for routing and execution of transactions | |
CN108595251B (en) | Dynamic graph updating method, device, storage engine interface and program medium | |
CN108933813B (en) | Method, system and storage medium for preventing reader starvation | |
CN117076450A (en) | Task request scheduling optimization method, device, computer equipment and medium | |
CN118689888A (en) | Database concurrent transaction management method, device, management system and medium | |
US9679015B2 (en) | Script converter | |
EP3923136A1 (en) | Hardware-accelerated computing system | |
US20200201792A1 (en) | Method and system for scheduling i/o operations for processing | |
CN119248808B (en) | Database table structure modification method and device, electronic equipment and storage medium | |
US20250061450A1 (en) | Ledger information access system having plurality of storage spaces, and performance method |
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 |