CN108196939B - Intelligent virtual machine management method and device for cloud computing - Google Patents

Intelligent virtual machine management method and device for cloud computing Download PDF

Info

Publication number
CN108196939B
CN108196939B CN201711475741.5A CN201711475741A CN108196939B CN 108196939 B CN108196939 B CN 108196939B CN 201711475741 A CN201711475741 A CN 201711475741A CN 108196939 B CN108196939 B CN 108196939B
Authority
CN
China
Prior art keywords
request queue
request
requests
main
fast
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
Application number
CN201711475741.5A
Other languages
Chinese (zh)
Other versions
CN108196939A (en
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.)
Zhuhai Hotdoor Technology Co ltd
Original Assignee
Zhuhai Hotdoor Technology Co ltd
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 Zhuhai Hotdoor Technology Co ltd filed Critical Zhuhai Hotdoor Technology Co ltd
Priority to CN201711475741.5A priority Critical patent/CN108196939B/en
Publication of CN108196939A publication Critical patent/CN108196939A/en
Application granted granted Critical
Publication of CN108196939B publication Critical patent/CN108196939B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

The invention provides a virtual machine intelligent management method for cloud computing, which comprises the following steps: creating a main request queue and a quick request queue of the request, and emptying the main request queue and the quick request queue to realize the initialization of the main request queue and the quick request queue; receiving a request sent by a virtual machine, and estimating the number of resources called when the request is executed; acquiring the quantity of resources called by all requests in a current main request queue, if the quantity of the resources called by all requests in the current main request queue is greater than a preset main request queue threshold value and the quantity of the resources called when the requests are executed is less than the preset resource threshold value, inserting the requests into the tail of the fast request queue, otherwise, inserting the requests into the tail of the main request queue; and respectively acquiring the requests from the head of the main request queue and the head of the fast request queue according to the sequence. The invention has the beneficial effects that: by enabling requests that have a lower number of resources to be called at execution time to be responded to as quickly as possible, the overall response time is reduced.

Description

Intelligent virtual machine management method and device for cloud computing
Technical Field
The invention relates to the technical field of virtual machines, in particular to a virtual machine intelligent management method and device for cloud computing.
Background
With the popularization of cloud computing technology, cloud computing is adopted by more and more mechanisms as an alternative to local computing, thereby efficiently executing a variety of applications in a parallel manner. Generally, the implementation manner of the related mechanism is to build a plurality of physically independent servers on the same hardware platform. In order to conveniently and uniformly manage a plurality of servers with different equipment parameters, the current mainstream scheme is to virtualize the hardware platform by adopting a virtual machine technology so as to realize technical indexes such as isolation, expandability and safety of the platform. After the plurality of servers are virtualized, different types of resources of each server respectively and jointly form various resource pools (such as hard disk pools for storing data), and the plurality of virtual machines realize joint calculation and resource sharing, so that flexible allocation and efficient utilization of various computing resources are realized.
However, since multiple virtual machines create large numbers of requests out of order to share and use underlying hardware resources, the scheduling management of hardware resources must satisfy fairness and efficiency principles. At present, a processor generally executes requests according to the sequence of request execution time of a plurality of requests, so that when a certain application program occupies too large a proportion of processor resources during operation, other application programs are too long in starting time or cannot operate. In severe cases, this will cause the system to crash. For example, when a certain application requests an excessive amount of resources and is occupied for a long time, for example, the processor has a long execution time, the processor needs to execute the application first and then respond to the requests of other applications later. This will cause the application programs occupying less resources in the future to be unable to be executed in time, reducing the overall operating efficiency of multiple virtual machines.
Disclosure of Invention
The invention aims to overcome the defects in the prior art, and provides a virtual machine intelligent management method and device for cloud computing, which can achieve the effect of shortening the response time of the whole application program of a virtual machine.
In order to achieve the above object, the present invention adopts the following technical means.
Firstly, the invention provides a virtual machine intelligent management method for cloud computing, which comprises the following steps: creating a main request queue and a quick request queue of the request, and emptying the main request queue and the quick request queue to realize the initialization of the main request queue and the quick request queue; receiving a request sent by a virtual machine, and estimating the number of resources called when the request is executed; acquiring the quantity of resources called by all requests in a current main request queue, if the quantity of the resources called by all requests in the current main request queue is greater than a preset main request queue threshold value and the quantity of the resources called when the requests are executed is less than the preset resource threshold value, inserting the requests into the tail of the fast request queue, otherwise, inserting the requests into the tail of the main request queue; and respectively acquiring the requests from the head of the main request queue and the head of the fast request queue according to the sequence.
In an embodiment of the method of the present invention, after receiving a request sent by a virtual machine, it is detected whether data of the request is normal, and an abnormal request is discarded.
In an embodiment of the method of the present invention, when the total amount of occupied resources of the fast request queue is greater than the preset fast request queue threshold and the total amount of occupied resources of the main request queue is less than the main request queue threshold, a request at the tail of the fast request queue and exceeding the preset fast request queue threshold is proposed and inserted into the tail of the main request queue.
In one embodiment of the method of the present invention, when the total amount of occupied resources of the fast request queue is greater than a preset fast request queue threshold, the main request queue threshold is increased and/or the resource threshold is decreased.
In one embodiment of the method, when the number of resources called by all requests in the main request queue is greater than a preset main request queue threshold, requests in the main request queue, the number of resources called when the requests are executed, is less than the resource threshold, are proposed and inserted into the tail of the fast request queue.
Further, in the above method embodiment of the present invention, when the fast request queue is an empty queue within a preset time period, the main request queue threshold is decreased and/or the resource threshold is increased.
In one method embodiment of the invention, after the request is inserted into the tail of the fast request queue, the fast request queue is ordered according to the number of resources called when the request is executed.
In one method embodiment of the invention, the requests obtained from the head of the main request queue and the head of the fast request queue are distributed according to the type of the request being executed by the virtual machine.
Further, in the above method embodiment of the present invention, the number of resources called when the request is executed is the size of the resource.
Alternatively, in the above method embodiments of the present invention, the amount of resources invoked when the request executes is the length of the processor time slice occupied by the request.
Secondly, the invention also provides a virtual machine intelligent management device for cloud computing, which comprises the following modules: the initialization module is used for creating a main request queue and a quick request queue of the request and emptying the main request queue and the quick request queue to realize the initialization of the main request queue and the quick request queue; the pre-estimating module is used for receiving a request sent by a computer system and estimating the quantity of resources called when the request is executed; the enqueuing module is used for acquiring the quantity of resources called by all requests in the current main request queue, if the quantity of the resources called by all the requests in the current main request queue is greater than a preset main request queue threshold value and the quantity of the resources called when the requests are executed is less than the preset resource threshold value, the requests are inserted into the tail of the fast request queue, otherwise, the requests are inserted into the tail of the main request queue; and the dequeuing module is used for respectively acquiring the requests from the head of the main request queue and the head of the fast request queue according to the sequence.
In an embodiment of the apparatus of the present invention, after receiving a request sent by a virtual machine, it is detected whether data of the request is normal, and an abnormal request is discarded.
In an embodiment of the apparatus of the present invention, when the number of resources called by all requests in the main request queue is greater than a preset main request queue threshold, the enqueue module puts out and inserts the requests in the main request queue, of which the number of resources called when the requests are executed is less than the resource threshold, into the tail of the fast request queue.
In an embodiment of the apparatus of the present invention, when the total amount of occupied resources of the fast request queue is greater than a preset fast request queue threshold, the enqueuing module increases the main request queue threshold and/or decreases the resource threshold.
Further, in the above apparatus embodiment of the present invention, when the fast request queue is an empty queue within a preset time period, the enqueue module decreases the main request queue threshold and/or increases the resource threshold.
In an embodiment of the present invention, when the total amount of occupied resources of the fast request queue is greater than the preset fast request queue threshold and the total amount of occupied resources of the main request queue is less than the main request queue threshold, a request at the tail of the fast request queue and exceeding the preset fast request queue threshold is extracted and inserted into the tail of the main request queue.
In an embodiment of the apparatus of the present invention, after the request is inserted into the tail of the fast request queue by the enqueuing module, the enqueuing module sorts the block fast request queue according to the number of resources called by the request execution.
In one embodiment of the present invention, the requests obtained by the dequeue module from the head of the main request queue and the head of the fast request queue are allocated according to the type of the request being executed by the virtual machine.
Further, in the above device embodiment of the present invention, the number of resources called when the request is executed is the size of the resource.
Alternatively, in the above apparatus embodiments of the present invention, the amount of resources invoked when the request executes is the length of the processor time slice occupied by the request.
Finally, the invention also discloses a computer-readable storage medium having stored thereon computer instructions which, when executed by a processor, carry out the steps of the method according to any of the preceding claims.
The invention has the beneficial effects that: by respectively constructing and maintaining a main request queue and a quick request queue of the requests, the requests with less resource quantity called in execution can be responded as soon as possible, and the response time of the whole request is shortened.
Drawings
FIG. 1 is a flowchart illustrating a method for intelligently managing a virtual machine for cloud computing according to the present disclosure;
FIG. 2 is a flowchart of a method of FIG. 1 illustrating a specific process for determining whether a request is inserted into a fast request queue;
FIG. 3 is a diagram illustrating insertion of a request in a main request queue into a fast request queue in one embodiment of the invention;
FIG. 4 is a diagram illustrating a state change of a primary request queue in another embodiment of the invention;
FIG. 5 is a flow diagram of a method for snapping requests from the fast request queue of FIG. 4;
FIG. 6 is a diagram illustrating a state change after a request is inserted into a fast request queue in one embodiment of the invention;
FIG. 7 is a diagram illustrating adjustment of a primary request queue threshold in one embodiment of the invention;
fig. 8 is a block diagram illustrating a virtual machine intelligent management apparatus for cloud computing according to the present disclosure.
Detailed Description
The conception, the specific structure and the technical effects of the present invention will be clearly and completely described in conjunction with the embodiments and the accompanying drawings to fully understand the objects, the schemes and the effects of the present invention. It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The same reference numbers will be used throughout the drawings to refer to the same or like parts.
Referring to a method flowchart shown in fig. 1, in an embodiment of the present invention, a virtual machine intelligent management method for cloud computing includes the following steps: creating a main request queue and a quick request queue of the request, and emptying the main request queue and the quick request queue to realize the initialization of the main request queue and the quick request queue; receiving a request sent by a virtual machine, and estimating the number of resources called when the request is executed; acquiring the quantity of resources called by all requests in a current main request queue, if the quantity of the resources called by all requests in the current main request queue is greater than a preset main request queue threshold value and the quantity of the resources called when the requests are executed is less than the preset resource threshold value, inserting the requests into the tail of the fast request queue, otherwise, inserting the requests into the tail of the main request queue; and respectively acquiring the requests from the head of the main request queue and the head of the fast request queue according to the sequence. In particular, the main request queue threshold and the fast request queue threshold may be set at initialization. For example, the main request queue threshold may be initialized to 500K, i.e., the request in the main request queue needs to occupy 500K of buffer space. At this time, referring to the flowchart of the sub-method shown in fig. 2, when the buffer space pre-occupied by all the requests in the main request queue is less than 500K, the new request issued by the virtual machine will be directly inserted into the tail of the main request queue. All requests in the main request queue are sequentially acquired according to a first-in first-out sequence. When the cache space occupied by the whole requests in the main request queue is estimated to be equal to or larger than 500K, a new request sent by the virtual machine is estimated to be the number of resources called when the request is executed. If the number of the resources called when the request is executed is less than a resource threshold (for example, 20K, that is, the size of the cache space occupied when the request is executed is less than 20K), the resource is inserted into the queue tail of the fast request queue for priority processing; otherwise, inserting the request into the tail of the main request queue, and processing according to the normal sequence. The requests with less called resources and the requests with larger called resources are not in the same queue, so that the response time of the whole requests is shortened.
Referring to the state change diagram of the main request queue in the embodiment shown in fig. 3, in this embodiment, when the number of resources called by all requests in the main request queue is greater than a preset main request queue threshold, a request whose number of resources called when the request is executed in the main request queue is less than the resource threshold may be provided and inserted into the tail of the fast request queue. The value in the right hand box of the request is the amount of resources that are invoked when the request executes (e.g., "10K" for the a-request indicates that the amount of cache space occupied when the request executes is 10K). If the threshold of the primary request queue is 250K, the total amount of occupied resources of the primary request queue is 259K. If the preset resource threshold is 20K, the requests occupying less resources in the main request queue (i.e. the requests corresponding to "request a", "request C" and "request H" in the figure) will be extracted from the main request queue and inserted into the tail of the fast request queue, so that the requests occupying less resources when executed in the main request queue can be executed in time.
On the contrary, referring to the schematic diagram of the state change of the main request queue in another embodiment shown in fig. 4, when the total amount of occupied resources of the fast request queue is greater than the preset fast request queue threshold and the total amount of occupied resources of the main request queue is less than the main request queue threshold, the request execution efficiency in the fast request queue will be less than the main request queue. In order to improve the overall execution efficiency of the request, referring to the flowchart of the sub-method shown in fig. 5, the requests located at the tail of the fast request queue and exceeding the preset fast request queue threshold portion (i.e., "request f" and "request g" in fig. 4) may be proposed and inserted into the tail of the main request queue.
Referring to the schematic diagram of the request insertion fast access request queue shown in fig. 6, in an embodiment of the present invention, after the request is inserted into the tail of the fast access request queue, the fast request queue is sorted according to the amount of buffer space occupied by the execution of the request. The values in the right hand box of the request are the size of the cache that needs to be occupied when the request is executed (e.g., "10K" for d-request indicates that the size of the cache space occupied when the request is executed is 10K). As shown in the figure, the size of the buffer space occupied by the new request f when executed is 7K. At this time, if the number of resources called by all requests in the main request queue is greater than the threshold of the main request queue, the f request is inserted into the tail of the fast request queue first, and then the fast request queue is sequenced. Because requests for the amount of resources called for at execution time are queued in front of the fast request queue, these requests can be responded to as quickly as possible. Furthermore, since the fast request queue is maintained in order, new requests can be inserted into the fast request queue at the correct location in a shorter time (in fact, the time complexity of the operation is the logarithm of the current queue length).
In an embodiment of the present invention, when the total amount of occupied resources of the fast request queue is greater than a preset fast request queue threshold, the request execution efficiency in the fast request queue may decrease, even equal to or lower than the main request queue. In order to ensure that requests allocated to the fast request queue can be executed preferentially, the threshold for insertion into the fast request queue needs to be raised. As shown in FIG. 7, in this embodiment, the main request queue threshold may be raised (up to or above the number of resources called by all requests in the current main request queue), reducing the requests allocated to the fast request queue. Alternatively, the threshold for insertion into the fast request queue may be increased by decreasing the resource threshold (e.g., setting the resource threshold to 80% of the current value) so that the access request is harder to allocate to the fast access request queue.
When the threshold inserted into the fast request queue is raised in the above manner, and the fast request queue is empty for a preset time period (for example, 10 minutes) due to an external reason (for example, the number of requests to be executed per unit time is reduced) or an internal reason (for example, the threshold inserted into the fast request queue is raised excessively), the threshold inserted into the fast request queue should be lowered appropriately to adapt to the actual operating conditions of the current system. Thus, in the above-described embodiments of the present invention, similarly when the fast request queue is an empty queue within a preset time period, the main request queue threshold is lowered (e.g., the main request queue threshold is set to 80% of the current value) and/or the resource threshold is raised (e.g., may be raised to 2 times the current value).
In one embodiment of the invention, in order to further improve the operating efficiency of the virtual machine, the requests acquired from the head of the main request queue and the head of the fast request queue are distributed according to the type of the requests being executed by the virtual machine, so that the tasks of the same type can be processed in a centralized manner, and the time spent on the repeated distribution of the resources is reduced.
In the foregoing embodiments of the present invention, the amount of resources used to measure the number of calls when a process executes is the amount of cache space occupied by the request when executing. Because the value can be easily estimated and the estimated value and the actual value have less difference, the value is often used to measure the cost of executing the process. Alternatively, another measure of the amount of resources that can be invoked when a request is executed is the rate at which the request occupies the length of the processor's time slice. In general, the longer a processor is occupied with a request, the greater the number of resources it can call when executing. The foregoing embodiments may accordingly employ length measurements of requests that occupy processor time slices.
Referring to a module structure diagram shown in fig. 8, in an embodiment of the present invention, a virtual machine intelligent management apparatus for cloud computing includes the following modules: the initialization module is used for creating a main request queue and a quick request queue of the request and emptying the main request queue and the quick request queue to realize the initialization of the main request queue and the quick request queue; the pre-estimating module is used for receiving a request sent by a computer system and estimating the quantity of resources called when the request is executed; the enqueuing module is used for acquiring the quantity of resources called by all requests in the current main request queue, if the quantity of the resources called by all the requests in the current main request queue is greater than a preset main request queue threshold value and the quantity of the resources called when the requests are executed is less than the preset resource threshold value, the requests are inserted into the tail of the fast request queue, otherwise, the requests are inserted into the tail of the main request queue; and the dequeuing module is used for respectively acquiring the requests from the head of the main request queue and the head of the fast request queue according to the sequence. In particular, the main request queue threshold and the fast request queue threshold may be set at initialization. For example, the main request queue threshold may be initialized to 500K, i.e., the request in the main request queue needs to occupy 500K of buffer space. At this time, when the estimated occupied buffer space of all the requests in the main request queue is less than 500K, the new request sent by the virtual machine is directly inserted into the tail of the main request queue. All requests in the main request queue are sequentially acquired according to a first-in first-out sequence. When the cache space occupied by the whole requests in the main request queue is estimated to be equal to or larger than 500K, a new request sent by the virtual machine is estimated to be the number of resources called when the request is executed. If the number of the resources called when the request is executed is less than a resource threshold (for example, 20K, that is, the size of the cache space occupied when the request is executed is less than 20K), the resource is inserted into the queue tail of the fast request queue for priority processing; otherwise, inserting the request into the tail of the main request queue, and processing according to the normal sequence. The requests with less called resources and the requests with larger called resources are not in the same queue, so that the response time of the whole requests is shortened.
Referring to the state change diagram of the main request queue in the embodiment shown in fig. 3, in this embodiment, when the number of resources called by all requests in the main request queue is greater than a preset main request queue threshold, the enqueue module may propose a request in the main request queue, where the number of resources called when the request is executed is less than the resource threshold, and insert the request into the tail of the fast request queue. The value in the right hand box of the request is the amount of resources that are invoked when the request executes (e.g., "10K" for the a-request indicates that the amount of cache space occupied when the request executes is 10K). If the threshold of the primary request queue is 250K, the total amount of occupied resources of the primary request queue is 259K. If the preset resource threshold is 20K, the enqueue module extracts the requests occupying the resource quantity smaller than the threshold in the main request queue (i.e. the requests corresponding to "request a", "request C" and "request H" in the figure) from the main request queue, and inserts the extracted requests into the tail of the fast request queue, so that the requests occupying less resource quantity when executed in the main request queue can be executed in time.
On the contrary, referring to the schematic diagram of the state change of the main request queue in another embodiment shown in fig. 4, when the total amount of occupied resources of the fast request queue is greater than the preset fast request queue threshold and the total amount of occupied resources of the main request queue is less than the main request queue threshold, the request execution efficiency in the fast request queue will be less than the main request queue. To improve the overall execution efficiency of the requests, referring to the flowchart of the sub-method shown in fig. 5, the enqueue module may make and insert the requests (i.e., "request f" and "request g" in fig. 4) at the tail of the fast request queue and exceeding a preset fast request queue threshold portion into the tail of the main request queue.
Referring to the schematic diagram of the request insertion fast access request queue shown in fig. 6, in an embodiment of the present invention, after the request is inserted into the tail of the fast access request queue, the fast request queue is sorted according to the amount of buffer space occupied by the execution of the request. The values in the right hand box of the request are the size of the cache that needs to be occupied when the request is executed (e.g., "10K" for d-request indicates that the size of the cache space occupied when the request is executed is 10K). As shown in the figure, the size of the buffer space occupied by the new request f when executed is 7K. At this time, if the number of resources called by all requests in the main request queue is greater than the threshold of the main request queue, the enqueue module firstly inserts the f request into the tail of the fast request queue, and then sorts the fast request queue. Because requests for the amount of resources called for at execution time are queued in front of the fast request queue, these requests can be responded to as quickly as possible. Furthermore, since the fast request queue is maintained in order, new requests can be inserted into the fast request queue at the correct location in a shorter time (in fact, the time complexity of the operation is the logarithm of the current queue length).
In an embodiment of the present invention, when the total amount of occupied resources of the fast request queue is greater than a preset fast request queue threshold, the request execution efficiency in the fast request queue may decrease, even equal to or lower than the main request queue. In order to ensure that requests allocated to the fast request queue can be executed preferentially, the threshold for insertion into the fast request queue needs to be raised. As shown in the figure, in the embodiment, the enqueue module raises the main request queue threshold (the dotted line part in the figure can be raised to the resource quantity called by the whole requests in the current main request queue or higher), and reduces the requests distributed to the fast request queue. Alternatively, the threshold for insertion into the fast request queue may be increased by decreasing the resource threshold (e.g., setting the resource threshold to 80% of the current value) so that the access request is harder to allocate to the fast access request queue.
When the threshold inserted into the fast request queue is raised in the above manner, and the fast request queue is empty for a preset time period (for example, 10 minutes) due to an external reason (for example, the number of requests to be executed per unit time is reduced) or an internal reason (for example, the threshold inserted into the fast request queue is raised excessively), the threshold inserted into the fast request queue should be lowered appropriately to adapt to the actual operating conditions of the current system. Thus, in the above-described embodiments of the present invention, similarly when the fast request queue is an empty queue within a preset time period, the enqueue module may lower the main request queue threshold (e.g., the main request queue threshold is set to 80% of the current value) and/or increase the resource threshold (e.g., may increase to 2 times the current value).
In one embodiment of the invention, in order to further improve the operating efficiency of the virtual machine, the requests acquired from the head of the main request queue and the head of the fast request queue are distributed according to the type of the requests being executed by the virtual machine, so that the tasks of the same type can be processed in a centralized manner, and the time spent on the repeated distribution of the resources is reduced.
In the foregoing embodiments of the present invention, the amount of resources used to measure the number of calls when a process executes is the amount of cache space occupied by the request when executing. Because the value can be easily estimated and the estimated value and the actual value have less difference, the value is often used to measure the cost of executing the process. Alternatively, another measure of the amount of resources that can be invoked when a request is executed is the rate at which the request occupies the length of the processor's time slice. In general, the longer a processor is occupied with a request, the greater the number of resources it can call when executing. The foregoing embodiments may accordingly employ length measurements of requests that occupy processor time slices.
While the present invention has been described in considerable detail and with particular reference to a few illustrative embodiments thereof, it is not intended to be limited to any such details or embodiments or any particular embodiments, but it is to be construed as effectively covering the intended scope of the invention by providing a broad, potential interpretation of such claims in view of the prior art with reference to the appended claims. Furthermore, the foregoing describes the invention in terms of embodiments foreseen by the inventor for which an enabling description was available, notwithstanding that insubstantial modifications of the invention, not presently foreseen, may nonetheless represent equivalent modifications thereto.

Claims (7)

1. A virtual machine intelligent management method for cloud computing is characterized by comprising the following steps:
creating a main request queue and a quick request queue of the request, and emptying the main request queue and the quick request queue to realize the initialization of the main request queue and the quick request queue;
receiving a request sent by a virtual machine, and estimating the number of resources called when the request is executed;
acquiring the quantity of resources called by all requests in a current main request queue, if the quantity of the resources called by all requests in the current main request queue is greater than a preset main request queue threshold value and the quantity of the resources called when the requests are executed is less than the preset resource threshold value, inserting the requests into the tail of the fast request queue, otherwise, inserting the requests into the tail of the main request queue; and
respectively acquiring requests from the head of the main request queue and the head of the fast request queue according to the sequence;
when the resource occupied by the fast request queue is larger than a preset fast request queue threshold, the main request queue threshold is increased and/or the resource threshold is reduced;
after the request is inserted into the tail of the fast request queue, the fast request queue sorts according to the number of resources called when the request is executed;
when the total amount of the occupied resources of the fast request queue is greater than the preset fast request queue threshold and the total amount of the occupied resources of the main request queue is less than the main request queue threshold, the requests which are positioned at the tail of the fast request queue and exceed the preset fast request queue threshold are proposed and inserted into the tail of the main request queue.
2. The method of claim 1, wherein after receiving the request from the virtual machine, estimating whether the requested data is normal, and discarding the abnormal request.
3. The method of claim 1, wherein when the resource occupied by the main request queue is greater than a preset main request queue threshold, requests in the main request queue whose resource number called when the request is executed is less than the resource threshold are extracted and inserted into the tail of the fast request queue.
4. A method according to any one of claims 1 to 3, wherein the amount of resources invoked on request execution is the size of the resource.
5. A method as claimed in any one of claims 1 to 3, wherein the amount of resources invoked on request execution is the length of a processor time slice occupied by the request.
6. A virtual machine intelligent management apparatus for cloud computing, configured to implement the virtual machine intelligent management method for cloud computing according to claims 1-5, and comprising the following modules:
the initialization module is used for creating a main request queue and a quick request queue of the request and emptying the main request queue and the quick request queue to realize the initialization of the main request queue and the quick request queue;
the pre-estimating module is used for receiving a request sent by a computer system and estimating the quantity of resources called when the request is executed;
the enqueuing module is used for acquiring the quantity of resources called by all requests in the current main request queue, if the quantity of the resources called by all the requests in the current main request queue is greater than a preset main request queue threshold value and the quantity of the resources called when the requests are executed is less than the preset resource threshold value, the requests are inserted into the tail of the fast request queue, otherwise, the requests are inserted into the tail of the main request queue; and
and the dequeuing module is used for respectively acquiring the requests from the head of the main request queue and the head of the fast request queue according to the sequence.
7. A computer-readable storage medium having stored thereon computer instructions, characterized in that the instructions, when executed by a processor, carry out the steps of the method according to any one of claims 1 to 5.
CN201711475741.5A 2017-12-29 2017-12-29 Intelligent virtual machine management method and device for cloud computing Active CN108196939B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711475741.5A CN108196939B (en) 2017-12-29 2017-12-29 Intelligent virtual machine management method and device for cloud computing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711475741.5A CN108196939B (en) 2017-12-29 2017-12-29 Intelligent virtual machine management method and device for cloud computing

Publications (2)

Publication Number Publication Date
CN108196939A CN108196939A (en) 2018-06-22
CN108196939B true CN108196939B (en) 2022-02-18

Family

ID=62586236

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711475741.5A Active CN108196939B (en) 2017-12-29 2017-12-29 Intelligent virtual machine management method and device for cloud computing

Country Status (1)

Country Link
CN (1) CN108196939B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109213561A (en) * 2018-09-14 2019-01-15 珠海国芯云科技有限公司 The equipment scheduling method and device of virtual desktop based on container
CN109871262A (en) * 2019-02-28 2019-06-11 北京隆普智能科技有限公司 A kind of method and its creating device of virtual machine creating
CN109992357B (en) * 2019-04-10 2022-01-14 中航金网(北京)电子商务有限公司 Method and system for avoiding conflict when executing change to virtual machine
CN110442431A (en) * 2019-08-12 2019-11-12 安徽赛福贝特信息技术有限公司 The creation method of virtual machine in a kind of cloud computing system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104202261A (en) * 2014-08-27 2014-12-10 华为技术有限公司 Service request processing method and device
CN104199739A (en) * 2014-08-26 2014-12-10 浪潮(北京)电子信息产业有限公司 Speculation type Hadoop scheduling method based on load balancing
CN105448006A (en) * 2015-12-30 2016-03-30 武汉邮电科学研究院 Intelligent supermarket cashier system and method based on mobile payment and IOT (Internet of Things)
CN105991588A (en) * 2015-02-13 2016-10-05 华为技术有限公司 ethod and apparatus for resisting message attack
CN106470169A (en) * 2015-08-19 2017-03-01 阿里巴巴集团控股有限公司 A kind of service request method of adjustment and equipment
CN107018175A (en) * 2017-01-11 2017-08-04 杨立群 The dispatching method and device of mobile cloud computing platform

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9355129B2 (en) * 2008-10-14 2016-05-31 Hewlett Packard Enterprise Development Lp Scheduling queries using a stretch metric

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104199739A (en) * 2014-08-26 2014-12-10 浪潮(北京)电子信息产业有限公司 Speculation type Hadoop scheduling method based on load balancing
CN104202261A (en) * 2014-08-27 2014-12-10 华为技术有限公司 Service request processing method and device
CN105991588A (en) * 2015-02-13 2016-10-05 华为技术有限公司 ethod and apparatus for resisting message attack
CN106470169A (en) * 2015-08-19 2017-03-01 阿里巴巴集团控股有限公司 A kind of service request method of adjustment and equipment
CN105448006A (en) * 2015-12-30 2016-03-30 武汉邮电科学研究院 Intelligent supermarket cashier system and method based on mobile payment and IOT (Internet of Things)
CN107018175A (en) * 2017-01-11 2017-08-04 杨立群 The dispatching method and device of mobile cloud computing platform

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"LRURC: A Low Complexity and Approximate Fair Active Queue Management Algorithm for Choking Non-Adaptive Flows";Xianliang Jiang等;《IEEE Communications Letters》;20150430;第19卷(第4期);第545-548页 *
"基于HBase的交通流数据实时存储系统";陆婷等;《计算机应用》;20150110;第35卷(第01期);第103-107页 *

Also Published As

Publication number Publication date
CN108196939A (en) 2018-06-22

Similar Documents

Publication Publication Date Title
CN108196939B (en) Intelligent virtual machine management method and device for cloud computing
Delgado et al. Job-aware scheduling in eagle: Divide and stick to your probes
US8812639B2 (en) Job managing device, job managing method and job managing program
US9019826B2 (en) Hierarchical allocation of network bandwidth for quality of service
KR101640848B1 (en) Job Allocation Method on Multi-core System and Apparatus thereof
US11093352B2 (en) Fault management in NVMe systems
US20130060972A1 (en) Balancing usage of hardware devices among clients
WO2022068697A1 (en) Task scheduling method and apparatus
US20190286582A1 (en) Method for processing client requests in a cluster system, a method and an apparatus for processing i/o according to the client requests
CN107203422B (en) Job scheduling method for high-performance computing cloud platform
US10089155B2 (en) Power aware work stealing
CN108304254B (en) Method and device for controlling process scheduling of rapid virtual machine
CN115237587A (en) System and method for I/O command scheduling based on multiple resource parameters
US10606650B2 (en) Methods and nodes for scheduling data processing
CN112764904A (en) Method for preventing starvation of low priority tasks in multitask-based system
CN113127230B (en) Dynamic resource regulation and control method and system for perceiving and storing tail delay SLO
CN114721818A (en) Kubernetes cluster-based GPU time-sharing method and system
CN114327894A (en) Resource allocation method, device, electronic equipment and storage medium
KR101595967B1 (en) System and Method for MapReduce Scheduling to Improve the Distributed Processing Performance of Deadline Constraint Jobs
US9990240B2 (en) Event handling in a cloud data center
US11194619B2 (en) Information processing system and non-transitory computer readable medium storing program for multitenant service
CN104866370A (en) Dynamic time slice dispatching method and system for parallel application under cloud computing environment
US8245229B2 (en) Temporal batching of I/O jobs
CN108287753B (en) Computer system fast scheduling method and device
CN115495249A (en) Task execution method of cloud cluster

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