Method and device for determining demand quantity of cloud computing resources and related equipment

By receiving application task processing requests from terminal devices, dividing processing tasks of edge servers, and generating cloud computing resource requirements based on queue length, solving the problem of high cost of purchasing cloud resources by edge servers, realizing the optimal configuration and task of resource requirements Guarantee of delay.

CN119402443APending Publication Date: 2025-02-07CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411497566.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-24
Publication Date
2025-02-07

AI Technical Summary

Technical Problem

The cost of edge servers to purchase computing resources from cloud centers is too high, and it is difficult to meet the computing needs of both delay-sensitive and delay-insensitive applications.

Method used

By receiving application task processing requests sent by terminal devices, local processing tasks and cloud processing tasks of edge servers are divided according to the processing priority and acceptable delay extreme value of application tasks, and cloud computing resource requirements are generated based on the queue length, using Li Yapu The Nov optimization function determines resource requirements with minimal cost.

Benefits of technology

It realizes that while reducing resource purchase costs, ensuring that task processing delays meet their respective acceptable extremes, and improving the computing power of edge servers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119402443A_ABST
    Figure CN119402443A_ABST
Patent Text Reader

Abstract

The invention provides a cloud computing resource demand quantity determination method and device and related equipment, and relates to the technical field of cloud computing, and the method comprises the steps: receiving an application task processing request sent by terminal equipment; according to the processing priority corresponding to each application task in the application task processing request, performing task division on the application task processing request sent by the terminal equipment, and determining an edge server local processing task and an edge server cloud processing task; according to the acceptable time delay extreme value of each application task, the queue length of each application task waiting for processing is determined; and based on the edge server local processing task, the edge server cloud processing task and the queue length when each application task waits for processing, generating the cloud computing resource demand required by the application task processing request. According to the invention, the resource demand cost can be reduced, and the processing delay requirement of the task can be ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] Applications that are offloaded from terminal devices to edge servers can generally be divided into two categories, such as Figure 1 As shown, one type is delay-sensitive applications, such as augmented reality applications and virtual reality applications, which have high priority and need real-time processing. The other type is delay-insensitive applications, such as neural network training, which have lower priority and can be queued for processing. The limited computing resources of the edge server cannot meet the computing needs of all applications at the same time. So how should the computing power of the edge server be strengthened to cope with different types of application requests?

[0003] Related technologies have studied edge-cloud center collaboration methods. Edge servers purchase computing resources from cloud centers and offload tasks to latency-insensitive applications because they can accept a certain processing delay, while all latency-sensitive applications are processed in real time on edge servers. There are multiple ways to purchase cloud resources. Taking Amazon EC2 (Amazon Elastic Compute Cloud, a powerful cloud computing service) service as an example, Amazon EC2 service includes two common EC2 instance purchase options. One is the on-preserved purchase method, which means pre-purchasing a certain amount of computing resources and then using them in a time period. It has a longer billing cycle and inflexible resource scheduling, but is cheaper. The other is the on-demand purchase method, which means paying as you go. It has a shorter billing cycle and flexible resource scheduling, but is more expensive.

[0004] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0005] The present disclosure provides a method, apparatus and related equipment for determining the demand for cloud computing resources, which at least to a certain extent overcome the problem in the related art that the cost of an edge server purchasing computing resources from a cloud center is too high.

[0006] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by the practice of the present disclosure.

[0007] According to one aspect of the present disclosure, a method for determining a demand for cloud computing resources is provided, comprising: receiving an application task processing request sent by a terminal device, the application task processing request comprising multiple application tasks and a processing priority and an acceptable delay extreme value corresponding to each application task; dividing the application task processing request sent by the terminal device into tasks according to the processing priority corresponding to each application task in the application task processing request, and determining an edge server local processing task and an edge server cloud processing task; determining a queue length of each application task when waiting for processing according to the acceptable delay extreme value of each application task; and generating a cloud computing resource demand required for the application task processing request based on the edge server local processing task, the edge server cloud processing task and the queue length of each application task when waiting for processing.

[0008] In some exemplary embodiments of the present disclosure, based on the aforementioned scheme, the application task processing request also includes a delay perception parameter for characterizing the delay requirement priority of each application task, and determining the queue length of each application task waiting for processing according to the acceptable delay extreme value of each application task, including: determining the delay of each application task waiting for processing according to the delay perception parameter of each application task; if the delay of each application task waiting for processing is less than the acceptable delay extreme value of each application task, determining the queue length of each application task waiting for processing.

[0009] In some exemplary embodiments of the present disclosure, based on the aforementioned scheme, based on the edge server local processing tasks, the edge server cloud processing tasks and the queue length of each application task waiting for processing, the cloud computing resource demand required for the application task processing request is generated, including: determining the local computing cost required to process the edge server local offloading task according to the computing resource cost of the edge server; determining the cloud resource purchase cost required to process the edge server cloud offloading task according to the cloud computing resource cost of the cloud center; based on the Lyapunov optimization function, finding the optimal solution for the queue length of each application task waiting for processing when the local computing cost and the cloud resource purchase cost are minimized, and generating the cloud computing resource demand required for the application task processing request.

[0010] In some exemplary embodiments of the present disclosure, based on the aforementioned scheme, the application task processing requests sent by the terminal device are divided into tasks according to the processing priority corresponding to each application task in the application task processing request, and the edge server local processing tasks and the edge server cloud processing tasks are determined, including: when the processing priority is greater than or equal to a preset threshold, determining that the application corresponding to the processing priority is a delay-sensitive application; when the processing priority is less than a preset threshold, determining that the application corresponding to the processing priority is a delay-insensitive application; dividing the delay-sensitive application into edge server cloud processing tasks; and dividing the delay-insensitive application into edge server local processing tasks.

[0011] In some exemplary embodiments of the present disclosure, based on the aforementioned scheme and based on the Lyapunov optimization function, the optimal solution for the queue length of each application task waiting for processing is obtained when the local computing cost and the cloud resource purchase cost are minimized, and the cloud computing resource demand required for the application task processing request is generated. The method also includes: determining the cloud computing resources required for the application task processing request based on the cloud computing resource demand.

[0012] In some exemplary embodiments of the present disclosure, based on the aforementioned scheme, the cloud computing resources include a first cloud computing resource and a second cloud computing resource, and the cloud computing resources required for the application task processing request are determined according to the demand for the cloud computing resources, including: determining the first cloud computing resource required for the application task processing request according to the demand for the first cloud computing resource; determining the second cloud computing resource required for the application task processing request according to the demand for the second cloud computing resource.

[0013] According to another aspect of the present disclosure, there is also provided a device for determining a cloud computing resource demand, including: an application task processing request receiving module, used to receive an application task processing request sent by a terminal device, the application task processing request including multiple application tasks and a processing priority and an acceptable delay extreme value corresponding to each application task; a task division module, used to divide the application task processing request sent by the terminal device according to the processing priority corresponding to each application task in the application task processing request, and determine an edge server local processing task and an edge server cloud processing task; a task queue module, used to determine a queue length of each application task waiting for processing according to the acceptable delay extreme value of each application task; and a resource determination module, used to generate a cloud computing resource demand required for the application task processing request based on the edge server local processing task, the edge server cloud processing task and the queue length of each application task waiting for processing.

[0014] According to another aspect of the present disclosure, there is also provided an electronic device, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute any one of the above-mentioned methods for determining cloud computing resource demand by executing the executable instructions.

[0015] According to another aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, any one of the above-mentioned methods for determining the demand for cloud computing resources is implemented.

[0016] According to another aspect of the present disclosure, a computer program product is provided, including: a computer program or instructions, which implement any of the above-mentioned methods for determining cloud computing resource demand when executed by a processor.

[0017] A method, apparatus and related equipment for determining the demand for cloud computing resources provided in the embodiments of the present disclosure generates the demand for cloud computing resources required for application task processing requests based on the queue length of each application task waiting for processing, the local processing tasks of the edge server and the cloud processing tasks of the edge server, with the goal of minimizing the average system time cost, and taking the processing delay of all application tasks less than their respective acceptable delay extremes as the delay constraint. The embodiments of the present disclosure determine computing resources through two time scales, thereby achieving the goal of reducing the resource purchase cost while ensuring the processing delay requirements of the task.

[0018] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0020] Figure 1 A schematic diagram showing common task types processed by edge servers in related technologies;

[0021] Figure 2 A schematic diagram showing an exemplary application system architecture of a method for determining cloud computing resource demand in an embodiment of the present disclosure;

[0022] Figure 3 A schematic diagram of a method for determining cloud computing resource demand in an embodiment of the present disclosure is shown;

[0023] Figure 4A schematic diagram of a method for solving cloud computing resource demand in an embodiment of the present disclosure is shown;

[0024] Figure 5 A schematic diagram of a specific process for determining the demand for cloud computing resources in an embodiment of the present disclosure is shown;

[0025] Figure 6 A schematic diagram of a device for determining cloud computing resource demand in an embodiment of the present disclosure is shown;

[0026] Figure 7 A schematic diagram of an electronic device to which a method for determining cloud computing resource demand is applied in an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0027] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that the disclosure will be more comprehensive and complete and to fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0028] In addition, the described features, structures or characteristics may be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced without one or more of the specific details, or other methods, components, devices, steps, etc. may be adopted. In other cases, known methods, devices, implementations or operations are not shown or described in detail to avoid blurring the various aspects of the present disclosure.

[0029] The flowcharts shown in the accompanying drawings are only exemplary and do not necessarily include all the contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined, so the actual execution order may change according to actual conditions.

[0030] For ease of understanding, several terms involved in the present disclosure are explained below:

[0031] Edge computing (Multi-access Edge Computing, MEC): is a distributed computing architecture that moves the processing of applications, data, and services from network center nodes to network edge nodes for processing. The key to this concept is to bring computing resources closer to data sources and end users to reduce latency and improve performance.

[0032] Two-TimeScale (TTS): It is a scheduling algorithm in the time dimension. It decouples an optimization problem into two time-scale planning problems. It first makes an overall decision on a large time scale and then optimizes and adjusts on a small time scale. This method can reduce the scale of solving long-term problems.

[0033] Cloud Resource Purchase (CRP): refers to the purchase of computing resources from public clouds. Public clouds provide a variety of resources and a variety of purchasing methods. Different purchasing methods have different pricing models. Combining multiple resource purchasing methods can purchase more computing resources at a lower cost.

[0034] Task Offloading (TO): In edge computing, end users or edge servers send part or all of their task requests to edge servers or cloud computing centers for processing. This method can reduce the task load of end users or edge servers and ensure that all tasks can be completed within the specified time.

[0035] Figure 2 FIG. 1 is a schematic diagram of an exemplary application system architecture to which the method for determining the cloud computing resource demand in the embodiment of the present disclosure can be applied. Figure 2 As shown, the system architecture may include a terminal device 201 , a network 202 and a server 203 .

[0036] The network 202 is a medium for providing a communication link between the terminal device 201 and the server 203, and may be a wired network or a wireless network.

[0037] Optionally, the wireless network or wired network described above uses standard communication technology and / or protocol. The network is usually the Internet, but it can also be any network, including but not limited to a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a mobile, wired or wireless network, a dedicated network or any combination of a virtual private network). In some embodiments, technologies and / or formats including Hyper Text Mark-up Language (HTML), Extensible Markup Language (XML), etc. are used to represent data exchanged through the network. In addition, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Network (VPN), Internet Protocol Security (IPsec) can also be used to encrypt all or some links. In other embodiments, customized and / or dedicated data communication technologies can also be used to replace or supplement the above data communication technologies.

[0038] The terminal device 201 can be various electronic devices, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, wearable devices, augmented reality devices, virtual reality devices, etc.

[0039] Optionally, the client of the application installed in different terminal devices 201 is the same, or the client of the same type of application based on different operating systems. Based on the different terminal platforms, the specific form of the client of the application can also be different, for example, the application client can be a mobile client, a PC client, etc.

[0040] The server 203 may be a server that provides various services, such as a background management server that provides support for the device operated by the user using the terminal device 201. The background management server may analyze and process the received request and other data, and feed back the processing results to the terminal device.

[0041] Optionally, the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. The terminal can be a smart phone, tablet computer, laptop computer, desktop computer, smart speaker, smart watch, etc., but is not limited to this. The terminal and the server can be directly or indirectly connected via wired or wireless communication, which is not limited in this application.

[0042] Those skilled in the art will know that Figure 2 The number of terminal devices, networks and servers in the embodiment is only for illustration, and any number of terminal devices, networks and servers may be provided according to actual needs, and the embodiments of the present disclosure do not limit this.

[0043] Under the above system architecture, a method for determining cloud computing resource demand is provided in an embodiment of the present disclosure. The method can be executed by any electronic device with computing processing capabilities.

[0044] In some embodiments, the method for determining the amount of cloud computing resource demand provided in the embodiments of the present disclosure may be executed by a terminal device of the above-mentioned system architecture; in other embodiments, the method for determining the amount of cloud computing resource demand provided in the embodiments of the present disclosure may be executed by a server in the above-mentioned system architecture; in other embodiments, the method for determining the amount of cloud computing resource demand provided in the embodiments of the present disclosure may be implemented by the terminal device and server in the above-mentioned system architecture through interaction.

[0045] First, in response to the above-mentioned problems, a method for determining the demand for cloud computing resources that can be applied to the problem of limited computing resources of edge servers is provided in the embodiments of the present disclosure. Specifically, the method for determining the demand for cloud computing resources in the embodiments of the present disclosure can be applied to any electronic device that needs to purchase computing resources from a cloud center. In more detail, the embodiments of the present disclosure, based on the queue length of each application task waiting for processing, the local processing tasks of the edge server, and the cloud processing tasks of the edge server, takes minimizing the average system time cost as the goal, and takes the processing delay of all application tasks being less than their respective acceptable delay extremes as the delay constraint, to generate the cloud computing resource demand required for application task processing requests. The embodiments of the present disclosure determine computing resources through two time scales, thereby achieving the goal of reducing the resource purchase cost while ensuring the processing delay requirements of the task.

[0046] Figure 3A schematic diagram of a method for determining cloud computing resource demand in an embodiment of the present disclosure is shown, and the method includes the following steps:

[0047] S302, receiving an application task processing request sent by a terminal device, where the application task processing request includes a plurality of application tasks and a processing priority and an acceptable delay extreme value corresponding to each application task.

[0048] It should be noted that the application task processing request in the embodiment of the present disclosure is a request sent by the terminal device to the edge server to process any application task. Specifically, it can be a request sent by the terminal device to the edge server to uninstall a certain application. For example, there is an augmented reality application that users can use on the terminal device to view virtual information in the surrounding environment in real time. However, this application needs to execute complex image processing and computer vision algorithms. These algorithms are very complex and computationally intensive. If they are run entirely on a mobile device, they may cause the terminal device to overheat, the battery to drain quickly, and the user experience to deteriorate. Therefore, the terminal device can choose to offload part of the computing tasks of the application or all of the computing tasks to a nearby edge server.

[0049] In addition, the processing priority corresponding to each application task is used to characterize the urgency and real-time requirements of each application task. For example, augmented reality applications and virtual reality applications have high processing priorities and require real-time processing.

[0050] In addition, the acceptable latency limit corresponding to each application task refers to the longest waiting time that can be tolerated from initiating a request to receiving a response without affecting the user experience, system performance or key operations. Specifically, different types of application tasks have very different requirements for latency, so it needs to be set according to the specific application scenario. For example, the acceptable latency limit for a video conference that requires real-time communication may be 200 milliseconds, while the acceptable latency limit for general big data analysis may be 30 minutes.

[0051] S304: According to the processing priority corresponding to each application task in the application task processing request, the application task processing request sent by the terminal device is divided into tasks, and the edge server local processing task and the edge server cloud processing task are determined.

[0052] It should be noted that the local processing tasks of the edge server in the embodiments of the present disclosure refer to application tasks that can be processed using the remaining computing resources of the edge server, and the cloud processing tasks of the edge server refer to application tasks that need to purchase computing resources from the cloud center for processing. The computing resources of the edge server are mainly used to process tasks close to the data source or user end to reduce latency, improve response speed and reduce the burden on servers in the cloud center. For example, the computing resources of the edge server are crucial for applications that require instant feedback, such as self-driving cars and remote surgery, where low latency is critical. The edge server can quickly process data and make decisions locally.

[0053] S306: Determine the queue length of each application task when waiting for processing according to the acceptable delay extreme value of each application task.

[0054] It should be noted that the queue length in the embodiment of the present disclosure refers to the number of application tasks waiting to be processed in the current queue. The more application tasks in the queue, the longer the waiting time is. Therefore, the queue length directly affects the processing delay of the application tasks. In order to ensure that each application task is completed within its acceptable delay limit, it is necessary to dynamically adjust the queue length according to the processing capacity of the edge server and the average processing time of the application tasks.

[0055] S308, based on the local processing tasks of the edge server, the cloud processing tasks of the edge server, and the queue length of each application task waiting to be processed, generate the cloud computing resource demand required for the application task processing request.

[0056] A method for determining a demand for cloud computing resources provided in an embodiment of the present disclosure comprises: first, receiving an application task processing request sent by a terminal device, the application task processing request comprising multiple application tasks and a processing priority and an acceptable delay extreme value corresponding to each application task; secondly, dividing the application task processing request sent by the terminal device into tasks according to the processing priority corresponding to each application task in the application task processing request, and determining an edge server local processing task and an edge server cloud processing task; then, determining a queue length when each application task is waiting for processing according to the acceptable delay extreme value of each application task; finally, generating a cloud computing resource demand required for the application task processing request based on the edge server local processing tasks, the edge server cloud processing tasks and the queue length when each application task is waiting for processing. Compared with the problem of high cost of purchasing cloud resources for edge servers in related technologies, the embodiments of the present disclosure take the queue length of each application task waiting for processing and the local processing tasks of the edge server and the cloud processing tasks of the edge server as the goal, and take the processing delay of all application tasks less than their respective acceptable delay extremes as the delay constraint to generate the cloud computing resource demand required for application task processing requests, and determine the computing resources through two time scales, thereby achieving the goal of reducing the resource purchase cost while ensuring the processing delay requirements of the task.

[0057] In some embodiments, the disclosed embodiments divide the application task processing request sent by the terminal device into tasks according to the processing priority corresponding to each application task in the application task processing request, and determine the edge server local processing task and the edge server cloud processing task, including: when the processing priority is greater than or equal to a preset threshold, determining that the application corresponding to the processing priority is a delay-sensitive application; when the processing priority is less than the preset threshold, determining that the application corresponding to the processing priority is a delay-insensitive application; dividing the delay-sensitive application into the edge server cloud processing task; dividing the delay-insensitive application into the edge server local processing task. Specifically, by distinguishing between delay-sensitive and delay-insensitive applications, a higher processing priority can be assigned to delay-sensitive applications. This ensures that these applications can respond quickly when needed without being blocked by other low-priority tasks; and can also dynamically adjust the resource allocation strategy according to the current system load. For example, in high-load conditions, priority is given to ensuring the resource requirements of delay-sensitive applications; and in low-load conditions, more delay-insensitive applications can be processed.

[0058] In some embodiments, the application task processing request in the disclosed embodiment also includes a delay perception parameter for characterizing the delay requirement of each application task, and determines the queue length of each application task while waiting for processing according to the acceptable delay extreme value of each application task, including: determining the delay of each application task while waiting for processing according to the delay perception parameter of each application task; if the delay of each application task while waiting for processing is less than the acceptable delay extreme value of each application task, then determining the queue length of each application task while waiting for processing. Specifically, in order to meet the delay constraints of all application tasks, the disclosed embodiment determines the priority of each application task for delay through the delay perception parameter of each application task, which can ensure that all delay-insensitive application tasks will not exceed their own acceptable delay extreme values ​​when waiting in line for processing.

[0059] Taking Amazon EC2 service as an example, in order to reduce the cost of edge servers purchasing computing resources from cloud center servers, the embodiment of the present disclosure considers two purchasing methods at the same time, and provides computing resources for edge servers on dual time scales. Specifically, the embodiment of the present disclosure determines the number of resources under the on-preserved purchasing method at the beginning of each time frame, and a time frame is further divided into a large number of T time slots. The number of resources under the on-demand purchasing method is determined in each time slot τ, and the remaining computing resources a(τ) after the edge server processes the delay-sensitive application are added. Then, in each time slot τ, the edge server has so many computing resources to process the delay-insensitive application. However, it is very difficult to make the right decision on the amount of resource purchase. The first point is the uncertainty of the system state information. For example, the request volume d(τ) of delay-insensitive applications changes dynamically. The second point is that there are two time scales for resource purchase decisions. In particular, the number of resources under the on-preserved purchase method will affect the entire time frame, making the decision coupled in time. The third point is that delay-insensitive applications also have delay constraints. When waiting in line for processing, the computing resource allocation problem of multiple delay-insensitive applications must be considered. In order to solve the above challenges, the embodiments of the present disclosure propose dual-time-scale Lyapunov optimization and delay-aware virtual queue technology.

[0060] In some embodiments, the goal of the disclosed embodiments is to minimize the average system time cost, which includes the cost of application task processing and resource purchase, while also satisfying the delay constraints of application tasks. Specifically, the disclosed embodiments determine the average system time cost by formula (1) and determine the delay constraints of all application tasks by formula (2):

[0061]

[0062] Where t is the time frame; τ is a time slot in a time frame, and Cost is the average system time cost; is the maximum processing delay for processing application task i; is the acceptable delay limit of application task i.

[0063] In some embodiments, the embodiments of the present disclosure construct a real task queue and a latency-aware virtual queue for each application task, wherein the real queue refers to the queue of application tasks when they are waiting to be processed; and the latency-aware virtual queue is transformed from the real queue, and the virtual queue has an additional latency-aware parameter for characterizing the latency requirements of each application task. Specifically, each application task is set to i, and the real task queue of each application task i is set to Q i (τ), set the latency-aware virtual queue to H i (τ), the delay-aware parameter in the virtual queue is set to ∈ i , and ∈ i It is also used to measure the importance of application task i to latency. If the real queue Q i (τ) and the virtual queue H i (τ) has an upper bound, then all delay-insensitive application tasks i can be processed before the extreme value of the acceptable delay. In this way, the delay constraint is transformed into a queue stability problem.

[0064] In more detail, the embodiment of the present disclosure can obtain the real queue Q by formula (3) and (4): i (τ) and the virtual queue H i (τ):

[0065] Q i (τ+1)=max{Q i (τ)-x i (τ)-y i (τ),0}+d i (τ) (3)

[0066]

[0067] Among them, Q i (τ+1) is the real task queue of application task i in the τ+1th time slot; Q i (τ) is the real task queue of application task i in the τth time slot; x i (τ) is the amount of computing resources allocated to application task i by the edge server; y i (τ) is the amount of computing resources allocated to application task i by the cloud center server; d i (τ) is the total number of CPU revolutions required to process application task i in the τth time slot; H i(τ+1) is the virtual task queue of application task i in the τ+1th time slot; H i (τ) is the virtual task queue of application task i in the τth time slot; ∈ i is the delay perception parameter.

[0068] In some embodiments, Figure 4 As shown, the embodiment of the present disclosure generates the cloud computing resource demand required for application task processing requests based on the edge server local processing tasks, the edge server cloud processing tasks and the queue length of each application task waiting for processing, including:

[0069] S402: Determine the local computing cost required for processing the local offload task of the edge server according to the computing resource cost of the edge server.

[0070] S404: Determine the cloud resource purchase cost required to process the edge server cloud offloading task based on the cloud computing resource cost of the cloud center.

[0071] S406, based on the Lyapunov optimization function, when the local computing cost and the cloud resource purchase cost are minimized, the optimal solution for the queue length of each application task waiting for processing is obtained, and the cloud computing resource demand required for the application task processing request is generated.

[0072] In some embodiments, in order to determine the time-averaged cost minimized by formula (1), the disclosed embodiment adopts the Lyapunov optimization framework to decouple the optimization problem of the long time period into the optimization problem of each time frame. However, the optimization problem of these T time slots still cannot be solved because the future state information of the system is unknown. In order to obtain the decision of a single time slot, the disclosed embodiment adopts a dual-time scale Lyapunov optimization to approximate the queue length as a constant in the entire time frame. Specifically, at the beginning of each time frame, the task processing decision and the resource demand under the on-preserved purchase mode are obtained by formula (5), and then the task processing decision and the resource demand under the on-demand purchase mode are obtained by formula (6) in each time slot, and finally the queue length is updated.

[0073]

[0074] Where M is the set of delay-insensitive applications; x i (τ) is the amount of computing resources allocated to application task i by the edge server; V is the main parameter of the Lyapunov optimization algorithm; P E (τ) is the computing resource cost of the edge server; Q i (τ) is the real task queue of application task i in the τth time slot; H i (τ) is the virtual task queue of application task i in the τth time slot; yi (τ) is the amount of computing resources allocated to application task i by the cloud center server; κ 1 (τ) is the computing resource cost of the cloud center; c lt (τ) is the number of resources in the cloud center under the on-preserved purchase mode; The cost of resources purchased in the on-preserved mode on the cloud center; c rt (τ) is the number of resources purchased on-demand in the cloud center; This is the cost of resources purchased on-demand on the cloud center.

[0075] In some embodiments, the disclosed embodiment is based on the Lyapunov optimization function, and when the local computing cost and the cloud resource purchase cost are minimized, the optimal solution is obtained for the queue length of each application task when it is waiting for processing, and after the cloud computing resource demand required for the application task processing request is generated, the cloud computing resource demand determination method in the disclosed embodiment also includes: determining the cloud computing resources required for the application task processing request according to the cloud computing resource demand. Specifically, the disclosed embodiment can find the optimal waiting time of each application task in the queue through the Lyapunov optimization algorithm to balance the system load and response time, calculate the cloud computing resources required for each application task according to the optimized queue length and task characteristics, and convert the calculated demand into the actual cloud computing resource configuration, such as the number and type of EC2 instances required. The edge server in the disclosed embodiment purchases the computing resources of the cloud center at two different time scales and offloads its own application tasks to the cloud computing center, thereby solving the problem of insufficient computing resources of itself, and at the same time reducing the cost of purchasing computing resources of the cloud center.

[0076] In some embodiments, the cloud computing resources in the embodiments of the present disclosure include a first cloud computing resource and a second cloud computing resource. According to the demand for cloud computing resources, the cloud computing resources required for the application task processing request are determined, including: determining the first cloud computing resource required for the application task processing request according to the demand for the first cloud computing resource; determining the second cloud computing resource required for the application task processing request according to the demand for the second cloud computing resource. Specifically, taking Amazon EC2 service as an example, Amazon EC2 service includes two common EC2 instance purchase options, one is the reserved instance (on-preserved) purchase method, and the other is the on-demand instance (on-demanded) purchase method. The first cloud computing resource demand in the embodiments of the present disclosure can be the demand for computing resources determined by the on-demand instance purchase method, or it can be the demand for computing resources determined by the reserved instance purchase method. Of course, those skilled in the art can set it according to the actual situation, and the embodiments of the present disclosure do not make specific limitations.

[0077] In some embodiments, Figure 5 As shown, the objects mainly included in the embodiment of the present disclosure include edge servers, cloud computing centers, and various delay-sensitive and delay-insensitive task requests. By modeling the arrival of different tasks and the computing resources of edge servers, modeling virtual queues to meet the delay constraints of tasks, and decoupling the optimization problem of a long time period into a single time frame problem and optimizing the problem of each time frame, the cost of the edge server purchasing cloud center computing resources is reduced. In more detail, the specific steps of the solution in the embodiment of the present disclosure are as follows:

[0078] S502, establish a system model, taking into account the dynamic arrival of various delay-insensitive applications, and the remaining computing resources and computing resource costs of the edge server also change dynamically. Specifically, the system model goal in the embodiment of the present disclosure is to minimize the average system time cost, which includes the cost of task offloading and resource purchase, while also meeting the delay constraints of the application.

[0079] S504, constructing a real task queue and a latency-aware virtual queue for each application task, and transforming the latency constraint into a queue stability problem through the real task queue and the virtual queue.

[0080] S506, Lyapunov optimization algorithm is used to decouple the optimization problem of long time period into the optimization problem of each time frame.

[0081] S508, approximate the queue length as a constant in the entire time frame, and solve the optimization problem of a single time frame. Specifically, at the beginning of each time frame, the task processing decision and the resource demand under the on-preserved purchase mode are obtained by formula (5); the task processing decision and the resource demand under the on-demand purchase mode are obtained by formula (6), and finally the queue length is updated.

[0082] Based on the same inventive concept, the present disclosure also provides a cloud computing resource demand determination device, such as the following embodiment. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0083] Figure 6 A schematic diagram of a cloud computing resource demand determination device according to an embodiment of the present disclosure is shown, the device comprising:

[0084] The application task processing request receiving module 601 is used to receive an application task processing request sent by a terminal device, where the application task processing request includes multiple application tasks and a processing priority and an acceptable delay extreme value corresponding to each application task;

[0085] The task division module 602 is used to divide the application task processing request sent by the terminal device according to the processing priority corresponding to each application task in the application task processing request, and determine the edge server local processing task and the edge server cloud processing task;

[0086] The task queue module 603 is used to determine the queue length of each application task when waiting for processing according to the acceptable delay extreme value of each application task;

[0087] The resource determination module 604 is used to generate the cloud computing resource demand required for the application task processing request based on the edge server local processing tasks, the edge server cloud processing tasks and the queue length of each application task waiting for processing.

[0088] A cloud computing resource demand determination device provided in an embodiment of the present disclosure receives an application task processing request sent by a terminal device through an application task processing request receiving module, wherein the application task processing request includes multiple application tasks and a processing priority and an acceptable delay extreme value corresponding to each application task; divides the application task processing request sent by the terminal device into tasks according to the processing priority corresponding to each application task in the application task processing request through a task division module, and determines an edge server local processing task and an edge server cloud processing task; determines a queue length of each application task when waiting for processing according to the acceptable delay extreme value of each application task through a task queue module; and generates a cloud computing resource demand required for the application task processing request based on the edge server local processing task, the edge server cloud processing task and the queue length of each application task when waiting for processing through a resource determination module. Compared with the problem of high cost of purchasing cloud resources for edge servers in related technologies, the embodiments of the present disclosure take the queue length of each application task waiting for processing and the local processing tasks of the edge server and the cloud processing tasks of the edge server as the goal, and take the processing delay of all application tasks less than their respective acceptable delay extremes as the delay constraint to generate the cloud computing resource demand required for application task processing requests, and determine the computing resources through two time scales, thereby achieving the goal of reducing the resource purchase cost while ensuring the processing delay requirements of the task.

[0089] In some embodiments, the application task processing request in the disclosed embodiment also includes a delay perception parameter for characterizing the delay requirement priority of each application task. The task queue module in the disclosed embodiment is also used to determine the delay of each application task when waiting for processing based on the delay perception parameter of each application task; if the delay of each application task when waiting for processing is less than the acceptable delay extreme value of each application task, then determine the queue length of each application task when waiting for processing.

[0090] In some embodiments, the resource determination module in the embodiments of the present disclosure is also used to determine the local computing cost required to process the local offload tasks of the edge server based on the computing resource costs of the edge server; determine the cloud resource purchase cost required to process the cloud offload tasks of the edge server based on the cloud computing resource costs of the cloud center; based on the Lyapunov optimization function, when the local computing cost and the cloud resource purchase cost are minimized, the optimal solution for the queue length of each application task waiting for processing is obtained, and the cloud computing resource demand required for the application task processing request is generated.

[0091] In some embodiments, the task division module in the embodiments of the present disclosure is also used to determine that the application corresponding to the processing priority is a delay-sensitive application when the processing priority is greater than or equal to a preset threshold; when the processing priority is less than the preset threshold, determine that the application corresponding to the processing priority is a delay-insensitive application; divide the delay-sensitive application into edge server cloud processing tasks; and divide the delay-insensitive application into edge server local processing tasks.

[0092] In some embodiments, the cloud computing resource demand determination device in the embodiments of the present disclosure also includes: a resource calculation module, which is used to find the optimal solution for the queue length of each application task waiting for processing based on the Lyapunov optimization function, while minimizing the local computing cost and the cloud resource purchase cost, and after generating the cloud computing resource demand required for the application task processing request, determine the cloud computing resources required for the application task processing request based on the cloud computing resource demand.

[0093] In some embodiments, the cloud computing resources in the embodiments of the present disclosure include a first cloud computing resource and a second cloud computing resource, wherein the resource computing module in the embodiments of the present disclosure is also used to determine the first cloud computing resources required for application task processing requests based on the demand for the first cloud computing resources; and to determine the second cloud computing resources required for application task processing requests based on the demand for the second cloud computing resources.

[0094] Those skilled in the art will appreciate that various aspects of the present disclosure may be implemented as systems, methods or program products. Therefore, various aspects of the present disclosure may be specifically implemented in the following forms, namely: complete hardware implementation, complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software, which may be collectively referred to herein as "circuits", "modules" or "systems".

[0095] Based on the same inventive concept, an electronic device is also provided in an embodiment of the present disclosure, the electronic device comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute any one of the above cloud computing resource demand determination methods by executing the executable instructions. Since the principle of solving the problem in the electronic device embodiment is similar to that in the above method embodiment, the implementation of the electronic device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0096] Refer to the following Figure 7 An electronic device 700 according to this embodiment of the present disclosure is described. Figure 7 The electronic device 700 shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0097] like Figure 7As shown, the electronic device 700 is in the form of a general computing device. The components of the electronic device 700 may include but are not limited to: at least one processing unit 701, at least one storage unit 702, and a bus 703 connecting different system components (including the storage unit 702 and the processing unit 701).

[0098] The storage unit stores program codes, which can be executed by the processing unit 701, so that the processing unit 701 executes the steps described in the above “exemplary method” section of this specification according to various exemplary embodiments of the present disclosure.

[0099] In some embodiments, when the electronic device is used to control the cloud computing resource demand determination method disclosed above, the processing unit 701 may perform the following steps of the above method embodiment:

[0100] An application task processing request sent by a terminal device is received, where the application task processing request includes multiple application tasks and a processing priority and an acceptable delay maximum value corresponding to each application task; the application task processing request sent by the terminal device is divided into tasks according to the processing priority corresponding to each application task in the application task processing request, and an edge server local processing task and an edge server cloud processing task are determined; according to the acceptable delay maximum value of each application task, a queue length of each application task waiting for processing is determined; based on the edge server local processing tasks, the edge server cloud processing tasks and the queue length of each application task waiting for processing, a cloud computing resource demand required for the application task processing request is generated.

[0101] The storage unit 702 may include a readable medium in the form of a volatile storage unit, such as a random access storage unit (RAM) 7021 and / or a cache storage unit 7022 , and may further include a read-only storage unit (ROM) 7023 .

[0102] The storage unit 702 may also include a program / utility 7024 having a set (at least one) of program modules 7025, such program modules 7025 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0103] Bus 703 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0104] The electronic device 700 may also communicate with one or more external devices 704 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device 700, and / or may communicate with any device that enables the electronic device 700 to communicate with one or more other computing devices (e.g., routers, modems, etc.). This communication may be performed through an input / output (I / O) interface 705. In addition, the electronic device 700 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) through a network adapter 706. As shown, the network adapter 706 communicates with other modules of the electronic device 700 through a bus 703. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 700, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.

[0105] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0106] Based on the same inventive concept, the embodiments of the present disclosure also provide a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, any of the above methods for determining the demand for cloud computing resources is implemented. Since the principle of solving the problem in the embodiment of the computer-readable storage medium is similar to that in the above method embodiment, the implementation of the embodiment of the computer-readable storage medium can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0107] More specific examples of computer-readable storage media in the present disclosure may include, but are not limited to, an electrical connection having one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0108] In the present disclosure, a computer readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, wherein a readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A readable signal medium may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0109] Alternatively, the program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.

[0110] In a specific implementation, the program code for performing the operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, etc., and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., using an Internet service provider to connect through the Internet).

[0111] Based on the same inventive concept, a computer program product is also provided in the embodiments of the present disclosure, including a computer program product, including: a computer program or an instruction, which implements any one of the cloud computing resource demand determination methods in the above method embodiments when the computer program or the instruction is executed by a processor. Since the principle of solving the problem in the computer program product embodiment is similar to that in the above method embodiment, the implementation of the computer program product embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0112] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.

[0113] In addition, although the steps of the method in the present disclosure are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps, etc.

[0114] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0115] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. The present disclosure is intended to cover any variations, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the appended claims.

Claims

1. A method for determining cloud computing resource demand, characterized in that: include: Receiving an application task processing request sent by a terminal device, wherein the application task processing request includes a plurality of application tasks and a processing priority and an acceptable delay extreme value corresponding to each application task; According to the processing priority corresponding to each application task in the application task processing request, the application task processing request sent by the terminal device is divided into tasks to determine the edge server local processing task and the edge server cloud processing task; According to the acceptable delay limit of each application task, determine the queue length of each application task when waiting for processing; Based on the local processing tasks of the edge server, the cloud processing tasks of the edge server and the queue length of each application task waiting for processing, the cloud computing resource demand required for the application task processing request is generated.

2. The method for determining cloud computing resource demand according to claim 1, characterized in that: The application task processing request also includes a delay perception parameter for characterizing the delay requirement of each application task being prioritized, and determining the queue length of each application task when waiting for processing according to the acceptable delay extreme value of each application task, including: Determine the latency of each application task when waiting for processing based on the latency perception parameter of each application task; If the delay of each application task when waiting for processing is less than the maximum acceptable delay of each application task, the queue length of each application task when waiting for processing is determined.

3. The method for determining cloud computing resource demand according to claim 1, characterized in that: Based on the local processing tasks of the edge server, the cloud processing tasks of the edge server, and the queue length of each application task waiting for processing, the cloud computing resource demand required for the application task processing request is generated, including: Determining a local computing cost required to process the local offload task of the edge server according to the computing resource cost of the edge server; Determine the cloud resource purchase cost required to process the edge server cloud offloading task based on the cloud computing resource cost of the cloud center; Based on the Lyapunov optimization function, when the local computing cost and the cloud resource purchase cost are minimized, the optimal solution for the queue length of each application task waiting for processing is obtained, and the cloud computing resource demand required for the application task processing request is generated.

4. The method for determining cloud computing resource demand according to claim 1, characterized in that: According to the processing priority corresponding to each application task in the application task processing request, the application task processing request sent by the terminal device is divided into tasks, and the edge server local processing task and the edge server cloud processing task are determined, including: When the processing priority is greater than or equal to a preset threshold, determining that the application corresponding to the processing priority is a delay-sensitive application; When the processing priority is less than a preset threshold, determining that the application corresponding to the processing priority is a delay-insensitive application; dividing the delay-sensitive application into edge server cloud processing tasks; The delay-insensitive application is divided into edge server local processing tasks.

5. The method for determining cloud computing resource demand according to claim 3, characterized in that: Based on the Lyapunov optimization function, when the local computing cost and the cloud resource purchase cost are minimized, the optimal solution for the queue length of each application task waiting for processing is obtained, and after the cloud computing resource demand required for the application task processing request is generated, the method further includes: The cloud computing resources required for the application task processing request are determined according to the cloud computing resource demand.

6. The method for determining cloud computing resource demand according to claim 5, characterized in that: The cloud computing resources include a first cloud computing resource and a second cloud computing resource. According to the cloud computing resource demand, determining the cloud computing resources required for the application task processing request includes: Determining the first cloud computing resources required for the application task processing request according to the first cloud computing resource demand; The second cloud computing resources required for the application task processing request are determined according to the second cloud computing resource demand.

7. A device for determining cloud computing resource demand, characterized in that: include: An application task processing request receiving module, used to receive an application task processing request sent by a terminal device, wherein the application task processing request includes a plurality of application tasks and a processing priority and an acceptable delay extreme value corresponding to each application task; A task division module is used to divide the application task processing request sent by the terminal device according to the processing priority corresponding to each application task in the application task processing request, and determine the edge server local processing task and the edge server cloud processing task; The task queue module is used to determine the queue length of each application task when waiting for processing according to the acceptable delay limit of each application task; The resource determination module is used to generate the cloud computing resource demand required for the application task processing request based on the edge server local processing tasks, the edge server cloud processing tasks and the queue length of each application task waiting for processing.

8. An electronic device, characterized in that: include: processor; as well as A memory, configured to store executable instructions of the processor; The processor is configured to execute the method for determining cloud computing resource demand as described in any one of claims 1 to 6 by executing the executable instructions.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for determining the cloud computing resource demand amount according to any one of claims 1 to 6 is implemented.

10. A computer program product comprising: A computer program or instruction, characterized in that when the computer program or instruction is executed by a processor, it implements the method for determining the cloud computing resource demand as described in any one of claims 1 to 6.