CN113282395A - Redis-based job request scheduling method, device, equipment and medium - Google Patents

Redis-based job request scheduling method, device, equipment and medium Download PDF

Info

Publication number
CN113282395A
CN113282395A CN202110643366.0A CN202110643366A CN113282395A CN 113282395 A CN113282395 A CN 113282395A CN 202110643366 A CN202110643366 A CN 202110643366A CN 113282395 A CN113282395 A CN 113282395A
Authority
CN
China
Prior art keywords
proxy
resource
job request
proxy resource
character set
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
Application number
CN202110643366.0A
Other languages
Chinese (zh)
Inventor
叶俊
徐玲
窦清昀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202110643366.0A priority Critical patent/CN113282395A/en
Publication of CN113282395A publication Critical patent/CN113282395A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Abstract

The invention provides a method, a device, equipment and a medium for scheduling job requests based on Redis. And then, according to a preset scheduling rule, acquiring a target proxy resource from a proxy resource list stored in the Redis cluster, wherein the target proxy resource meets the condition that the character set is consistent with the job request and/or the process executed by the proxy server is minimum. And finally, sending the job request to a proxy server corresponding to the target proxy resource for processing, and locking the target proxy resource in the Redis cluster. The agent resources, the job request queues and other information are stored in the Redis so as to realize quick access, the consistency of character sets and the idle degree are considered when the agent resources are scheduled, the soft load of job request scheduling is realized, and the efficiency of agent resource scheduling and the efficiency of job request execution are effectively improved.

Description

Redis-based job request scheduling method, device, equipment and medium
Technical Field
The invention relates to the technical field of computers, in particular to a method, a device, equipment and a medium for scheduling job requests based on Redis.
Background
With the rapid development of computer technology, computer and internet technologies are widely applied in various industries, and cluster systems are gradually applied in various fields.
In the prior art, in the financial field such as banking, a cluster system for analyzing and processing data at least includes a plurality of application servers and a plurality of proxy servers, generally, the number of application servers is greater than that of proxy servers, and an application server can send a job request to a proxy server to enable the proxy server to execute a corresponding job.
However, the application server traverses other application servers, which is inefficient in processing, resulting in inefficient processing of job requests.
Disclosure of Invention
Embodiments of the present invention provide a method, an apparatus, a device, and a medium for job request scheduling based on Redis, which are used to solve the problem in the prior art that an application server traverses other multiple application servers, and the processing efficiency is low, which results in low efficiency of processing job requests.
In a first aspect, an embodiment of the present invention provides a method for scheduling a job request based on Redis, including:
acquiring a job request to be processed from a job request queue in a Redis cluster according to a first-in first-out rule;
according to a preset scheduling rule, acquiring a target proxy resource from a proxy resource list stored in the Redis cluster, wherein a character set corresponding to the target proxy resource is consistent with the job request and/or a process executed by a proxy server corresponding to the target proxy resource is least;
and sending the job request to a proxy server corresponding to the target proxy resource for processing, and locking the target proxy resource in the Redis cluster.
In one embodiment, the method further comprises:
after determining that the proxy server returns the result of the job request to the corresponding application server, releasing the lock on the target proxy resource in the Redis cluster, and removing the job request from the head of the job request queue.
In one embodiment, the method further comprises:
when a job request of requesting proxy resources sent by any application server is received, the job request is added to the tail of a job request queue corresponding to a character set in the Redis cluster according to the character set of the application server.
In one embodiment, the scheduling rule includes: the character set consistency rule and/or the principle of minimum number of executing processes, wherein the agent resource list comprises a plurality of agent resources, and each agent resource comprises: proxy character set, IP address of proxy server, and port.
In a specific embodiment, the obtaining, according to a preset scheduling rule, a target proxy resource from a proxy resource list stored in the Redis cluster includes:
traversing each proxy resource in the proxy resource list, and if the number of processes being executed by the current proxy resource is 0 or less than the threshold value of the number of single proxy processes, determining that the current proxy resource is the target proxy resource;
alternatively, the first and second electrodes may be,
and traversing each proxy resource in the proxy resource list, and if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining that the current proxy resource is the target proxy resource.
Optionally, the obtaining a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule includes:
traversing each proxy resource in the proxy resource list, and if the number of processes executed by the current proxy resource is greater than 0, determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
Optionally, the obtaining a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule includes:
traversing each proxy resource in the proxy resource list, and determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
Optionally, a plurality of job request queues are arranged in the Redis cluster, and each job request queue is used for caching job requests corresponding to different character sets.
In a second aspect, an embodiment of the present invention provides a job request scheduling apparatus based on Redis, including:
the processing module is used for acquiring a job request to be processed from a job request queue in the Redis cluster according to a first-in first-out rule;
the processing module is further configured to obtain a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule, where a character set corresponding to the target proxy resource is consistent with the job request and/or a process executed by a proxy server corresponding to the target proxy resource is the least;
and the sending module is used for sending the job request to a proxy server corresponding to the target proxy resource for processing and locking the target proxy resource in the Redis cluster.
In one embodiment, the processing module is further configured to:
after determining that the proxy server returns the result of the job request to the corresponding application server, releasing the lock on the target proxy resource in the Redis cluster, and removing the job request from the head of the job request queue.
In one embodiment, the processing module is further configured to:
when a job request of requesting proxy resources sent by any application server is received, the job request is added to the tail of a job request queue corresponding to a character set in the Redis cluster according to the character set of the application server.
In one embodiment, the scheduling rule includes: the character set consistency rule and/or the principle of minimum number of executing processes, wherein the agent resource list comprises a plurality of agent resources, and each agent resource comprises: proxy character set, IP address of proxy server, and port.
In a specific embodiment, the processing module is specifically configured to:
traversing each proxy resource in the proxy resource list, and if the number of processes being executed by the current proxy resource is 0 or less than the threshold value of the number of single proxy processes, determining that the current proxy resource is the target proxy resource;
alternatively, the first and second electrodes may be,
and traversing each proxy resource in the proxy resource list, and if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining that the current proxy resource is the target proxy resource.
Optionally, the processing module is specifically configured to:
traversing each proxy resource in the proxy resource list, and if the number of processes executed by the current proxy resource is greater than 0, determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
Optionally, the processing module is specifically configured to:
traversing each proxy resource in the proxy resource list, and determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
Optionally, a plurality of job request queues are arranged in the Redis cluster, and each job request queue is used for caching job requests corresponding to different character sets.
In a third aspect, an embodiment of the present invention provides an electronic device, including:
a processor, a memory, a communication interface;
the memory is used for storing executable instructions of the processor;
wherein the processor is configured to perform the Redis-based job request scheduling method of any of the first aspects via execution of the executable instructions.
In a fourth aspect, an embodiment of the present invention provides a readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the method for Redis-based job request scheduling according to any one of the first aspect.
In a fifth aspect, an embodiment of the present invention provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the computer program is configured to implement the method for Redis-based job request scheduling according to any one of the first aspect.
In the method, the electronic device implementing the management function acquires the job request to be processed from the job request queue in the Redis cluster according to the first-in first-out rule. And then according to a preset scheduling rule, acquiring a target proxy resource from a proxy resource list stored in the Redis cluster, wherein the character set corresponding to the target proxy resource is consistent with the job request and/or the process executed by a proxy server corresponding to the target proxy resource is the least. And finally, sending the job request to a proxy server corresponding to the target proxy resource for processing, and locking the target proxy resource in the Redis cluster. The information such as the agent resource, the job request queue and the like is stored in the Redis so as to realize quick access, and the character set consistency and the idle degree are considered in the process of scheduling the agent resource, so that the soft load of job request scheduling is realized, and the efficiency of agent resource scheduling and the efficiency of job request execution are effectively improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
FIG. 1 is a schematic diagram of an application scenario of a Redis-based job request scheduling method provided in the present invention;
FIG. 2 is a flowchart illustrating a first embodiment of a Redis-based job request scheduling method according to the present invention;
FIG. 3 is a flowchart illustrating a second embodiment of a Redis-based job request scheduling method according to the present invention;
FIG. 4 is a diagram illustrating a job request queue according to the present invention;
FIG. 5 is a schematic diagram of a proxy resource scheduling method according to the present invention;
FIG. 6 is a schematic structural diagram of a Redis-based job request scheduling apparatus according to a first embodiment of the present invention;
fig. 7 is a schematic structural diagram of an electronic device provided in the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments based on the embodiments in the present invention, which can be made by those skilled in the art in light of the present disclosure, are within the scope of the present invention.
The terms "first," "second," "third," "fourth," and the like in the description and in the claims, as well as in the drawings, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in sequences other than those illustrated or described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
In the prior art, when an application server needs to schedule a proxy server to process a job request, other multiple application servers need to be traversed, which results in long processing time and low processing efficiency of the job request.
Aiming at the technical problem, the invention provides a Redis-based proxy scheduling method in a cluster environment, which has the core idea that: and managing the job request queue and the agent resource information through the Redis cache, and according to the character set consistency and/or the relative idle scheduling principle of the idle degree of the agent. Meanwhile, by combining the distributed locking technology of Redis, the soft load of agent scheduling is realized, abnormal conditions such as scheduling overtime and the like which may occur are considered, a corresponding solution is provided, and the efficiency of agent resource scheduling and agent job request execution is effectively improved.
Fig. 1 is a schematic view of an application scenario of a Redis-based job request scheduling method provided by the present invention, as shown in fig. 1, the scenario at least includes a plurality of application servers, a plurality of proxy servers, a Redis cluster, and an electronic device serving as a management end for implementing scheduling management, where the electronic device may monitor, through software, a job request that needs to be scheduled by proxy service resources and is sent by each application server, and may also quickly access the Redis cluster to manage a plurality of job request queues and proxy resources in the Redis cluster. The proxy server, also called a proxy client, or a data proxy, is configured to perform subsequent processing on the received job request, and return a processing result to the corresponding application server after obtaining the processing result.
Based on the application scenario, the following describes in detail the method for scheduling job request based on Redis according to the present invention by using several specific embodiments.
The terms involved in the present invention are explained as follows:
data agent: the system is also called a proxy server, a proxy client and the like, and is database client software deployed on a linux operating system, and used for connecting with a database server and sending corresponding processing instructions to submit to the server and obtain return results.
Redis: the system is an open source log-type and Key-Value database which is written by using ANSI C language, supports network, can be based on memory and can also be persistent, and provides Application Programming Interface (API) of multiple languages.
Fig. 2 is a flowchart illustrating a first embodiment of a method for scheduling a job request based on Redis according to the present invention, and as shown in fig. 2, the scheme is mainly applied to an electronic device for implementing a management scheduling function, and information interaction is required to be performed between the electronic device and an application server and between the electronic device and a proxy server, and specifically, the method for scheduling a job request based on Redis specifically includes the following steps:
s101: and acquiring the job request to be processed from a job request queue in the Redis cluster according to a first-in first-out rule.
In this step, the Redis cluster includes a plurality of job request queues, and each job request queue is used to cache job requests requiring scheduling of proxy resources, so as to avoid the problems of congestion and the like caused by scheduling of a plurality of job requests at the same time. According to the scheme, the job requests are added into the queue, and the ordered processing of the job requests is realized through the lightweight message queue.
Optionally, each job request queue is configured to cache job requests corresponding to different character sets. That is, the character sets of the application servers corresponding to the job requests stored in each job request queue are different.
When scheduling the job request, a job request to be processed may be obtained from the head of the queue storing the job requests to be processed, following the first-in first-out rule. If multiple job requests can be processed simultaneously and in parallel, multiple job requests to be processed may also be sequentially obtained from the head of one queue or multiple job requests to be processed may also be obtained from the heads of different queues, which is not limited in this embodiment.
S102: and acquiring a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule, wherein the character set corresponding to the target proxy resource is consistent with the job request and/or the process executed by the proxy server corresponding to the target proxy resource is minimum.
In this step, after the electronic device obtains the job request from the job request queue, it needs to perform resource adjustment on the job request. Also stored in the Redis cluster is a list of all schedulable proxy resources, which list includes a plurality of schedulable proxy resources, i.e. resource information.
In one particular implementation, each proxy resource at least: including the proxy character set, the IP address of the proxy server, and the port.
When the electronic equipment carries out resource scheduling on the job request, the resource scheduling needs to be carried out according to a certain scheduling rule, wherein the scheduling rule comprises a character set consistency rule and/or a principle of minimum number of execution processes. That is, the selected proxy resource at least needs to satisfy at least one of the rules of character set consistency and the rule of minimum number of executing processes, and can be identified as the proxy resource for finally processing the job request.
In a specific implementation of the scheme, the resource scheduling performed by the electronic device based on the scheduling rule and the proxy resource list at least includes the following implementation manners:
in a first implementation manner, each proxy resource in the proxy resource list is traversed, and if the number of processes being executed by the current proxy resource is 0 or is smaller than a single proxy process number threshold, the current proxy resource is determined to be the target proxy resource.
In the scheme, the proxy resources may be determined according to the order of the proxy resources stored in the proxy resource list or a random order, and first, a process corresponding to the proxy resource is queried, and it is determined whether the number of processes being processed by the current proxy resource is 0, and if the number is 0, it is verified that a proxy server corresponding to the proxy resource is idle, and the proxy resource may be allocated to the job request as a target proxy resource. Then subsequent determinations of other proxy resources are not made. If the number of processes being processed by the current proxy resource is greater than 0 but smaller than the threshold of the number of single proxy processes, that is, the processes that can be processed by the application server corresponding to the current proxy resource are not saturated yet, the proxy resource may also be allocated to the job request as the target proxy resource, and determination of other subsequent proxy resources is no longer performed.
The target proxy resource determined by the implementation mode only meets the principle that the processes executed by the proxy server in the scheduling rule are minimum or relatively few.
In a second implementation manner, each proxy resource in the proxy resource list is traversed, and if a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request, the current proxy resource is determined to be the target proxy resource.
In the scheme, the proxy resources may be determined according to the order of the proxy resources stored in the proxy resource list or a random order, first, a character set in the current proxy resource is queried, then a character set of an application server sending the job request is obtained, whether the character set of the current proxy resource is consistent with the character set corresponding to the job request is determined, if so, the current proxy resource is allocated to the job request, and if not, the next proxy resource is continuously determined until the proxy resource with the consistent character set is determined as the target proxy resource.
The target agent resource determined by the implementation mode only meets the character set consistency rule in the scheduling rule.
In a third implementation manner, each proxy resource in the proxy resource list is traversed, and if the number of processes executed by the current proxy resource is greater than 0, whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request is determined;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
In the scheme, different from the two modes, the determined target agent resource needs to simultaneously meet the principle of minimum process number and the character set consistency rule.
In the scheme, each proxy resource can be determined in sequence according to the order of the proxy resources stored in the proxy resource list or a random order. And if the number of the processes which are executed by the current proxy resource is determined to be 0, the target proxy resource is directly determined. If the number of the processes executed by the current proxy resource is greater than 0, determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request; if the two processes are inconsistent, the next agent resource is directly confirmed, and if the two processes are consistent, whether the number of the processes currently executed by the current agent resource is smaller than a single agent process threshold value needs to be judged, that is, whether the execution process is saturated needs to be determined. And if the number of the executing processes is less than the threshold value of the number of the single agent processes, determining the current agent resource as the target agent resource, and if the number of the executing processes is greater than or equal to the threshold value of the number of the single agent processes, determining the next agent resource.
In a fourth implementation manner, each proxy resource in the proxy resource list is traversed, and whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request is determined;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
In the scheme, different from the two modes, the determined target agent resource needs to simultaneously meet the principle of minimum process number and the character set consistency rule. The main difference from the third method is that the character set consistency is determined first, and then the number of strokes is determined.
In the scheme, each proxy resource can be determined in sequence according to the order of the proxy resources stored in the proxy resource list or a random order. Firstly, determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to a job request; if the two processes are inconsistent, the next agent resource is directly confirmed, and if the two processes are consistent, whether the number of the processes currently executed by the current agent resource is smaller than a single agent process threshold value needs to be judged, that is, whether the execution process is saturated needs to be determined. And if the number of the executing processes is less than the threshold value of the number of the single agent processes, determining the current agent resource as the target agent resource, and if the number of the executing processes is greater than or equal to the threshold value of the number of the single agent processes, determining the next agent resource.
S103: and sending the job request to a proxy server corresponding to the target proxy resource for processing, and locking the target proxy resource in the Redis cluster.
In this step, after the target proxy resource for processing the job request is determined in the above manner, the job request may be sent to the corresponding proxy server for processing based on the IP address and the port of the proxy server in the target proxy resource.
Further, in order to avoid that the proxy resource is updated by other servers in other clusters, a distributed lock may be applied to acquire and lock the target proxy resource, mainly to lock the execution information of the target proxy resource. The distributed lock for the target proxy resource may be removed until after the job request execution completes.
According to the Redis-based job request scheduling method provided by the embodiment, the electronic device with the management function acquires the job request to be processed from the job request queue in the Redis cluster according to the first-in first-out rule. And then, according to a preset scheduling rule, acquiring a target proxy resource from a proxy resource list stored in the Redis cluster, wherein the target proxy resource meets the condition that the character set is consistent with the job request and/or the process executed by the proxy server is minimum. And finally, sending the job request to a proxy server corresponding to the target proxy resource for processing, and locking the target proxy resource in the Redis cluster. The agent resources, the job request queues and other information are stored in the Redis so as to realize quick access, the consistency of character sets and the idle degree are considered when the agent resources are scheduled, the soft load of job request scheduling is realized, and the efficiency of agent resource scheduling and the efficiency of job request execution are effectively improved.
Fig. 3 is a flowchart illustrating a second embodiment of a method for scheduling job requests based on Redis according to the present invention, and as shown in fig. 3, after completing execution of a job request and returning a result to an application server based on the first embodiment, the method for scheduling job requests based on Redis further includes the following steps:
s201: after determining that the proxy server returns the result of the job request to the corresponding application server, releasing the lock on the target proxy resource in the Redis cluster, and removing the job request from the head of the job request queue.
On the basis of the above embodiment, after the proxy server corresponding to the target proxy resource completes processing of the job request and returns the processing result to the corresponding application server, the target proxy resource may be continuously allocated to other job requests, and at this time, the target proxy resource in the Redis cluster may be released, that is, the distributed lock of the target proxy resource may be deleted.
At the same time, since the job request has been processed, the job request in the job request queue is also removed so that the next job request in the queue is scheduled for processing.
Optionally, on the basis of any implementation manner, multiple job request queues corresponding to multiple character sets are stored in the Redis cluster, and after any application server sends a job request, the job request may be added to the corresponding job request queue to perform resource scheduling according to a queue order. The specific Redis-based job request scheduling method further comprises the following steps:
s301: and when a job request for requesting proxy resources sent by any application server is received, adding the job request to the tail of a job request queue corresponding to the character set in the Redis cluster according to the character set of the application server.
On the basis of any of the above embodiments, for any time, after receiving a job request sent by any application server, unlike the prior art, in the present solution, the job request is added to the tail of the job request queue corresponding to the character set in the Redis cluster according to the character set of the application server without traversing other application servers. And the waiting electronic equipment carries out scheduling processing in sequence according to a first-in first-out principle and the specific resource information in the proxy resource list.
The Redis-based job request scheduling method provided by the invention realizes an agent scheduling algorithm based on Redis in a cluster mode, namely, firstly, job request queue management of requesting agent resources is carried out, data agents (agent resources or agent servers) meeting conditions in an agent resource list are circularly traversed according to a certain scheduling rule, after the corresponding agent resources are obtained, Redis distributed locks are requested to carry out information updating of hit agents and request queues, then next job requests in the queues are continuously processed, mutual exclusion operation on shared resources at high concurrency in the cluster mode is realized, the problem of data consistency when agent key execution information is updated is ensured, and key information such as queue information, agent execution information and the like is cached in Redis, so that the access efficiency is also improved.
Based on the solutions of the foregoing embodiments, the method for scheduling a job request based on Redis according to the present invention is further described below by way of examples.
In the scheme provided by the invention, a plurality of data agents, namely a plurality of agent servers exist, and the management end (namely the electronic equipment) calls the data agents to complete the function of executing the job step according to a certain scheduling rule. F5 may solve the problem to some extent but is expensive and does not allow for deployment of the agent entirely according to established rules. Therefore, it is necessary to establish a soft load scheduling mechanism capable of performing agent scheduling according to project requirement rules (algorithms), and developers are required to design a model (queue) conforming to scheduling and a corresponding information update mutual exclusion mechanism for sharing agent resources, ensure that the scheduling model can normally operate in a cluster environment to realize optimal scheduling of agents, and consider the processing of abnormal conditions such as scheduling overtime which may occur in scheduling.
In the specific implementation of the scheme, the following functions are implemented:
first, queue management of job requests;
secondly, scheduling rules of resource scheduling;
third, implementation of specific resource scheduling.
The following describes these functions separately:
first, queue management of job requests
Under a cluster deployment mode, a plurality of application servers apply for proxy resources when executing job requests (also called job steps), a requester of the proxy resources is abstracted into a queue model for management according to the principle of first request and first processing, and Redis is used for realizing lightweight message queues. FIG. 4 is a diagram illustrating a job request queue according to the present invention. As shown in fig. 4, Redis provides push and pop commands, and the job request queue list in Redis is ordered and can be repeated according to the principle of First-in First-out (FIFO), and when used as the job request queue, it is enqueued using rpush operation, and dequeued using lpop operation, i.e. right-in left-out.
In the scheme, job request queues requesting agent resources are classified and stored in Redis according to character sets, each time a new job request needs to apply for the agent resources, the new job request is added to the tail of the job request queue corresponding to the character set, a program monitors the job request queues, and polls the job request at the head of the queue each time, if corresponding agent resources are allocated to the job step according to a certain scheduling algorithm, the job request is removed from the head of the queue, otherwise, the agent resource scheduling of the job request is continuously processed after sleeping for a period of time, until all job requests in the queues are processed, corresponding agent resources are allocated.
Secondly, scheduling rules of resource scheduling;
in the scheme, the agent scheduling follows the following scheduling rules:
1) rule of character set consistency
The proxy resources (namely the data proxy) are divided into proxy resources with different character set types according to the character sets supported by the proxy resources, such as a proxy resource A supporting a UTF-8 character set and a proxy resource B supporting a GBK character set, if the character set of the database of the current request job request is UTF-8, the proxy resource A is selected according to the principle of consistent character sets, and the problem of messy codes is ensured not to occur.
2) Principle of few executing processes
The current execution process number (namely the idle degree) of the agent resource is an important consideration factor, namely the agent resource A and the agent resource B with the same character set type, if A currently has 1 data job in execution and B currently has no job in execution being idle, the scheduling algorithm preferentially selects the idle agent resource B; if both a and B currently have data jobs to execute, e.g., a currently has 1 data job to execute and B currently has 3 data jobs to execute, the scheduling algorithm will select agent resource a that has a smaller number of currently executed jobs, i.e., is relatively free.
Third, implementation of specific resource scheduling.
After the queue management scheduling requester and the corresponding scheduling rule are made clear, the specific implementation of scheduling resources by the scheduling rule is realized. Firstly, it is to ensure that the scheduling of job request can still be robustly processed under the condition of high concurrency without paralysis or malfunction, and secondly, after a specific agent resource is allocated to a requester, it is to implement locking operation of the agent resource so as to prevent the agent resource from being continuously requested by the next job request. For the above reasons, and the inherent atomic operation and distributed lock technology of Redis and better support for high concurrency, Redis is selected to be used as a medium for storing relevant information of proxy resources and distributed locks.
The specific implementation of resource scheduling is as follows: firstly, model initialization can be carried out, relevant information of the agent resource is stored in Redis, namely, the 'dbAgent' + IP address + port of the agent is used as a key value for storing the agent resource in Redis, and a corresponding value is attribute information of the agent and mainly comprises the current execution process number and an agent character set of the agent. The algorithm circularly traverses the proxy resources in the proxy resource list, firstly, whether the current execution process number of the current proxy resource is 0 is judged, and if 0 indicates that the proxy total yard does not have the task currently executed, the proxy resource is selected as the target proxy resource; if not 0, then it is determined whether the character set of the current proxy resource is consistent with the database character set of the requestor (i.e. the application server that sent the job request), if not, continuously and circularly reading the next agent resource in the agent resource list, if so, judging whether the current execution process number of the agent resource is smaller than the concurrency upper limit of the single agent process number, namely judging whether the agent resource is saturated, if not, continuing to circulate the next agent resource, if yes, selecting the current execution process number of the agent resource as a comparison reference of the execution process number, recording the sequence number of the agent resource, continuing to circulate the next agent resource, comparing the current execution process number with the comparison reference of the execution process number, selecting the smaller value of the current execution process number and the comparison reference of the execution process number as a new execution process number, and continuing to circulate until finding the agent resource with the least current execution process number in the agent resource list. And then acquiring a distributed Lock of the agent resource, and caching the distributed Lock in Redis by taking 'dbAgent' + IP address of the agent + port + 'Lock' as a key word of the distributed Lock. Fig. 5 is a schematic diagram of proxy resource scheduling provided by the present invention, and as shown in fig. 5, after applying for obtaining the distributed lock of the proxy resource successfully, the execution information of the proxy resource is updated to avoid being updated by other servers in the cluster at the same time, so that concurrent control of the user in the cluster environment is achieved. And after the execution information of the agent resource is updated, deleting the distributed lock.
In a cluster scene, distributed lock control is made for an updating machine of execution information of multi-request agent resources. The distributed lock is more complex to apply to a distributed system environment than a single lock, and the lock needs to have the following characteristics: namely mutual exclusivity, robustness, uniqueness and high availability. Mutual exclusivity is where only one client can hold a lock at any time. Other clients attempting to acquire the lock will fail and return or block waiting; robustness means that one client crashes during the lock holding period without actively releasing the lock, and the subsequent other clients need to be ensured to be capable of successfully locking; the uniqueness is that locking and unlocking must be the same client, the client cannot release the lock added by others, and the lock held by the client cannot be released by other clients; the high availability does not need to depend on all Redis nodes to work normally, and the client can perform locking and unlocking operations as long as most of the Redis nodes operate normally. In the scheme, a strategy that the Redis lock adopts serial calculation to a plurality of service requests is utilized, and the distributed lock function is realized by using the atomicity of setNX operation of the Redis. When a plurality of job requests need to acquire a lock for updating the execution information of the agent resource, an application end sends a setNX command, if the current lock exists, no operation is performed, and if other job requests already acquire the lock, the current job request polls to wait for acquiring the update permission of the execution information of the agent resource; if no lock is currently present (key does not exist), then a locking operation is performed and a validity period is set for the lock, with value indicating the locked client. The locking operation satisfies several characteristics of a distributed lock. Firstly, the set () adds NX parameters, which can ensure that the function can not be successfully called if the existing key exists, i.e. only one client can hold the lock, thereby satisfying the mutual exclusion. Secondly, due to the fact that the expiration time is set for the lock, even if the holder of the lock breaks down subsequently and does not unlock, the lock can be automatically unlocked (namely, the key is deleted) due to the expiration time, and deadlock cannot occur. Finally, since value is assigned as requestId, representing the locked client request identifier, it can be checked whether the client is the same client when the client is unlocked.
The scheme realizes the scheduling of the agent resource based on Redis in the cluster mode, namely, the Redis is adopted to store the job request queue requesting the agent resource, the job request at the head of the queue is taken out each time during the scheduling according to the first-in first-out principle, the data agents meeting the conditions in the agent resource list are circularly traversed, the scheduling rule of the most idle agent is obtained each time according to the same character set, and the Redis distributed lock technology is combined, so that the mutual exclusion operation on the shared resource during high concurrency in the cluster mode is realized, the data consistency problem during the updating of the key execution information of the agent resource is ensured, and meanwhile, the key information such as the queue information, the execution information of the agent and the like is cached in the Redis, and the access efficiency is also improved.
FIG. 6 is a schematic structural diagram of a Redis-based job request scheduling apparatus according to a first embodiment of the present invention; as shown in fig. 6, the Redis-based job request scheduling apparatus 10 includes:
the processing module 11 is configured to obtain a job request to be processed from a job request queue in a Redis cluster according to a first-in first-out rule;
the processing module 11 is further configured to obtain a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule, where a character set corresponding to the target proxy resource is consistent with the job request and/or a process executed by a proxy server corresponding to the target proxy resource is the least;
a sending module 12, configured to send the job request to a proxy server corresponding to the target proxy resource for processing, and lock the target proxy resource in the Redis cluster.
The Redis-based job request scheduling device provided by this embodiment is used for implementing a technical scheme of an electronic device side for implementing a management function in any of the foregoing method embodiments, and the implementation principle and technical effect are similar, information such as an agent resource and a job request queue is stored in Redis in advance so as to implement quick access, and in the process of scheduling the agent resource, the character set consistency and the idle degree are considered, so that a soft load of job request scheduling is implemented, and the efficiency of agent resource scheduling and the efficiency of job request execution are effectively improved.
On the basis of the foregoing embodiment, in a specific implementation of the Redis-based job request scheduling apparatus 10, the processing module 11 is further configured to:
after determining that the proxy server returns the result of the job request to the corresponding application server, releasing the lock on the target proxy resource in the Redis cluster, and removing the job request from the head of the job request queue.
In a specific embodiment, the processing module 11 is further configured to:
when a job request of requesting proxy resources sent by any application server is received, the job request is added to the tail of a job request queue corresponding to a character set in the Redis cluster according to the character set of the application server.
In one embodiment, the scheduling rule includes: the character set consistency rule and/or the principle of minimum number of executing processes, wherein the agent resource list comprises a plurality of agent resources, and each agent resource comprises: proxy character set, IP address of proxy server, and port.
In a specific embodiment, the processing module 11 is specifically configured to:
traversing each proxy resource in the proxy resource list, and if the number of processes being executed by the current proxy resource is 0 or less than the threshold value of the number of single proxy processes, determining that the current proxy resource is the target proxy resource;
alternatively, the first and second electrodes may be,
and traversing each proxy resource in the proxy resource list, and if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining that the current proxy resource is the target proxy resource.
Optionally, the processing module 11 is specifically configured to:
traversing each proxy resource in the proxy resource list, and if the number of processes executed by the current proxy resource is greater than 0, determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
Optionally, the processing module 11 is specifically configured to:
traversing each proxy resource in the proxy resource list, and determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
Optionally, a plurality of job request queues are arranged in the Redis cluster, and each job request queue is used for caching job requests corresponding to different character sets.
The Redis-based job request scheduling device provided in this embodiment is configured to execute the technical solution in any one of the foregoing method embodiments, and the implementation principle and the technical effect are similar, which are not described herein again.
Fig. 7 is a schematic structural diagram of an electronic device provided in the present invention. As shown in fig. 7, the electronic apparatus 100 includes:
a processor 111, a memory 112, and a communication interface 113;
the memory 112 is used for storing executable instructions of the processor 111;
wherein the processor 111 is configured to perform the solution in any of the method embodiments described above via execution of the executable instructions.
Alternatively, the memory 112 may be separate or integrated with the processor 111.
Optionally, when the memory 112 is a device independent from the processor 111, the electronic device 100 may further include:
and the bus is used for connecting the devices.
In a specific implementation, the electronic device may be a device that is independently configured to schedule an application server, a Redis cluster, and a resource server, or may be any application server, and this is not limited in this scheme.
An embodiment of the present invention further provides a readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the method for scheduling a Redis-based job request provided in any of the foregoing embodiments.
An embodiment of the present invention further provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the computer program is configured to implement the method for scheduling a job request based on Redis provided in any of the foregoing method embodiments.
Those of ordinary skill in the art will understand that: all or a portion of the steps of implementing the above-described method embodiments may be performed by hardware associated with program instructions. The program may be stored in a computer-readable storage medium. When executed, the program performs steps comprising the method embodiments described above; and the aforementioned storage medium includes: various media that can store program codes, such as ROM, RAM, magnetic or optical disks.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.

Claims (12)

1. A Redis-based job request scheduling method is characterized by comprising the following steps:
acquiring a job request to be processed from a job request queue in a Redis cluster according to a first-in first-out rule;
according to a preset scheduling rule, acquiring a target proxy resource from a proxy resource list stored in the Redis cluster, wherein a character set corresponding to the target proxy resource is consistent with the job request and/or a process executed by a proxy server corresponding to the target proxy resource is least;
and sending the job request to a proxy server corresponding to the target proxy resource for processing, and locking the target proxy resource in the Redis cluster.
2. The method of claim 1, further comprising:
after determining that the proxy server returns the result of the job request to the corresponding application server, releasing the lock on the target proxy resource in the Redis cluster, and removing the job request from the head of the job request queue.
3. The method of claim 1, further comprising:
when a job request of requesting proxy resources sent by any application server is received, the job request is added to the tail of a job request queue corresponding to a character set in the Redis cluster according to the character set of the application server.
4. The method according to any of claims 1 to 3, wherein the scheduling rule comprises: the character set consistency rule and/or the principle of minimum number of executing processes, wherein the agent resource list comprises a plurality of agent resources, and each agent resource comprises: proxy character set, IP address of proxy server, and port.
5. The method according to claim 4, wherein the obtaining a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule comprises:
traversing each proxy resource in the proxy resource list, and if the number of processes being executed by the current proxy resource is 0 or less than the threshold value of the number of single proxy processes, determining that the current proxy resource is the target proxy resource;
alternatively, the first and second electrodes may be,
and traversing each proxy resource in the proxy resource list, and if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining that the current proxy resource is the target proxy resource.
6. The method according to claim 4, wherein the obtaining a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule comprises:
traversing each proxy resource in the proxy resource list, and if the number of processes executed by the current proxy resource is greater than 0, determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
7. The method according to claim 4, wherein the obtaining a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule comprises:
traversing each proxy resource in the proxy resource list, and determining whether a proxy character set in the current proxy resource is consistent with a character set corresponding to the job request;
if the proxy character set in the current proxy resource is consistent with the character set corresponding to the job request, determining whether the number of the processes executed by the current proxy resource is smaller than a single proxy process number threshold value;
if the number of the processes executed by the current proxy resource is smaller than the threshold value of the number of the single proxy processes, determining the current proxy resource as the target proxy resource;
and if the proxy character set in the current proxy resource is inconsistent with the character set corresponding to the job request, or the number of processes being executed by the current proxy resource is greater than or equal to the threshold value of the number of single proxy processes, determining the next proxy resource.
8. The method according to any one of claims 1 to 3, wherein a plurality of job request queues are arranged in the Redis cluster, and each job request queue is used for buffering job requests corresponding to different character sets.
9. A Redis-based job request scheduling apparatus, comprising:
the processing module is used for acquiring a job request to be processed from a job request queue in the Redis cluster according to a first-in first-out rule;
the processing module is further configured to obtain a target proxy resource from a proxy resource list stored in the Redis cluster according to a preset scheduling rule, where a character set corresponding to the target proxy resource is consistent with the job request and/or a process executed by a proxy server corresponding to the target proxy resource is the least;
and the sending module is used for sending the job request to a proxy server corresponding to the target proxy resource for processing and locking the target proxy resource in the Redis cluster.
10. An electronic device, comprising:
a processor, a memory, a communication interface;
the memory is used for storing executable instructions of the processor;
wherein the processor is configured to perform the Redis-based job request scheduling method of any of claims 1 to 8 via execution of the executable instructions.
11. A readable storage medium having stored thereon a computer program, wherein the computer program, when executed by a processor, implements the Redis-based job request scheduling method of any of claims 1 to 8.
12. A computer program product comprising a computer program which, when executed by a processor, is adapted to carry out the method of Redis-based job request scheduling of any of claims 1 to 8.
CN202110643366.0A 2021-06-09 2021-06-09 Redis-based job request scheduling method, device, equipment and medium Pending CN113282395A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110643366.0A CN113282395A (en) 2021-06-09 2021-06-09 Redis-based job request scheduling method, device, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110643366.0A CN113282395A (en) 2021-06-09 2021-06-09 Redis-based job request scheduling method, device, equipment and medium

Publications (1)

Publication Number Publication Date
CN113282395A true CN113282395A (en) 2021-08-20

Family

ID=77283996

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110643366.0A Pending CN113282395A (en) 2021-06-09 2021-06-09 Redis-based job request scheduling method, device, equipment and medium

Country Status (1)

Country Link
CN (1) CN113282395A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679495A (en) * 2022-02-08 2022-06-28 阿里云计算有限公司 Scheduling arrangement method and scheduling execution method for resource service operation request
CN114884901A (en) * 2022-04-14 2022-08-09 中国农业银行股份有限公司 Resource scheduling method and device
CN117714537A (en) * 2024-02-06 2024-03-15 湖南四方天箭信息科技有限公司 Access method, device, terminal and storage medium

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109450803A (en) * 2018-09-11 2019-03-08 广东神马搜索科技有限公司 Traffic scheduling method, device and system
CN109743366A (en) * 2018-12-21 2019-05-10 苏宁易购集团股份有限公司 A kind of resource locking method, apparatus and system for scene of more living
WO2020052301A1 (en) * 2018-09-11 2020-03-19 华为技术有限公司 Resource scheduling method and device
CN111338770A (en) * 2020-02-12 2020-06-26 咪咕文化科技有限公司 Task scheduling method, server and computer readable storage medium
CN111813513A (en) * 2020-06-24 2020-10-23 中国平安人寿保险股份有限公司 Real-time task scheduling method, device, equipment and medium based on distribution
CN111897663A (en) * 2020-07-30 2020-11-06 平安科技(深圳)有限公司 Interface calling method and device, computer equipment and storage medium
CN112162865A (en) * 2020-11-03 2021-01-01 中国工商银行股份有限公司 Server scheduling method and device and server
CN112231106A (en) * 2020-10-26 2021-01-15 中国工商银行股份有限公司 Access data processing method and device for Redis cluster
CN112416553A (en) * 2020-11-20 2021-02-26 平安普惠企业管理有限公司 Method, system and device for processing underwriting task, server and readable storage medium
US11032392B1 (en) * 2019-03-21 2021-06-08 Amazon Technologies, Inc. Including prior request performance information in requests to schedule subsequent request performance

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109450803A (en) * 2018-09-11 2019-03-08 广东神马搜索科技有限公司 Traffic scheduling method, device and system
WO2020052301A1 (en) * 2018-09-11 2020-03-19 华为技术有限公司 Resource scheduling method and device
CN109743366A (en) * 2018-12-21 2019-05-10 苏宁易购集团股份有限公司 A kind of resource locking method, apparatus and system for scene of more living
US11032392B1 (en) * 2019-03-21 2021-06-08 Amazon Technologies, Inc. Including prior request performance information in requests to schedule subsequent request performance
CN111338770A (en) * 2020-02-12 2020-06-26 咪咕文化科技有限公司 Task scheduling method, server and computer readable storage medium
CN111813513A (en) * 2020-06-24 2020-10-23 中国平安人寿保险股份有限公司 Real-time task scheduling method, device, equipment and medium based on distribution
CN111897663A (en) * 2020-07-30 2020-11-06 平安科技(深圳)有限公司 Interface calling method and device, computer equipment and storage medium
CN112231106A (en) * 2020-10-26 2021-01-15 中国工商银行股份有限公司 Access data processing method and device for Redis cluster
CN112162865A (en) * 2020-11-03 2021-01-01 中国工商银行股份有限公司 Server scheduling method and device and server
CN112416553A (en) * 2020-11-20 2021-02-26 平安普惠企业管理有限公司 Method, system and device for processing underwriting task, server and readable storage medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679495A (en) * 2022-02-08 2022-06-28 阿里云计算有限公司 Scheduling arrangement method and scheduling execution method for resource service operation request
CN114679495B (en) * 2022-02-08 2024-01-05 阿里云计算有限公司 Scheduling method and scheduling execution method for resource service operation request
CN114884901A (en) * 2022-04-14 2022-08-09 中国农业银行股份有限公司 Resource scheduling method and device
CN117714537A (en) * 2024-02-06 2024-03-15 湖南四方天箭信息科技有限公司 Access method, device, terminal and storage medium
CN117714537B (en) * 2024-02-06 2024-04-16 湖南四方天箭信息科技有限公司 Access method, device, terminal and storage medium

Similar Documents

Publication Publication Date Title
US10067791B2 (en) Methods and apparatus for resource management in cluster computing
CN113282395A (en) Redis-based job request scheduling method, device, equipment and medium
US8996469B2 (en) Methods and apparatus for job state tracking in cluster computing
JP4569846B2 (en) I / O node control method and method
US20190163545A1 (en) Messages with delayed delivery in an in-database sharded queue
US8095657B2 (en) First thread lock management for distributed data systems
US9491238B2 (en) Rapid client-side component processing based on component relationships
US10033816B2 (en) Workflow service using state transfer
US5687372A (en) Customer information control system and method in a loosely coupled parallel processing environment
US10901785B2 (en) Task deployment method, task deployment apparatus, and storage medium
US8756613B2 (en) Scalable, parallel processing of messages while enforcing custom sequencing criteria
US9804889B2 (en) Methods and apparatus for state objects in cluster computing
US9535756B2 (en) Latency-hiding context management for concurrent distributed tasks in a distributed system
US7770177B2 (en) System for memory reclamation based on thread entry and release request times
US8666958B2 (en) Approaches to reducing lock communications in a shared disk database
CA2176996A1 (en) Customer information control system and method with transaction serialization control functions in a loosely coupled parallel processing environment
CN111163140A (en) Method, apparatus and computer readable storage medium for resource acquisition and allocation
JP4607999B2 (en) How to handle lock-related inconsistencies
CN108737485B (en) Method and system for operating resources of Internet of things
US20150067689A1 (en) Method, system, and program for scheduling jobs in a computing system
US10606795B2 (en) Methods for managing a buffer cache and devices thereof
US20150106422A1 (en) System and method for server selection using competitive evaluation
CN114205354B (en) Event management system, event management method, server, and storage medium
CN115576684A (en) Task processing method and device, electronic equipment and storage medium
CN112445763B (en) File operation method and device, electronic equipment and storage medium

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