CN117579705B - System and method for dynamically scheduling servers based on batch data requests - Google Patents
System and method for dynamically scheduling servers based on batch data requests Download PDFInfo
- Publication number
- CN117579705B CN117579705B CN202410059684.6A CN202410059684A CN117579705B CN 117579705 B CN117579705 B CN 117579705B CN 202410059684 A CN202410059684 A CN 202410059684A CN 117579705 B CN117579705 B CN 117579705B
- Authority
- CN
- China
- Prior art keywords
- request
- instruction
- preset
- scheduling unit
- forwarding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000001105 regulatory effect Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 16
- 238000005457 optimization Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/10015—Access to distributed or replicated servers, e.g. using brokers
-
- 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
The invention belongs to the technical field of data processing, and provides a server dynamic scheduling system and method based on batch data request, which mainly comprise the following steps: the server receives the request instructions in real time, a first scheduling unit is preset, whether the forwarding conditions of the wired request instructions are met or not is judged according to the number of the wired request instructions corresponding to each request type in a cached first request queue, and when the forwarding conditions are met, the wired request instructions are respectively forwarded to a corresponding instruction receiving unit according to the request types; the second scheduling unit is preset, whether the forwarding conditions of the wireless request instructions are met or not is judged according to the number of the wireless request instructions corresponding to each request type in the cached second request queue, and when the forwarding conditions are met, the wireless request instructions are respectively forwarded to the corresponding instruction receiving units according to the request types. The invention does not need to separately set the scheduling unit, and the scheduling unit in the server can be dynamically changed, so that the request instruction can be ensured to reach the corresponding instruction receiving unit in the server with the lowest packet loss rate.
Description
Technical Field
The invention relates to the technical field of data processing, in particular to a server dynamic scheduling system and method based on batch data requests.
Background
At present, as the data processing magnitude of the server is continuously improved, the number of clients allowed to be communicated with the same server is increased, for the clients with authenticated identities, the number of request instructions sent to the server is massive, meanwhile, the server can also receive illegal instructions, so that the server can face massive data requests in the same period, and the server responds to massive data requests in real time mostly, therefore, the server needs to adopt a reasonable instruction processing mode when feeding back data to the clients due to excessive request instructions, the feedback time is prolonged, the packet loss rate is obviously excessive, and even the situation of dead halt is avoided.
In the prior art, the problem is mostly solved by adopting the concept of 'load balancing', however, in the existing load balancing scheme, when the server is faced with a batch data request, a fixed processing chip is mostly arranged in the server, the data crowding phenomenon is reasonably avoided through screening and classifying of request instructions by the chip, however, the scheme can only realize the processing of a request instruction (such as a stored data instruction), when the number of the request instructions is large, the feedback time is long when the data is fed back to a client, the packet loss rate is obviously excessive, even the situation of 'dead halt' still exists, if the fixed processing chip fails, the longer request feedback time is likely to be caused, and the request instruction is lost.
Therefore, when a server receives a large number of request instructions, a reasonable processing scheme for the request instructions is needed.
Disclosure of Invention
The invention aims to provide a server dynamic scheduling system and a server dynamic scheduling method based on batch data requests, which can realize the processing of different request instructions through different scheduling units according to the instruction types received by a server and the request types of the instructions, wherein the scheduling units are control units with control chips inside a multiplexing server, the scheduling units are not required to be independently arranged, the scheduling units in the server can be dynamically changed, and the request instructions can be ensured to reach corresponding instruction receiving units in the server with the lowest packet loss rate.
The invention solves the technical problems and adopts the following technical scheme:
in one aspect, the present invention provides a server dynamic scheduling system based on batch data requests, comprising:
the instruction type setting unit is used for setting the instruction type to be received as a wired request instruction and a wireless request instruction, and setting corresponding instruction identifiers for each instruction type respectively;
the method comprises the steps that a first scheduling unit is preset, after a server receives a wired request instruction, the wired request instruction sent by the server is cached, a corresponding first request queue is respectively set for the wired request instruction of each request type according to the request type of the instruction, whether the forwarding condition of the wired request instruction is met or not is judged according to the number of the wired request instructions corresponding to each request type in the cached first request queue, and when the forwarding condition of the wired request instruction is met, the wired request instruction is respectively forwarded to a corresponding instruction receiving unit according to the request type;
the second scheduling unit is used for caching the wireless request instructions sent by the server after the wireless request instructions are received by the server, setting corresponding second request queues for the wireless request instructions of each request type according to the request types of the instructions, judging whether the wireless request instructions accord with forwarding conditions of the wireless request instructions according to the number of the wireless request instructions corresponding to each request type in the cached second request queues, and forwarding the wireless request instructions to corresponding instruction receiving units according to the request types when the wireless request instructions accord with the forwarding conditions of the wireless request instructions;
the BMC control unit is used for dynamically calculating the real-time first scheduling unit and the real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located and the packet loss rate of the request instruction forwarded by the preset first scheduling unit and the preset second scheduling unit, and forwarding the request instruction through the real-time first scheduling unit and the real-time second scheduling unit.
On the other hand, the invention also provides a server dynamic scheduling method based on the batch data request, which is applied to the server dynamic scheduling system based on the batch data request, and comprises the following steps:
the server receives the request instruction in real time, sends the wired request instruction to a preset first scheduling unit for caching, the preset first scheduling unit sets a corresponding first request queue for the wired request instruction of each request type according to the request type of the instruction, and sends the wireless request instruction to a preset second scheduling unit for caching, and the preset second scheduling unit sets a corresponding second request queue for the wireless request instruction of each request type according to the request type of the instruction;
the method comprises the steps that a first scheduling unit is preset, whether forwarding conditions of wired request instructions are met or not is judged according to the number of the wired request instructions corresponding to each request type in a cached first request queue, and when the forwarding conditions are met, the wired request instructions are respectively forwarded to a corresponding instruction receiving unit according to the request types;
the second scheduling unit is preset, whether the forwarding conditions of the wireless request instructions are met or not is judged according to the number of the wireless request instructions corresponding to each request type in the cached second request queue, and when the forwarding conditions are met, the wireless request instructions are respectively forwarded to the corresponding instruction receiving units according to the request types;
the BMC control unit dynamically calculates a real-time first scheduling unit and a real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located and the packet loss rate of the forwarding request instruction of the preset first scheduling unit and the preset second scheduling unit;
and forwarding the request instruction through the real-time first scheduling unit and the real-time second scheduling unit.
As a further optimization, before the server receives the request instruction, it includes:
setting the types of instructions to be received as a wired request instruction and a wireless request instruction, and setting corresponding instruction identifiers for each instruction type respectively;
and respectively setting the preset first scheduling unit and the preset second scheduling unit in a control unit with a control chip in the server.
As a further optimization, the preset first scheduling unit and the preset second scheduling unit are respectively set in a control unit with a control chip in the server, specifically:
the BMC control unit obtains the port number of each control unit with a control chip in the server for receiving the wired request instruction, selects the control unit with the control chip with the largest port number, and sets a preset first scheduling unit in the selected control unit with the control chip;
and excluding the selected control units with the control chips, randomly selecting any other control units with the control chips in the server, and setting a preset second scheduling unit in the randomly selected control units with the control chips.
As a further optimization, the request types of the instructions include an inquiry data instruction, a request data instruction, an upload backup data instruction, and a store data instruction.
As a further optimization, the preset first scheduling unit judges whether the forwarding condition of the wired request instruction is met according to the number of the wired request instructions corresponding to each request type in the cached first request queue, specifically, the method is that:
when the number of the wired request instructions corresponding to each request type in the first request queue is 1, the wired request instructions corresponding to the current request type are directly judged to be in accordance with the forwarding condition, when the number of the wired request instructions corresponding to each request type in the first request queue is greater than 1, if the number of the wired request instructions is lower than a first preset number value in a first preset time, the wired request instructions corresponding to the current request type are judged to be in accordance with the forwarding condition, otherwise, the wired request instructions corresponding to the current request type are not in accordance with the forwarding condition.
As a further optimization, when the preset first scheduling unit judges that the wired request instruction meets the forwarding condition:
for the inquiry data instruction, presetting a first scheduling unit to set a first preset time in a first request queue and then forwarding the inquiry data instruction;
for a request data instruction, presetting a first scheduling unit to set a second preset time in a first request queue and then forwarding an inquiry data instruction;
for uploading the backup data instruction, presetting a third preset time in a first request queue by a first scheduling unit, and forwarding an inquiry data instruction;
and for the data command and the stored data command, presetting a fourth preset time in the first request queue by the first scheduling unit, and forwarding the data command.
As a further optimization, the preset second scheduling unit determines whether the forwarding condition of the wireless request instruction is met according to the number of wireless request instructions corresponding to each request type in the cached second request queue, specifically, the method is that:
when the number of the wireless request instructions corresponding to each request type in the second request queue is 1, the wireless request instructions corresponding to the current request type are directly judged to be in accordance with the forwarding condition, when the number of the wireless request instructions corresponding to each request type in the second request queue is more than 1, if the number of the wireless request instructions is lower than a second preset number value in a second preset time, the wireless request instructions corresponding to the current request instruction type are judged to be in accordance with the forwarding condition, otherwise, the wireless request instructions corresponding to the current request instruction type are not in accordance with the forwarding condition.
As a further optimization, for the query data instruction, presetting a second scheduling unit to set a fifth preset time in a second request queue and then forwarding the query data instruction;
for the request data instruction, presetting a sixth preset time in a second request queue by a second scheduling unit, and forwarding the query data instruction;
for uploading the backup data instruction, presetting a seventh preset time in a second request queue by a second scheduling unit, and forwarding an inquiry data instruction;
and presetting a second scheduling unit to set an eighth preset time in a second request queue for forwarding the inquiry data instruction for the data instruction.
As further optimization, the BMC control unit dynamically calculates a real-time first scheduling unit and a real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located, and packet loss rates of forwarding request instructions of the preset first scheduling unit and the preset second scheduling unit, specifically:
the BMC control unit acquires the load state of the control unit where the preset first scheduling unit is located every third set time, if the load state of the control unit where the preset first scheduling unit is located is in a load balance state and the packet loss rate of a forwarding request instruction of the preset first scheduling unit is lower than the first preset packet loss rate, the current preset first scheduling unit is the calculated real-time first scheduling unit, otherwise, the control unit with the control chip is reselected according to the number of ports for receiving the wired request instruction, and the real-time first scheduling unit is arranged in the control unit with the control chip;
the BMC control unit acquires the load state of the control unit where the preset second scheduling unit is located every fourth regulated time, if the load state of the control unit where the preset second scheduling unit is located is in a load balance state and the packet loss rate of the forwarding request instruction of the preset second scheduling unit is lower than the second preset packet loss rate, the current preset second scheduling unit is the calculated real-time second scheduling unit, otherwise, any control unit with a control chip in the load balance state is selected, and the control unit with the control chip is not the control unit with the control chip, which is arranged by the first scheduling unit.
The beneficial effects of the invention are as follows: according to the server dynamic scheduling system and the method based on the batch data request, firstly, the server receives the request instruction in real time, sends the wired request instruction to the preset first scheduling unit for caching, the preset first scheduling unit sets a corresponding first request queue for the wired request instruction of each request type according to the request type of the instruction, and sends the wireless request instruction to the preset second scheduling unit for caching, the preset second scheduling unit sets a corresponding second request queue for the wireless request instruction of each request type according to the request type of the instruction, wherein the request type of the server is definitely limited, one is the wired request instruction, the other is the wireless request instruction, and because the wired request instruction has a more stable signal compared with the wireless request instruction, and the wireless request instruction has a packet loss phenomenon basically less in a short distance, illegal instructions possibly exist, and packets are easy to lose, and for different request instructions, different instruction processing modes can exist in the invention.
Secondly, a first scheduling unit is preset, whether the forwarding conditions of the wired request instructions are met or not is judged according to the number of the wired request instructions corresponding to each request type in the cached first request queue, and when the forwarding conditions are met, the wired request instructions are respectively forwarded to a corresponding instruction receiving unit according to the request types; the second scheduling unit is preset to judge whether the forwarding condition of the wireless request instructions is met according to the number of the wireless request instructions corresponding to each request type in the cached second request queue, and when the forwarding condition is met, the wireless request instructions are respectively forwarded to the corresponding instruction receiving units according to the request types, wherein the forwarding of the request instructions is realized through the scheduling unit instead of directly sending the instructions to the target instruction receiving units in the server, so that server delay and breakdown caused by a large number of request instructions are prevented;
finally, the BMC control unit dynamically calculates a real-time first scheduling unit and a real-time second scheduling unit according to the load state of the control unit where the preset first scheduling unit and the preset second scheduling unit are respectively located and the packet loss rate of the request instruction forwarded by the preset first scheduling unit and the preset second scheduling unit, and forwards the request instruction through the real-time first scheduling unit and the real-time second scheduling unit, wherein the scheduling units are not fixed, if the scheduling units are fixed, the data processing burden of the server is transferred to a fixed chip, and when the fixed chip fails, the receiving of the request instruction by a target instruction receiving unit in the server is affected, and the request instruction is possibly directly lost, so that the terminal cannot obtain a feedback instruction.
Drawings
FIG. 1 is a block diagram of a server dynamic scheduling system based on a batch data request in embodiment 1 of the present invention;
fig. 2 is a flowchart of a server dynamic scheduling method based on a batch data request in embodiment 2 of the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are some embodiments of the present invention, but not all embodiments of the present invention. The components of the embodiments of the present invention generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations.
Example 1
Referring to fig. 1, the present embodiment provides a server dynamic scheduling system based on a batch data request, where the system includes:
the instruction type setting unit is used for setting the instruction type to be received as a wired request instruction and a wireless request instruction, and setting corresponding instruction identifiers for each instruction type respectively;
the method comprises the steps that a first scheduling unit is preset, after a server receives a wired request instruction, the wired request instruction sent by the server is cached, a corresponding first request queue is respectively set for the wired request instruction of each request type according to the request type of the instruction, whether the forwarding condition of the wired request instruction is met or not is judged according to the number of the wired request instructions corresponding to each request type in the cached first request queue, and when the forwarding condition of the wired request instruction is met, the wired request instruction is respectively forwarded to a corresponding instruction receiving unit according to the request type;
the second scheduling unit is used for caching the wireless request instructions sent by the server after the wireless request instructions are received by the server, setting corresponding second request queues for the wireless request instructions of each request type according to the request types of the instructions, judging whether the wireless request instructions accord with forwarding conditions of the wireless request instructions according to the number of the wireless request instructions corresponding to each request type in the cached second request queues, and forwarding the wireless request instructions to corresponding instruction receiving units according to the request types when the wireless request instructions accord with the forwarding conditions of the wireless request instructions;
the BMC control unit is used for dynamically calculating the real-time first scheduling unit and the real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located and the packet loss rate of the request instruction forwarded by the preset first scheduling unit and the preset second scheduling unit, and forwarding the request instruction through the real-time first scheduling unit and the real-time second scheduling unit.
In this embodiment, the preset first scheduling unit, the real-time first scheduling unit, the preset second scheduling unit and the real-time second scheduling unit are not fixedly arranged, and the BMC control unit in the server can dynamically calculate the scheduling unit which meets the requirement of the forwarding request instruction according to the load state of the control unit and the packet loss rate of the forwarding request instruction, so that on one hand, the additional hardware cost of fixedly arranging a processing chip is avoided, meanwhile, the phenomenon of data loss during faults is avoided, and the instruction forwarding efficiency of the server for a large number of data requests is greatly improved.
Example 2
On the basis of embodiment 1, referring to fig. 2, the present embodiment provides a server dynamic scheduling method based on a batch data request, where the method includes the following steps:
s1, a server receives a request instruction in real time, sends the wired request instruction to a preset first scheduling unit for caching, the preset first scheduling unit sets a corresponding first request queue for the wired request instruction of each request type according to the request type of the instruction, and sends a wireless request instruction to a preset second scheduling unit for caching, and the preset second scheduling unit sets a corresponding second request queue for the wireless request instruction of each request type according to the request type of the instruction;
s2, a first scheduling unit is preset, whether the forwarding conditions of the wired request instructions are met or not is judged according to the number of the wired request instructions corresponding to each request type in the cached first request queue, and when the forwarding conditions are met, the wired request instructions are respectively forwarded to a corresponding instruction receiving unit according to the request types;
s3, presetting a second scheduling unit, judging whether the forwarding conditions of the wireless request instructions are met according to the number of the wireless request instructions corresponding to each request type in the cached second request queue, and when the forwarding conditions are met, forwarding the wireless request instructions to corresponding instruction receiving units according to the request types;
s4, the BMC control unit dynamically calculates a real-time first scheduling unit and a real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located and the packet loss rate of the forwarding request instructions of the preset first scheduling unit and the preset second scheduling unit.
S5, forwarding the request instruction through the real-time first scheduling unit and the real-time second scheduling unit.
In this embodiment, the request instruction sent by the client to the server needs to be limited in advance, and since only the wired request instruction and the wireless request instruction are targeted in this embodiment, before the server receives the request instruction, the method may include:
setting the types of instructions to be received as a wired request instruction and a wireless request instruction, and setting corresponding instruction identifiers for each instruction type respectively; and respectively setting the preset first scheduling unit and the preset second scheduling unit in a control unit with a control chip in the server.
The instruction identifier corresponding to the wireless request instruction is different from the instruction identifier corresponding to the wired request instruction, so that whether the request instruction is a wired instruction or a wireless instruction can be distinguished.
The two preset scheduling units are also preset in the control unit with the control chip in the server, and the scheduling control to be realized in the embodiment can be multiplexed in most of chips with data processing capability through software, and the number of chips with data processing capability in the server is generally large, so that multiplexing can be easily realized.
In the actual application process, the preset first scheduling unit and the preset second scheduling unit are respectively arranged in a control unit with a control chip in the server, specifically:
the BMC control unit obtains the port number of each control unit with a control chip in the server for receiving the wired request instruction, selects the control unit with the control chip with the largest port number, and sets a preset first scheduling unit in the selected control unit with the control chip;
and excluding the selected control units with the control chips, randomly selecting any other control units with the control chips in the server, and setting a preset second scheduling unit in the randomly selected control units with the control chips.
The BMC control unit generally monitors other control units in all servers, and in this embodiment, the BMC control unit is preferably used to select the scheduling unit, and in general, the BMC control unit does not have data processing pressure, so that the time delay involved in the process is negligible when selecting the scheduling unit and dynamically calculating the real-time scheduling unit later.
Typically, the server is capable of receiving request instructions, and the request types of the instructions are various, so the request types of the instructions can include an inquiry data instruction, a request data instruction, an upload backup data instruction, a storage data instruction and the like.
After determining the request type of the instruction, for the wired request instruction, the preset first scheduling unit judges whether the forwarding condition of the wired request instruction is met according to the number of the wired request instructions corresponding to each request type in the cached first request queue, specifically, the method is that:
when the number of the wired request instructions corresponding to each request type in the first request queue is 1, the wired request instructions corresponding to the current request type are directly judged to be in accordance with the forwarding condition, when the number of the wired request instructions corresponding to each request type in the first request queue is greater than 1, if the number of the wired request instructions is lower than a first preset number value in a first preset time, the wired request instructions corresponding to the current request type are judged to be in accordance with the forwarding condition, otherwise, the wired request instructions corresponding to the current request type are not in accordance with the forwarding condition.
When the preset first scheduling unit judges that the wired request instruction accords with the forwarding condition:
for the inquiry data instruction, presetting a first scheduling unit to set a first preset time in a first request queue and then forwarding the inquiry data instruction;
for a request data instruction, presetting a first scheduling unit to set a second preset time in a first request queue and then forwarding an inquiry data instruction;
for uploading the backup data instruction, presetting a third preset time in a first request queue by a first scheduling unit, and forwarding an inquiry data instruction;
and for the data command and the stored data command, presetting a fourth preset time in the first request queue by the first scheduling unit, and forwarding the data command.
If the number of the wired request instructions is only 1, the wired request instructions can be directly forwarded, if the number of the wired request instructions is greater than 1, a first preset time is required to be set, and forwarding of the request instructions is completed within the first preset time, if the number of the wired request instructions of a certain type is small (lower than a first preset number value) within the first preset time, the request is not frequent, and the queue is not congested, so that the instruction forwarding condition is met at this time, in some cases, the number of the wired request instructions of a certain type may be large, the instruction forwarding condition is not met within the first preset time, the condition that the wired request instructions are excessive may be the request peak time of a client, or the client is illegally invaded by an illegal hacker, so that the request is frequently initiated to a server, and therefore, the instruction forwarding is not performed when the instruction forwarding condition is not met.
After determining the request type of the instruction, for the wireless request instruction, the preset second scheduling unit judges whether the forwarding condition of the wireless request instruction is met according to the number of the wireless request instructions corresponding to each request type in the cached second request queue, specifically, the method is that:
when the number of the wireless request instructions corresponding to each request type in the second request queue is 1, the wireless request instructions corresponding to the current request type are directly judged to be in accordance with the forwarding condition, when the number of the wireless request instructions corresponding to each request type in the second request queue is more than 1, if the number of the wireless request instructions is lower than a second preset number value in a second preset time, the wireless request instructions corresponding to the current request instruction type are judged to be in accordance with the forwarding condition, otherwise, the wireless request instructions corresponding to the current request instruction type are not in accordance with the forwarding condition.
Likewise, the wireless request instruction is forwarded only when the instruction forwarding condition is met, so that the sudden crash of the server can be avoided, and the frequent requests of the client, which are illegally invaded by an illegal hacker, can be shielded.
It should be noted that, for the query data instruction, the second scheduling unit is preset to set a fifth preset time in the second request queue and then forward the query data instruction;
for the request data instruction, presetting a sixth preset time in a second request queue by a second scheduling unit, and forwarding the query data instruction;
for uploading the backup data instruction, presetting a seventh preset time in a second request queue by a second scheduling unit, and forwarding an inquiry data instruction;
and presetting a second scheduling unit to set an eighth preset time in a second request queue for forwarding the inquiry data instruction for the data instruction.
And each request type and each instruction type of request instruction is provided with a response forwarding time when the instruction is forwarded, so that the fine scheduling of the request instruction is realized.
Additionally, in this embodiment, the BMC control unit dynamically calculates the real-time first scheduling unit and the real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located, and packet loss rates of forwarding request instructions of the preset first scheduling unit and the preset second scheduling unit, which specifically means that:
the BMC control unit acquires the load state of the control unit where the preset first scheduling unit is located every third set time, if the load state of the control unit where the preset first scheduling unit is located is in a load balance state and the packet loss rate of a forwarding request instruction of the preset first scheduling unit is lower than the first preset packet loss rate, the current preset first scheduling unit is the calculated real-time first scheduling unit, otherwise, the control unit with the control chip is reselected according to the number of ports for receiving the wired request instruction, and the real-time first scheduling unit is arranged in the control unit with the control chip;
the BMC control unit acquires the load state of the control unit where the preset second scheduling unit is located every fourth regulated time, if the load state of the control unit where the preset second scheduling unit is located is in a load balance state and the packet loss rate of the forwarding request instruction of the preset second scheduling unit is lower than the second preset packet loss rate, the current preset second scheduling unit is the calculated real-time second scheduling unit, otherwise, any control unit with a control chip in the load balance state is selected, and the control unit with the control chip is not the control unit with the control chip, which is arranged by the first scheduling unit.
Therefore, the scheduling unit in the embodiment does not need to be fixedly arranged, and a fixed chip is not additionally arranged to transfer the data request burden of the server, so that the efficiency of different types of request instructions reaching the target control unit in the server is greatly improved, the packet loss rate is reduced, and the data processing pressure of the server facing batch data requests is relieved.
The above is only a preferred embodiment of the present invention, and is not intended to limit the present invention, but various modifications and variations can be made to the present invention by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (7)
1. A server dynamic scheduling system based on batch data requests, comprising:
the instruction type setting unit is used for setting the instruction type to be received as a wired request instruction and a wireless request instruction, and setting corresponding instruction identifiers for each instruction type respectively;
the method comprises the steps that a first scheduling unit is preset, after a server receives a wired request instruction, the wired request instruction sent by the server is cached, a corresponding first request queue is respectively set for the wired request instruction of each request type according to the request type of the instruction, whether the forwarding condition of the wired request instruction is met or not is judged according to the number of the wired request instructions corresponding to each request type in the cached first request queue, and when the forwarding condition of the wired request instruction is met, the wired request instruction is respectively forwarded to a corresponding instruction receiving unit according to the request type; the preset first scheduling unit judges whether forwarding conditions of the wired request instructions are met according to the number of the wired request instructions corresponding to each request type in the cached first request queue, specifically: when the number of the wired request instructions corresponding to each request type in the first request queue is 1, directly judging that the wired request instructions corresponding to the current request type meet the forwarding conditions, and when the number of the wired request instructions corresponding to each request type in the first request queue is more than 1, judging that the wired request instructions corresponding to the current request type meet the forwarding conditions if the number of the wired request instructions is lower than a first preset number value in a first preset time, otherwise, not meeting the forwarding conditions;
the second scheduling unit is used for caching the wireless request instructions sent by the server after the wireless request instructions are received by the server, setting corresponding second request queues for the wireless request instructions of each request type according to the request types of the instructions, judging whether the wireless request instructions accord with forwarding conditions of the wireless request instructions according to the number of the wireless request instructions corresponding to each request type in the cached second request queues, and forwarding the wireless request instructions to corresponding instruction receiving units according to the request types when the wireless request instructions accord with the forwarding conditions of the wireless request instructions; the preset second scheduling unit judges whether the forwarding condition of the wireless request instruction is met according to the number of the wireless request instructions corresponding to each request type in the cached second request queue, specifically, the method is that: when the number of the wireless request instructions corresponding to each request type in the second request queue is 1, directly judging that the wireless request instructions corresponding to the current request type meet the forwarding conditions, and when the number of the wireless request instructions corresponding to each request type in the second request queue is more than 1, judging that the wireless request instructions corresponding to the current request type meet the forwarding conditions if the number of the wireless request instructions is lower than a second preset number value in a second preset time, otherwise, not meeting the forwarding conditions;
the BMC control unit is used for dynamically calculating a real-time first scheduling unit and a real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located and the packet loss rate of the request instruction forwarded by the preset first scheduling unit and the preset second scheduling unit, and forwarding the request instruction through the real-time first scheduling unit and the real-time second scheduling unit; the BMC control unit dynamically calculates a real-time first scheduling unit and a real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located and the packet loss rate of the forwarding request instruction of the preset first scheduling unit and the preset second scheduling unit, and specifically refers to:
the BMC control unit acquires the load state of the control unit where the preset first scheduling unit is located every third set time, if the load state of the control unit where the preset first scheduling unit is located is in a load balance state and the packet loss rate of a forwarding request instruction of the preset first scheduling unit is lower than the first preset packet loss rate, the current preset first scheduling unit is the calculated real-time first scheduling unit, otherwise, the control unit with the control chip is reselected according to the number of ports for receiving the wired request instruction, and the real-time first scheduling unit is arranged in the control unit with the control chip;
the BMC control unit acquires the load state of the control unit where the preset second scheduling unit is located every fourth regulated time, if the load state of the control unit where the preset second scheduling unit is located is in a load balance state and the packet loss rate of the forwarding request instruction of the preset second scheduling unit is lower than the second preset packet loss rate, the current preset second scheduling unit is the calculated real-time second scheduling unit, otherwise, any control unit with a control chip in the load balance state is selected, and the control unit with the control chip is not the control unit with the control chip, which is arranged by the first scheduling unit.
2. The server dynamic scheduling method based on the batch data request is applied to the server dynamic scheduling system based on the batch data request as claimed in claim 1, and is characterized by comprising the following steps:
the server receives the request instruction in real time, sends the wired request instruction to a preset first scheduling unit for caching, the preset first scheduling unit sets a corresponding first request queue for the wired request instruction of each request type according to the request type of the instruction, and sends the wireless request instruction to a preset second scheduling unit for caching, and the preset second scheduling unit sets a corresponding second request queue for the wireless request instruction of each request type according to the request type of the instruction;
the method comprises the steps that a first scheduling unit is preset, whether forwarding conditions of wired request instructions are met or not is judged according to the number of the wired request instructions corresponding to each request type in a cached first request queue, and when the forwarding conditions are met, the wired request instructions are respectively forwarded to a corresponding instruction receiving unit according to the request types;
the second scheduling unit is preset, whether the forwarding conditions of the wireless request instructions are met or not is judged according to the number of the wireless request instructions corresponding to each request type in the cached second request queue, and when the forwarding conditions are met, the wireless request instructions are respectively forwarded to the corresponding instruction receiving units according to the request types;
the BMC control unit dynamically calculates a real-time first scheduling unit and a real-time second scheduling unit according to the load states of the control units where the preset first scheduling unit and the preset second scheduling unit are respectively located and the packet loss rate of the forwarding request instruction of the preset first scheduling unit and the preset second scheduling unit;
and forwarding the request instruction through the real-time first scheduling unit and the real-time second scheduling unit.
3. The method for dynamic scheduling of servers based on batch data requests according to claim 2, comprising, before the server receives the request instruction:
setting the types of instructions to be received as a wired request instruction and a wireless request instruction, and setting corresponding instruction identifiers for each instruction type respectively;
and respectively setting the preset first scheduling unit and the preset second scheduling unit in a control unit with a control chip in the server.
4. The method for dynamically scheduling servers based on batch data requests according to claim 3, wherein the preset first scheduling unit and the preset second scheduling unit are respectively disposed in a control unit having a control chip in the server, specifically:
the BMC control unit obtains the port number of each control unit with a control chip in the server for receiving the wired request instruction, selects the control unit with the control chip with the largest port number, and sets a preset first scheduling unit in the selected control unit with the control chip;
and excluding the selected control units with the control chips, randomly selecting any other control units with the control chips in the server, and setting a preset second scheduling unit in the randomly selected control units with the control chips.
5. The method of claim 2, wherein the request type of the command includes an inquiry data command, a request data command, an upload backup data command, and a store data command.
6. The server dynamic scheduling method based on batch data request according to claim 2, wherein when the preset first scheduling unit determines that the wired request instruction meets the forwarding condition:
for the inquiry data instruction, presetting a first scheduling unit to set a first preset time in a first request queue and then forwarding the inquiry data instruction;
for a request data instruction, presetting a first scheduling unit to set a second preset time in a first request queue and then forwarding an inquiry data instruction;
for uploading the backup data instruction, presetting a third preset time in a first request queue by a first scheduling unit, and forwarding an inquiry data instruction;
and for the data command and the stored data command, presetting a fourth preset time in the first request queue by the first scheduling unit, and forwarding the data command.
7. The method for dynamically scheduling server based on batch data request according to claim 6, wherein, for the query data command, the second scheduling unit is preset to forward the query data command after setting a fifth preset time in the second request queue;
for the request data instruction, presetting a sixth preset time in a second request queue by a second scheduling unit, and forwarding the query data instruction;
for uploading the backup data instruction, presetting a seventh preset time in a second request queue by a second scheduling unit, and forwarding an inquiry data instruction;
and presetting a second scheduling unit to set an eighth preset time in a second request queue for forwarding the inquiry data instruction for the data instruction.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410059684.6A CN117579705B (en) | 2024-01-16 | 2024-01-16 | System and method for dynamically scheduling servers based on batch data requests |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410059684.6A CN117579705B (en) | 2024-01-16 | 2024-01-16 | System and method for dynamically scheduling servers based on batch data requests |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117579705A CN117579705A (en) | 2024-02-20 |
CN117579705B true CN117579705B (en) | 2024-04-02 |
Family
ID=89864759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410059684.6A Active CN117579705B (en) | 2024-01-16 | 2024-01-16 | System and method for dynamically scheduling servers based on batch data requests |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117579705B (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101873592A (en) * | 2010-06-30 | 2010-10-27 | 北京航空航天大学 | Dynamic management device for heterogeneous wireless equipment |
CN109375992A (en) * | 2018-08-17 | 2019-02-22 | 华为技术有限公司 | A kind of resource regulating method and device |
CN113923540A (en) * | 2021-09-02 | 2022-01-11 | 贵州电网有限责任公司 | Hierarchical cluster processing method for Internet of things (IOT) collection based on NB-lot network |
CN115622952A (en) * | 2021-07-12 | 2023-01-17 | 华为技术有限公司 | Resource scheduling method, device, equipment and computer readable storage medium |
CN115914539A (en) * | 2022-09-30 | 2023-04-04 | 广州云视通科技有限公司 | Method and system for scheduling resources of audio and video equipment |
CN116974655A (en) * | 2022-04-22 | 2023-10-31 | 中国电信股份有限公司 | Capability scheduling method and capability scheduling functional entity |
CN117155874A (en) * | 2022-05-24 | 2023-12-01 | 华为技术有限公司 | Data packet transmitting method, forwarding node, transmitting terminal and storage medium |
CN117193963A (en) * | 2023-08-03 | 2023-12-08 | 北京大学 | Function feature-based server non-aware computing scheduling method and device |
CN117376984A (en) * | 2023-12-08 | 2024-01-09 | 华芯(武汉)智能装备有限公司 | Crown block scheduling data transmission method and readable storage medium |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9798892B2 (en) * | 2013-03-15 | 2017-10-24 | Live Nation Entertainment, Inc. | Prioritized link establishment for data transfer using task scheduling |
US10657278B2 (en) * | 2013-03-15 | 2020-05-19 | Live Nation Entertainment, Inc. | Prioritized link establishment for data transfer using task scheduling |
-
2024
- 2024-01-16 CN CN202410059684.6A patent/CN117579705B/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101873592A (en) * | 2010-06-30 | 2010-10-27 | 北京航空航天大学 | Dynamic management device for heterogeneous wireless equipment |
CN109375992A (en) * | 2018-08-17 | 2019-02-22 | 华为技术有限公司 | A kind of resource regulating method and device |
CN115622952A (en) * | 2021-07-12 | 2023-01-17 | 华为技术有限公司 | Resource scheduling method, device, equipment and computer readable storage medium |
CN113923540A (en) * | 2021-09-02 | 2022-01-11 | 贵州电网有限责任公司 | Hierarchical cluster processing method for Internet of things (IOT) collection based on NB-lot network |
CN116974655A (en) * | 2022-04-22 | 2023-10-31 | 中国电信股份有限公司 | Capability scheduling method and capability scheduling functional entity |
CN117155874A (en) * | 2022-05-24 | 2023-12-01 | 华为技术有限公司 | Data packet transmitting method, forwarding node, transmitting terminal and storage medium |
CN115914539A (en) * | 2022-09-30 | 2023-04-04 | 广州云视通科技有限公司 | Method and system for scheduling resources of audio and video equipment |
CN117193963A (en) * | 2023-08-03 | 2023-12-08 | 北京大学 | Function feature-based server non-aware computing scheduling method and device |
CN117376984A (en) * | 2023-12-08 | 2024-01-09 | 华芯(武汉)智能装备有限公司 | Crown block scheduling data transmission method and readable storage medium |
Non-Patent Citations (5)
Title |
---|
Zahraa A. Jaaz ; Shaymaa Adnan Abdulrahman ; Hanaa M. Mushgil." A dynamic task scheduling model for mobile cloud computing".《2022 9th International Conference on Electrical Engineering, Computer Science and Informatics (EECSI)》.2022,全文. * |
一种基于服务器主动调度策略的集群体系结构;赵文来, 余冬梅, 杨俊秀, 祝超群;兰州理工大学学报;20040428(第02期);全文 * |
内容分发网络在5G中需关注及解决的问题;刘洋;尹航;;电子世界;20190423(第08期);全文 * |
基于Fuzzy的负载调度算法在CDN中的应用研究;梁凯;;洛阳理工学院学报(自然科学版);20180925(第03期);全文 * |
基于JAVA的GSM-R无线调度命令自动监控系统设计与实现;徐镔;唐春英;郭伟强;李鹏飞;;铁道通信信号;20191017(第10期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117579705A (en) | 2024-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1126384C (en) | Method for an admission control function for a wireless data network | |
US7546355B2 (en) | Network architecture for data transmission | |
US20020069241A1 (en) | Method and apparatus for client-side proxy selection | |
CA2770138C (en) | Cluster server of an instant messaging system and messaging method between clusters | |
US20080077931A1 (en) | Load distributing apparatus | |
US11876716B2 (en) | Systems and methods for adjusting a congestion window value of a content delivery network | |
US20060031520A1 (en) | Allocation of common persistent connections through proxies | |
KR20120088744A (en) | Method and system for application level load balancing in a publish/subscribe message architecture | |
CN109672711B (en) | Reverse proxy server Nginx-based http request processing method and system | |
WO2012089044A1 (en) | Cache sharing method and apparatus for content delivery network | |
US20020055983A1 (en) | Computer server having non-client-specific persistent connections | |
CN112104752B (en) | Hot spot balancing method and system for cache nodes of content distribution network | |
US20180375950A1 (en) | Redirection of client requests to multiple endpoints | |
CN113542058A (en) | Data source returning method, server and storage medium | |
CN111432231B (en) | Content scheduling method of edge network, home gateway, system and server | |
US20030236888A1 (en) | Method for improving network server load balancing | |
CN117579705B (en) | System and method for dynamically scheduling servers based on batch data requests | |
US20050278166A1 (en) | Data distribution apparatus, its control method, program, and storage medium | |
WO2024032011A1 (en) | Cdn scheduling method, cdn scheduling system, and storage medium | |
CN116567726A (en) | Adaptive load sharing system and method for satellite communication system | |
US11212359B2 (en) | Transfer apparatus for content distribution network | |
CN112217883B (en) | Multi-channel construction method, device and system based on NFS protocol | |
US7543062B1 (en) | Method of balancing communication load in a system based on determination of user-user affinity levels | |
CN113535426A (en) | Message issuing optimization method and server | |
CN116366709B (en) | Connection scheduling method and system for data transmission |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |