WO2024055877A1 - Method and apparatus for deploying business process in cloud computing environment - Google Patents

Method and apparatus for deploying business process in cloud computing environment Download PDF

Info

Publication number
WO2024055877A1
WO2024055877A1 PCT/CN2023/117095 CN2023117095W WO2024055877A1 WO 2024055877 A1 WO2024055877 A1 WO 2024055877A1 CN 2023117095 W CN2023117095 W CN 2023117095W WO 2024055877 A1 WO2024055877 A1 WO 2024055877A1
Authority
WO
WIPO (PCT)
Prior art keywords
strategies
strategy
physical constraints
constraints
policy
Prior art date
Application number
PCT/CN2023/117095
Other languages
French (fr)
Chinese (zh)
Inventor
孙梦宇
王旭亮
黄志兰
Original Assignee
中国电信股份有限公司
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 中国电信股份有限公司 filed Critical 中国电信股份有限公司
Publication of WO2024055877A1 publication Critical patent/WO2024055877A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present disclosure belongs to the field of communication technology, and specifically relates to a method and device for business process deployment in a cloud computing environment.
  • cloud computing has become a strategic focus of the development of the information industry and can support cost-effective use of computing resources.
  • a business process consists of multiple tasks, which need to be connected according to certain logical relationships and sequence relationships, and certain timing constraints are attached to each connection edge.
  • the delivery of user business process requirements has time constraints and needs to be executed on time in a logical sequence to avoid business breaches that lead to a decrease in user experience quality.
  • embodiments of the present disclosure provide a method for business process deployment in a cloud computing environment.
  • the method includes: initializing and generating N policies that satisfy physical constraints for deploying K tasks on multiple cloud resources.
  • the K Each task is a task in at least one business process.
  • Physical constraints include storage capacity and computing capacity constraints.
  • K and N are both integers greater than 1; repeat the following A1 to A4 W times: A1: based on fitness Divide N strategies that satisfy physical constraints into the first group and the second group. The fitness of the strategies in the first group is greater than the fitness of the strategies in the second group.
  • the fitness indicates the deployment cost and default cost of the strategy
  • A2 Preprocess the cloud resources of each policy in the first group, obtain the preprocessed policy, and determine whether the preprocessed policy satisfies the physical constraints
  • A3 If there are Q policies that do not meet the physical constraints, re- Generate Q strategies, and determine whether the regenerated strategies satisfy the physical constraints, until Q strategies that satisfy the physical constraints are obtained, Q is a positive integer
  • A4 Determine the second group of strategies, the Q strategies that satisfy the physical constraints strategy, and the fitness of each strategy in the preprocessed strategy that satisfies the physical constraints; the strategy with the smallest median fitness value of the N calculations for the Wth time is determined as the deployment strategy for the K tasks, W is an integer greater than 1.
  • inventions of the present disclosure provide a device for business process deployment.
  • the device includes: a generation module, an execution module and a determination module; the generation module is used to initialize and generate N for deploying K tasks on multiple cloud resources.
  • the K tasks are tasks in at least one business process.
  • the physical constraints include storage capacity and computing capacity constraints.
  • Both K and N are integers greater than 1; the execution module is used to repeat Execute the following A1 to A4 W times: A1: Divide N strategies that satisfy physical constraints into the first group and the second group based on fitness. The fitness of the strategies of the first group is greater than the adaptation of the strategies of the second group.
  • Degree, fitness indicates the degree of deployment cost and default cost of the strategy
  • A2 Preprocess the cloud resources of each strategy in the first group, obtain the preprocessed strategy, and determine whether the preprocessed strategy satisfies the physical constraints.
  • A3 If there are Q strategies that do not satisfy the physical constraints, regenerate Q strategies and determine whether the regenerated strategies satisfy the physical constraints until Q strategies that satisfy the physical constraints are obtained, Q is a positive integer
  • A4 Determine the fitness of each strategy in the second group of strategies, Q strategies that satisfy physical constraints, and the preprocessed strategies that satisfy physical constraints; determine the module, which is also used to calculate the execution module for the Wth time The strategy with the smallest median fitness among the N is determined as the deployment strategy for the K tasks; W is an integer greater than 1.
  • embodiments of the present disclosure provide a server, which includes a processor, a memory and a server stored in There are programs or instructions on the memory that can be run on the processor. When the programs or instructions are executed by the processor, the steps of the method for business process deployment in a cloud computing environment as described in the first aspect are implemented.
  • embodiments of the present disclosure provide a readable storage medium that stores programs or instructions.
  • the programs or instructions are executed by a processor, the cloud computing environment as described in the first aspect is implemented. Steps in the business process deployment method.
  • inventions of the present disclosure provide a chip.
  • the chip includes a processor and a communication interface.
  • the communication interface is coupled to the processor.
  • the processor is used to run programs or instructions to implement the first aspect.
  • embodiments of the present disclosure provide a computer program product containing instructions that, when run on a computer, cause the computer to perform the steps of the method for business process deployment in a cloud computing environment as described in the first aspect.
  • Figure 1 is a schematic diagram of the deployment of business processes on cloud resources in a cloud computing environment provided by an embodiment of the present disclosure
  • Figure 2 is one of the flow diagrams of a method of business process deployment in a cloud computing environment provided by an embodiment of the present disclosure
  • Figure 3 is a second schematic flowchart of a method for business process deployment in a cloud computing environment provided by an embodiment of the present disclosure
  • Figure 4 is a third schematic flowchart of a method for business process deployment in a cloud computing environment provided by an embodiment of the present disclosure
  • Figure 5 is one possible structural diagram of a device for business process deployment provided by an embodiment of the present disclosure
  • Figure 6 is a second possible structural diagram of a device for business process deployment provided by an embodiment of the present disclosure.
  • Figure 7 is a schematic diagram of a device hardware for business process deployment provided by an embodiment of the present disclosure.
  • cloud service resources can be included. Users in the network can put forward functional requirements and select different cloud service resources for rent to meet the needs of network users. Generally, user requirements are not a single atomic task.
  • user requirements are split into a series of task sets with logical relationships and timing constraints, and each task is rented separately
  • Different cloud service resources while satisfying business process timing constraints as much as possible, can find deployment strategies that minimize service costs according to different pricing strategies of cloud service resources.
  • cloud service pricing strategies can be divided into the following two models:
  • first, second, etc. in the description and claims of the present disclosure are used to distinguish similar objects and are not used to describe a specific order or sequence. It is to be understood that the figures so used are interchangeable under appropriate circumstances so that embodiments of the present disclosure can be practiced in sequences other than those illustrated or described herein, and that "first,” “second,” etc. are distinguished Objects are usually of one type, and the number of objects is not limited. For example, the first object can be one or multiple.
  • “and/or” in the description and claims indicates at least one of the connected objects, and the character “/" generally indicates that the related objects are in an "or” relationship.
  • LTE Long Term Evolution, Long Term Evolution
  • LTE-A Long Term Evolution-Advanced, LTE Evolution
  • CDMA Code Division Multiple Access, Code Division Multiple Access
  • TDMA Time Division Multiple Access
  • FDMA Frequency Division Multiple Access, Frequency Division Multiple Access
  • OFDMA Orthogonal Frequency Division Multiple Access
  • SC-FDMA Single-carrier Frequency-Division Multiple Access, single-carrier frequency division multiple access
  • system and “network” in the embodiments of this application are often used interchangeably, and the described technology can be used not only for the above-mentioned systems and radio technologies, but also for other systems and radio technologies.
  • NR system for example purposes, and NR terminology is used in most of the following description, although these techniques can also be applied to applications other than NR system applications, such as 6G (6th Generation, 6th Generation) communication systems. .
  • Figure 1 is a schematic diagram of the deployment of business processes on cloud resources in a cloud computing environment provided by an embodiment of the present disclosure. As shown in Figure 1, it includes i cloud resources, where i is an integer greater than 1. Each cloud resource includes four attributes: cloud provider, computing power, storage space and pricing strategy, as shown in Figure 1 respectively. Take the deployment of two business processes as an example.
  • Business process bp1 includes four tasks, namely: tsk 1-1 , tsk 1-2 , tsk 1-3 and tsk 1-4 .
  • Business process bp 2 includes 3 tasks, namely: tsk 2-1 , tsk 2-2 and tsk 2-3 .
  • the duration interval for executing tsk 1-1 is [3,4]
  • the duration interval for executing tsk 1-2 is [1,3]
  • the duration interval for executing tsk 1-3 is [2,4]
  • the duration interval for executing tsk 1-4 is [3,5]
  • the duration interval for executing tsk 2-1 is [1,2]
  • the duration interval for executing tsk 2-2 is [2,4]
  • the duration interval for executing tsk The duration interval of 2-3 is [4,6].
  • tsk 1-1 and tsk 1-2 are deployed on CR 1
  • tsk 1-3 are deployed on CR 2
  • tsk 1-4 and tsk 2-3 are deployed on CR 2
  • tsk 2-1 and tsk 2-2 are deployed on CR 1.
  • Executed on CR i the logical sequence of execution of each task is the logical sequence indicated by the arrows between each task in Figure 1.
  • FIG. 2 is a schematic flowchart of a method of business process deployment in a cloud computing environment provided by an embodiment of the present disclosure. As shown in Figure 2, the method includes the following S201 to S203:
  • K tasks are tasks in at least one business process.
  • Physical constraints include storage capacity and computing capacity constraints.
  • K and N are both positive integers greater than 1.
  • N strategies may be randomly generated.
  • Table 1 is an exemplary table of a task deployment strategy for a business process provided by the embodiment of the present disclosure. It is assumed that the three cloud resources can be business process 1 and A total of 7 tasks in business process 2 provide services. Among them, 20 deployed strategies are randomly generated. Then it can be determined whether each of the 20 strategies satisfies the physical constraints.
  • policy 1 means that task 1 is deployed on cloud resource 1, task 2 is deployed on cloud resource 3, task 3 is deployed on cloud resource 2, and task 4 is deployed on On cloud resource 3, task 5 is deployed on cloud resource 1, task 6 is deployed on cloud resource 1, and task 7 is deployed on task 3.
  • P is a positive integer less than or equal to N.
  • A1 Divide N strategies that satisfy physical constraints into the first group and the second group based on fitness.
  • the fitness of the first group of strategies is greater than the fitness of the second group of strategies.
  • the fitness indicates the degree of deployment cost and default cost of the strategy.
  • the first group of strategies can rank the N/2 strategies of the bottom N/2 among the N strategies from small to large in terms of fitness, and the second group of strategies can rank the top of the N strategies in terms of fitness from small to large.
  • the first group The strategy may be a strategy among the N strategies whose fitness is greater than or equal to the preset fitness
  • the second group of strategies may be a strategy among the N strategies whose fitness is less than the preset fitness.
  • A2 Preprocess the cloud resources of each policy in the first group, obtain the preprocessed policy, and determine whether the preprocessed policy satisfies the physical constraints.
  • the fitness of the preprocessed strategies will be determined directly, and based on the fitness of the strategies in the second group this time and the preprocessed strategies The fitness regroups the N strategies and performs the next processing.
  • A3 If there are Q strategies that do not satisfy the physical constraints, regenerate Q strategies and determine whether the regenerated strategies satisfy the physical constraints until Q strategies that satisfy the physical constraints are obtained.
  • Q is a positive integer.
  • A4 Determine the fitness of each strategy in the second group of strategies, the above-mentioned Q strategies that satisfy physical constraints, and the preprocessed strategies that satisfy physical constraints.
  • the fitness of the second group of strategies determined in A4 may be the fitness calculated when performing grouping in A1 each time A1 to A4 are executed. That is, the fitness that needs to be calculated in A4 is the fitness of the strategy after processing A2 and A3 for the first group of strategies.
  • W is a positive integer.
  • the smallest fitness value can indicate that the total deployment cost of the strategy is the smallest.
  • Embodiments of the present disclosure provide a method for deploying business processes in a cloud computing environment.
  • N policies that satisfy physical constraints and are deployed on multiple cloud resources can be initially generated for a total of K tasks in at least one business process.
  • the physical Constraints include storage capacity and computing capacity constraints; then, repeat the following steps W times: divide the N strategies into 2 groups according to fitness, and then preprocess the group of strategies with larger fitness values. Determine whether the new policy obtained after preprocessing satisfies the physical constraints. If it does not, continue to regenerate until all policies in the group meet the physical constraints, and then preprocess again based on fitness grouping.
  • the strategy with the smallest fitness value among the N strategies is determined as the deployment strategy for each task in the business process. Based on the above method, a low-cost deployment strategy that meets task requirements can be comprehensively determined based on the timing requirements of each task in the business process, the computing power, storage capacity, deployment cost, and default cost of cloud resources.
  • determining whether each policy satisfies physical constraints in the above S21 can be performed by the following S11:
  • the above-mentioned S11 may include the following S11a:
  • X ij represents the decision-making situation of deploying task tsk i on cloud resource CR j .
  • X ij 1 indicates that task tsk i is deployed on cloud resource CR j .
  • CR j .str represents the storage space of cloud resource CR j .
  • the storage space of each cloud resource involved in the policy can be determined based on the storage space required for each task in the business process, the deployment of each task on cloud resources in a policy, and the storage space of each cloud resource. Whether the capabilities meet the requirements of the task can be determined to determine whether the policy is a policy that meets the storage requirements, so as to facilitate subsequent screening.
  • the above S11 may include the following S11b:
  • CR j .cmp represents the computing capability of cloud resource CR j .
  • the computing power of each cloud resource involved in the strategy can be determined based on the amount of computing required for each task in the business process, the deployment of each task on cloud resources in a strategy, and the computing capabilities of each cloud resource. Whether the capabilities meet the requirements of the task can be determined to determine whether the strategy is a strategy that meets the computing requirements, so as to facilitate subsequent screening.
  • the preprocessing of the cloud resources in A2 may be at least one of the following two methods:
  • Preprocessing method 1 Exchange the cloud resources of at least one task in each two strategies of the first group to obtain the exchanged strategy.
  • the cloud resources of tasks 4 to 6 in the policy "123 123 2" and the policy “321 232 3" are exchanged to obtain two new policies "123 232 2" and "321 123 3".
  • Preprocessing method 2 Randomly replace the cloud resources of at least one task in each strategy of the first group to obtain the replaced strategy.
  • the cloud resources of task 3 in the policy "12 3 2322" are randomly changed, for example, to the new policy "12 1 2322".
  • the above preprocessing method 1 can be performed first, and then the above preprocessing method 2 can be performed, or the above preprocessing method 2 can be performed first, and then the above preprocessing method can be performed Preprocessing method 1, the embodiment of the present disclosure does not specifically limit this.
  • the policy obtained after preprocessing is actually a brand new deployment policy. Therefore, it is necessary to continue to determine whether the new policy satisfies the physical constraints.
  • the method for business process deployment in a cloud computing environment further includes the following A5 to A7 before the above-mentioned A1:
  • A5 Calculate the deployment cost of each strategy.
  • A6 Calculate the default cost of each strategy.
  • A7 Determine the fitness of each strategy based on the deployment cost and default cost.
  • the fitness of a policy deployment cost + default cost.
  • the fitness of the N strategies generated by S201 above that meet the physical constraints can be judged first to evaluate the deployment cost and default cost of each strategy, so as to facilitate the subsequent evaluation of the deployment cost and default cost.
  • the more expensive strategy is preprocessed, and subsequent processing is performed based on the strategy obtained after preprocessing, so as to obtain the strategy with optimal fitness.
  • the above-mentioned A5 can be specifically performed by the following A51:
  • A51 Calculate the deployment cost of each strategy based on the maximum execution time of the task, the unit time price of cloud resource pricing, and the decision-making situation of the target pricing strategy in the cloud resources selected by the task.
  • the deployment cost of each strategy can be determined based on the following formula (3).
  • Max(tsk i.dur ) represents the maximum execution time of task tsk i
  • c ij represents the unit time price of cloud resource CR j selected by task tsk i
  • X ijm represents the pricing of cloud resource CR j selected by task tsk i
  • the deployment cost of each strategy can be calculated based on the maximum execution time of each task requirement, the pricing strategy of each cloud resource, the unit time price of cloud resource pricing, and the decision-making situation of the target pricing strategy for task selection, so that it can be based on
  • the deployment cost is comprehensively selected to select a better deployment strategy.
  • the above-mentioned A6 can be specifically performed by the following A61:
  • A61 Calculate the violation cost of each policy based on the violation cost caused by the task's violation of timing constraints during operation and the decision-making situation of whether the task violates the violation.
  • the violation cost of each policy can be determined based on the following formula (4).
  • pen i represents the violation cost caused by task tsk i violating timing constraints during the deployment and running process
  • Y i Indicates the decision-making status of whether task tsk i violates the rules.
  • the smallest fitness among the fitnesses of the N strategies may be determined based on the following formula (6).
  • Objt Min(COST+PEN) Formula (6)
  • the violation cost of each policy can be determined based on the cost of the task to be deployed violating timing constraints during operation and whether the deployment of each task in the strategy on each cloud resource causes timing violations, so that it can be accurately judged
  • F(tsk i ) represents the end time of task tsk i in the strategy
  • S(tsk i ) represents the start time of task tsk i in the strategy
  • bp.stk i.TC represents the time corresponding to task tsk i in the business process bp. Timing constraints.
  • Figure 4 is a schematic diagram of a business process optimization deployment process in a cloud computing environment based on a genetic algorithm provided by an embodiment of the present disclosure.
  • the above formula (6) can be used as the objective function of the genetic algorithm, that is, to find adaptation For the business deployment strategy with the smallest degree, the cloud resource location deployed by each task is recorded as a gene, the deployment locations of all tasks in the entire business process are regarded as a chromosome, the population size is set to 20, and the objective function of formula (6) is regarded as the Adaptation function to optimize the deployment of business processes in cloud computing environment.
  • S404 Perform a selection operation to directly inherit the optimized individuals in the population to the next generation population.
  • the fitness function value corresponding to chromosome 2312321 is smaller, indicating that its deployment strategy is better and can be directly inherited to the next generation population;
  • the crossover operation sorts the individuals in the population except the above-mentioned optimized individuals according to their fitness, exchanges some genes of adjacent individuals, and evolves the individuals in the population; performs mutation operation on the evolved deployment strategy, and performs mutation operation on the deployment strategy in the population. Some gene values in the individual are randomly changed, and the individuals in the population are further evolved.
  • the 4-6 genes in chromosomes 1231232 and 3212323 are exchanged to obtain 1232322 and 3211233. And for each deployment strategy after the exchange, according to formulas (1) and (2), it is judged whether the exchanged cloud resources meet the service physical constraints, including storage constraints and computing constraints, and the chromosomes that cannot be satisfied are eliminated and re-initialized. .
  • the third gene in chromosome 1232322 mutates to 1212322.
  • the chromosome with the smallest fitness function value is finally selected as 1122323, it means: tsk 1 of bp 1 is deployed in CR 1 , tsk 2 of bp 1 is deployed in CR 1 , tsk 3 of bp 1 is deployed in CR 2 , and tsk 1 of bp is deployed in CR 1. 4 is deployed in CR 2 , tsk 1 of bp 2 is deployed in CR 3 , tsk 2 of bp 2 is deployed in CR 2 , and tsk 3 of bp 2 is deployed in CR 3 .
  • the execution subject may also be a device for business process deployment, or a device in the business process deployment device for executing business processes in a cloud computing environment.
  • the control module of the deployed method in the embodiment of the present disclosure, a method of using a business process deployment device to perform a business process deployment in a cloud computing environment is taken as an example to illustrate the device for business process deployment provided by the embodiment of the present disclosure.
  • FIG. 5 is a schematic structural diagram of a business process deployment device provided by an embodiment of the present disclosure.
  • the business process deployment device 500 includes: a generation module 501, an execution module 502 and a determination module 503; the generation module 501 , used to generate N strategies that satisfy physical constraints for deploying K tasks on multiple cloud resources.
  • the K tasks are tasks in at least one business process.
  • the physical constraints include constraints on storage capabilities and computing capabilities.
  • K and N are both integers greater than 1; the execution module 502 is used to repeatedly execute the following A1 to A4 W times: A1: Divide N strategies that satisfy physical constraints into the first group and the second group based on fitness , the fitness of the strategies of the first group is greater than the fitness of the strategies of the second group, and the fitness indicates the deployment cost and default cost of the strategy; A2: Preprocessing of cloud resources for each strategy of the first group, the pre-processed After processing the strategy, determine whether the preprocessed strategy satisfies the physical constraints; A3: If there are Q strategies that do not satisfy the physical constraints, regenerate Q strategies and determine whether the regenerated strategies satisfy the physical constraints until Obtain Q strategies that satisfy physical constraints, and Q is a positive integer; A4: Determine the second group of strategies, Q strategies that satisfy physical constraints, and each strategy in the preprocessed strategy that satisfies physical constraints. The fitness; the determination module 503 is used to determine the strategy with the smallest median fitness among the N calculations for the Wth time as the deployment
  • the generation module is specifically used to: generate N strategies for deploying K tasks on multiple cloud resources, and determine whether each strategy satisfies the physical constraints; if there are P strategies that do not satisfy the physical constraints, regenerate P strategies, and determine whether the regenerated strategies satisfy the physical constraints until N strategies that satisfy the physical constraints are obtained, where P is a positive integer less than or equal to N.
  • the physical constraints include constraints on storage capacity and computing capacity; the determination module is specifically configured to: determine whether the storage capacity and computing capacity of the cloud resources in each policy satisfy the corresponding constraints.
  • the execution module is specifically used to: determine whether the storage capacity of the cloud resources in each policy meets the corresponding constraints based on the storage space required by the task, the storage space of the cloud resource, and the decision-making situation of the task deployment in the cloud resource. condition.
  • the execution module is specifically used to: based on the amount of calculation required by the task, the computing power of the cloud resource, and the task
  • the decision-making situation of deploying cloud resources determines whether the computing capabilities of cloud resources in each strategy meet the corresponding constraints.
  • the execution module is specifically configured to: perform at least one of the following: exchanging cloud resources for at least one task in every two strategies of the first group to obtain an exchanged strategy; The cloud resources of at least one task in the task are randomly replaced, and the replacement strategy is obtained.
  • the execution module is also used to calculate the deployment cost of each strategy before dividing the N strategies that meet the physical constraints into the first group and the second group based on fitness; calculate the default cost of each strategy; according to The deployment cost and default cost determine the fitness of each policy.
  • the execution module is specifically used to: calculate the deployment cost of each strategy based on the maximum execution time of the task, the unit time price of cloud resource pricing, and the decision-making situation of the target pricing strategy in the cloud resources selected by the task.
  • the execution module is specifically used to calculate the violation cost of each policy based on the violation cost caused by the task's violation of timing constraints during operation and the decision-making situation of whether the task violates the violation.
  • the execution module is also used to determine whether the task violates timing constraints based on the end time of the task, the start time of the task, and the target timing constraints corresponding to the task.
  • Embodiments of the present disclosure provide a device for business process deployment.
  • N policies that satisfy physical constraints and are deployed on multiple cloud resources can be generated for a total of K tasks in at least one business process.
  • the physical constraints include storage capabilities. and computing power constraints; then, repeat the following steps W times: divide the N strategies into 2 groups according to their fitness, and then preprocess the group of strategies with larger fitness values.
  • the strategy with the smallest fitness value among the N strategies is determined as the deployment strategy for each task in the business process. Based on the above method, a low-cost deployment strategy that meets task requirements can be comprehensively determined based on the timing requirements of each task in the business process, the computing power, storage capacity, deployment cost, and default cost of cloud resources.
  • the business process deployment device 500 provided by the embodiment of the present disclosure can implement each process implemented by the method embodiments in Figures 1 to 4. To avoid duplication, they will not be described again here.
  • this embodiment of the present disclosure also provides a business process deployment device 600, including a processor 601, a memory 602, and programs or instructions stored on the memory 602 and executable on the processor 601. , when this program or instruction is executed by the processor 601, it implements each process of the above-mentioned business process deployment method embodiment in a cloud computing environment, and can achieve the same technical effect. To avoid duplication, it will not be described again here.
  • network entity or electronic device 700 shown in FIG. 7 is only an example, and should not bring any limitations to the functions and scope of use of the embodiments of the present disclosure.
  • the electronic device 700 includes a central processing unit (Central Processing Unit, CPU) 701, which can be loaded into the RAM (Read Only Memory) 702 according to the program stored in the ROM (Read Only Memory) 702 or from the storage part 708.
  • Random Access Memory (Random Access Memory) 703 program to perform various appropriate actions and processing.
  • RAM 703 various programs and data required for system operation are also stored.
  • CPU 701, ROM 702 and RAM 703 are connected to each other through bus 704.
  • I/O (Input/Output, input/output) interface 705 is also connected to bus 704.
  • the following components are connected to the I/O interface 705: an input section 706 including a keyboard, a mouse, etc.; an output section 707 including a CRT (Cathode Ray Tube, cathode ray tube), LCD (Liquid Crystal Display), etc., and speakers, etc. ; a storage part 708 including a hard disk, etc.; and a communication part 709 including a network interface card such as a LAN (Local Area Network, wireless network) card, a modem, etc.
  • the communication section 709 performs communication processing via a network such as the Internet.
  • Driver 710 is also connected to I/O interface 705 as needed.
  • Removable media 711 such as magnetic disks, optical disks, magneto-optical disks, semiconductor memories, etc., are installed on the drive 710 as needed, so that a computer program read therefrom is installed into the storage portion 708 as needed.
  • embodiments of the present disclosure include a computer program product including a computer program product hosted on a computer-readable medium.
  • the computer program may be downloaded and installed from the network via communication portion 709 and/or installed from removable media 711 .
  • the central processing unit CPU 701
  • various functions defined in the system of the present application are executed.
  • Embodiments of the present disclosure also provide a readable storage medium on which a program or instructions are stored.
  • a program or instructions are stored.
  • the program or instructions are executed by a processor, each of the above method embodiments of business process deployment in a cloud computing environment is implemented.
  • the process can achieve the same technical effect. To avoid repetition, it will not be described again here.
  • the processor is the processor in the electronic device described in the above embodiment.
  • the readable storage media includes computer-readable storage media, such as ROM, RAM, magnetic disks or optical disks.
  • An embodiment of the present disclosure further provides a chip.
  • the chip includes a processor and a communication interface.
  • the communication interface is coupled to the processor.
  • the processor is used to run programs or instructions to implement the business process in the cloud computing environment.
  • Each process of the deployment method embodiment can achieve the same technical effect. To avoid duplication, it will not be described again here.
  • the chip mentioned in the embodiments of the present disclosure may also be called a system-on-chip, a system-on-a-chip, a system-on-a-chip or a system-on-chip, etc.
  • Embodiments of the present disclosure provide a computer program product containing instructions that, when run on a computer, cause the computer to execute the steps of the method for deploying business processes in a cloud computing environment, and can achieve the same technical effect. To avoid repetition, we will not go into details here.
  • the methods of the above embodiments can be implemented by means of software plus the necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is better. implementation.
  • the technical solution of the present disclosure can be embodied in the form of a software product in essence or that contributes to the existing technology.
  • the computer software product is stored in a storage medium (such as ROM/RAM, disk, CD), including several instructions to cause a terminal (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in various embodiments of the present disclosure.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The present disclosure provides a method and apparatus for deploying a business process in a cloud computing environment, and belongs to the technical field of communication. The method comprises: initializing and generating N policies satisfying physical constraint conditions for deploying K tasks on a plurality of cloud resources; repeatedly executing W times the following A1 to A4: A1: based on suitability, dividing the N policies satisfying the physical constraint conditions into a first group and a second group; A2: preprocessing the cloud resources in each policy of the first group; A3: if there are Q policies which do not satisfy the physical constraint conditions, regenerating Q policies until Q policies satisfying the physical constraint conditions are obtained; A4: determining the suitability of each policy of the policies satisfying the physical constraint conditions; and determining the policy having the lowest of the N suitability values following W computations to be the deployment policy for the K tasks. The technical solution provided by the embodiments of the present disclosure allows for selecting suitable cloud resources and service policies for business processes.

Description

云计算环境中业务流程部署的方法及装置Method and device for business process deployment in cloud computing environment
相关申请的交叉引用Cross-references to related applications
本申请要求于2022年09月15日提交的申请号为202211124516.8、名称为“云计算环境中业务流程部署的方法及装置”的中国专利申请的优先权,该中国专利申请的全部内容通过引用全部并入本文。This application claims priority to the Chinese patent application with application number 202211124516.8 and titled "Method and Device for Business Process Deployment in a Cloud Computing Environment" submitted on September 15, 2022. The entire content of this Chinese patent application is fully incorporated by reference. Incorporated herein.
技术领域Technical field
本公开属于通信技术领域,具体涉及一种云计算环境中业务流程部署的方法及装置。The present disclosure belongs to the field of communication technology, and specifically relates to a method and device for business process deployment in a cloud computing environment.
背景技术Background technique
随着虚拟化技术和分布式计算技术的发展,云计算已经成为信息产业发展的战略重点,可以支持具有成本效益的计算资源使用。With the development of virtualization technology and distributed computing technology, cloud computing has become a strategic focus of the development of the information industry and can support cost-effective use of computing resources.
通常,业务流程由多个任务组成,需要按照一定的逻辑关系和先后关系进行连接,并在每个连接边上附有一定的时序约束。用户业务流程需求的交付具有时间约束,需要按照逻辑顺序按时执行,以尽可能的避免业务违约导致用户体验质量的下降。Usually, a business process consists of multiple tasks, which need to be connected according to certain logical relationships and sequence relationships, and certain timing constraints are attached to each connection edge. The delivery of user business process requirements has time constraints and needs to be executed on time in a logical sequence to avoid business breaches that lead to a decrease in user experience quality.
然而,如何能够按照业务流程顺序为每个任务选择合适的云资源和最佳的服务策略,同时满足业务流程过程中的时序约束,是目前亟需解决的技术问题。However, how to select appropriate cloud resources and the best service strategy for each task according to the order of the business process, while meeting the timing constraints in the business process, is an urgent technical problem that needs to be solved.
发明内容Contents of the invention
第一方面,本公开实施例提供了一种云计算环境中业务流程部署的方法,该方法包括:初始化生成在多个云资源上部署K个任务的N个满足物理约束条件的策略,该K个任务为至少一个业务流程中的任务,物理约束条件包括存储能力和计算能力的约束条件,K和N均为大于1的整数;重复执行W次下述的A1至A4:A1:基于适应度将N个满足物理约束条件的策略分为第一组和第二组,第一组的策略的适应度大于第二组的策略的适应度,适应度指示策略的部署代价和违约代价的程度;A2:对第一组的每个策略的云资源预处理,得到预处理后的策略,确定预处理后的策略是否满足物理约束条件;A3:若存在Q个策略不满足物理约束条件,则重新生成Q个策略,并确定重新生成的策略是否满足物理约束条件,直至得到Q个满足物理约束条件的策略,Q为正整数;A4:确定第二组的策略、该Q个满足物理约束条件的策略,以及预处理后的策略中满足物理约束条件的策略中每个策略的适应度;将第W次计算的N个适应度中值最小的策略,确定为该K个任务的部署策略,W为大于1的整数。In a first aspect, embodiments of the present disclosure provide a method for business process deployment in a cloud computing environment. The method includes: initializing and generating N policies that satisfy physical constraints for deploying K tasks on multiple cloud resources. The K Each task is a task in at least one business process. Physical constraints include storage capacity and computing capacity constraints. K and N are both integers greater than 1; repeat the following A1 to A4 W times: A1: based on fitness Divide N strategies that satisfy physical constraints into the first group and the second group. The fitness of the strategies in the first group is greater than the fitness of the strategies in the second group. The fitness indicates the deployment cost and default cost of the strategy; A2: Preprocess the cloud resources of each policy in the first group, obtain the preprocessed policy, and determine whether the preprocessed policy satisfies the physical constraints; A3: If there are Q policies that do not meet the physical constraints, re- Generate Q strategies, and determine whether the regenerated strategies satisfy the physical constraints, until Q strategies that satisfy the physical constraints are obtained, Q is a positive integer; A4: Determine the second group of strategies, the Q strategies that satisfy the physical constraints strategy, and the fitness of each strategy in the preprocessed strategy that satisfies the physical constraints; the strategy with the smallest median fitness value of the N calculations for the Wth time is determined as the deployment strategy for the K tasks, W is an integer greater than 1.
第二方面,本公开实施例提供了一种业务流程部署的装置,该装置包括:生成模块、执行模块和确定模块;生成模块,用于初始化生成在多个云资源上部署K个任务的N个满足物理约束条件的策略,该K个任务为至少一个业务流程中的任务,物理约束条件包括存储能力和计算能力的约束条件,K和N均为大于1的整数;执行模块,用于重复执行W次下述的A1至A4:A1:基于适应度将N个满足物理约束条件的策略分为第一组和第二组,第一组的策略的适应度大于第二组的策略的适应度,适应度指示策略的部署代价和违约代价的程度;A2:对第一组的每个策略的云资源进行预处理,得到预处理后的策略,确定预处理后的策略是否满足物理约束条件;A3:若存在Q个策略不满足物理约束条件,则重新生成Q个策略,并确定重新生成的策略是否满足物理约束条件,直至得到Q个满足物理约束条件的策略,Q为正整数;A4:确定第二组策略、Q个满足物理约束条件的策略,以及预处理后的策略中满足物理约束条件的策略中每个策略的适应度;确定模块,还用于将执行模块第W次计算的N个适应度中值最小的策略,确定为该K个任务的部署策略;W为大于1的整数。In the second aspect, embodiments of the present disclosure provide a device for business process deployment. The device includes: a generation module, an execution module and a determination module; the generation module is used to initialize and generate N for deploying K tasks on multiple cloud resources. A strategy that satisfies physical constraints. The K tasks are tasks in at least one business process. The physical constraints include storage capacity and computing capacity constraints. Both K and N are integers greater than 1; the execution module is used to repeat Execute the following A1 to A4 W times: A1: Divide N strategies that satisfy physical constraints into the first group and the second group based on fitness. The fitness of the strategies of the first group is greater than the adaptation of the strategies of the second group. Degree, fitness indicates the degree of deployment cost and default cost of the strategy; A2: Preprocess the cloud resources of each strategy in the first group, obtain the preprocessed strategy, and determine whether the preprocessed strategy satisfies the physical constraints. ; A3: If there are Q strategies that do not satisfy the physical constraints, regenerate Q strategies and determine whether the regenerated strategies satisfy the physical constraints until Q strategies that satisfy the physical constraints are obtained, Q is a positive integer; A4 : Determine the fitness of each strategy in the second group of strategies, Q strategies that satisfy physical constraints, and the preprocessed strategies that satisfy physical constraints; determine the module, which is also used to calculate the execution module for the Wth time The strategy with the smallest median fitness among the N is determined as the deployment strategy for the K tasks; W is an integer greater than 1.
第三方面,本公开实施例提供了一种服务器,该服务器包括处理器、存储器及存储在 所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的云计算环境中业务流程部署的方法的步骤。In a third aspect, embodiments of the present disclosure provide a server, which includes a processor, a memory and a server stored in There are programs or instructions on the memory that can be run on the processor. When the programs or instructions are executed by the processor, the steps of the method for business process deployment in a cloud computing environment as described in the first aspect are implemented.
第四方面,本公开实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的云计算环境中业务流程部署的方法的步骤。In a fourth aspect, embodiments of the present disclosure provide a readable storage medium that stores programs or instructions. When the programs or instructions are executed by a processor, the cloud computing environment as described in the first aspect is implemented. Steps in the business process deployment method.
第五方面,本公开实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的云计算环境中业务流程部署的方法。In a fifth aspect, embodiments of the present disclosure provide a chip. The chip includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the first aspect. The method of business process deployment in a cloud computing environment.
第六方面,本公开实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如第一方面所述的云计算环境中业务流程部署的方法的步骤。In a sixth aspect, embodiments of the present disclosure provide a computer program product containing instructions that, when run on a computer, cause the computer to perform the steps of the method for business process deployment in a cloud computing environment as described in the first aspect.
附图说明Description of drawings
图1为本公开实施例提供的一种云计算环境中业务流程在云资源上的部署示意图;Figure 1 is a schematic diagram of the deployment of business processes on cloud resources in a cloud computing environment provided by an embodiment of the present disclosure;
图2为本公开实施例提供的云计算环境中业务流程部署的方法的流程示意图之一;Figure 2 is one of the flow diagrams of a method of business process deployment in a cloud computing environment provided by an embodiment of the present disclosure;
图3为本公开实施例提供的云计算环境中业务流程部署的方法的流程示意图之二;Figure 3 is a second schematic flowchart of a method for business process deployment in a cloud computing environment provided by an embodiment of the present disclosure;
图4为本公开实施例提供的云计算环境中业务流程部署的方法的流程示意图之三;Figure 4 is a third schematic flowchart of a method for business process deployment in a cloud computing environment provided by an embodiment of the present disclosure;
图5为本公开实施例提供的业务流程部署的装置可能的结构示意图之一;Figure 5 is one possible structural diagram of a device for business process deployment provided by an embodiment of the present disclosure;
图6为本公开实施例提供的业务流程部署的装置可能的结构示意图之二;Figure 6 is a second possible structural diagram of a device for business process deployment provided by an embodiment of the present disclosure;
图7为本公开实施例提供的一种业务流程部署的装置硬件示意图。Figure 7 is a schematic diagram of a device hardware for business process deployment provided by an embodiment of the present disclosure.
具体实施方式Detailed ways
为了便于理解,首先对本公开实施例中涉及的相关术语进行解释:In order to facilitate understanding, the relevant terms involved in the embodiments of the present disclosure are first explained:
在云计算环境下,可以包括不同的云服务资源(记为云资源),网络中的用户可以提出功能性要求,选择不同的云服务资源进行租用,以完成网络用户的需求。通常,用户需求不是单一的原子型任务,本公开实施例提供的云计算环境中业务流程部署的方法中,将用户需求拆分成一系列具有逻辑关系和时序约束的任务集合,每个任务分别租用不同的云服务资源,在尽可能满足业务流程时序约束的情况下,根据云服务资源不同的定价策略,寻找最小化服务成本的部署策略。In a cloud computing environment, different cloud service resources (recorded as cloud resources) can be included. Users in the network can put forward functional requirements and select different cloud service resources for rent to meet the needs of network users. Generally, user requirements are not a single atomic task. In the method of business process deployment in a cloud computing environment provided by embodiments of the present disclosure, user requirements are split into a series of task sets with logical relationships and timing constraints, and each task is rented separately Different cloud service resources, while satisfying business process timing constraints as much as possible, can find deployment strategies that minimize service costs according to different pricing strategies of cloud service resources.
1、业务流程1. Business process
以一个二元组表示业务流程bp,其中,bp={Tsk,Edg},Tsk表示业务流程中包含的任务集合,Tsk={tsk1,tsk2,…},Edg表示业务流程中不同任务间的顺序边, The business process bp is expressed as a tuple, where bp={Tsk,Edg}, Tsk represents the set of tasks included in the business process, Tsk={tsk 1 ,tsk 2 ,…}, and Edg represents the relationship between different tasks in the business process. The sequential edges of
2、任务2. Task
以一个六元组表示任务tsk,其中,tsk={nm,dsc,χ,β,dur,pen},nm表示tsk的名称,dsc表示任务的文本描述,χ表示任务所需要的计算量,β表示任务所需的存储空间,dur表示执行任务的持续时间区间,pen表示任务由于超出时序约束而造成的违规代价。Represent the task tsk as a six-tuple, where tsk={nm,dsc,χ,β,dur,pen}, nm represents the name of tsk, dsc represents the text description of the task, χ represents the amount of calculation required by the task, β Represents the storage space required by the task, dur represents the duration interval of executing the task, and pen represents the violation cost caused by the task exceeding the timing constraints.
3、云资源3. Cloud resources
以一个四元组表示云资源CR,其中,CR={pvd,cmp,str,pcs},pvd表示的云服务提供商,cmp表示云资源对应服务器的计算能力,str表示云资源的内存空间,pcs表示云资源的定价策略。A four-tuple represents the cloud resource CR, where CR = {pvd, cmp, str, pcs}, pvd represents the cloud service provider, cmp represents the computing power of the server corresponding to the cloud resource, and str represents the memory space of the cloud resource. pcs represents the pricing strategy of cloud resources.
通常,云服务定价策略可以分为下述两种模式: Generally, cloud service pricing strategies can be divided into the following two models:
(1)预付费策略m1 (1) Prepaid strategy m 1
可以选择不同配置的云服务器,按照预先支付一定费用的方式,在一定时间内可任意使用云资源。You can choose cloud servers with different configurations, and you can use cloud resources at will within a certain period of time by paying a certain fee in advance.
(2)按分钟计费策略m2 (2) Minute-by-minute billing strategy m 2
即买即用的方式,按照单价和使用时间对云资源进行付费。Pay for cloud resources based on unit price and usage time in a pay-as-you-go manner.
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, rather than all of the embodiments. Based on the embodiments in this disclosure, all other embodiments obtained by those of ordinary skill in the art without making creative efforts fall within the scope of protection of this disclosure.
本公开的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。The terms "first", "second", etc. in the description and claims of the present disclosure are used to distinguish similar objects and are not used to describe a specific order or sequence. It is to be understood that the figures so used are interchangeable under appropriate circumstances so that embodiments of the present disclosure can be practiced in sequences other than those illustrated or described herein, and that "first," "second," etc. are distinguished Objects are usually of one type, and the number of objects is not limited. For example, the first object can be one or multiple. In addition, "and/or" in the description and claims indicates at least one of the connected objects, and the character "/" generally indicates that the related objects are in an "or" relationship.
值得指出的是,本公开实施例所描述的技术不限于LTE(Long Term Evolution,长期演进型)/LTE-A(LTE-Advanced,LTE的演进)系统,还可用于其他无线通信系统,诸如CDMA(Code Division Multiple Access,码分多址)、TDMA(Time Division Multiple Access,时分多址)、FDMA(Frequency Division Multiple Access,频分多址)、OFDMA(Orthogonal Frequency Division Multiple Access,正交频分多址)、SC-FDMA(Single-carrier Frequency-Division Multiple Access,单载波频分多址)和其他系统。本申请实施例中的术语“系统”和“网络”常被可互换地使用,所描述的技术既可用于以上提及的系统和无线电技术,也可用于其他系统和无线电技术。然而,以下描述出于示例目的描述了NR系统,并且在以下大部分描述中使用NR术语,尽管这些技术也可应用于NR系统应用以外的应用,如6G(6th Generation,第6代)通信系统。It is worth pointing out that the technology described in the embodiments of the present disclosure is not limited to LTE (Long Term Evolution, Long Term Evolution)/LTE-A (LTE-Advanced, LTE Evolution) systems, and can also be used in other wireless communication systems, such as CDMA (Code Division Multiple Access, Code Division Multiple Access), TDMA (Time Division Multiple Access, Time Division Multiple Access), FDMA (Frequency Division Multiple Access, Frequency Division Multiple Access), OFDMA (Orthogonal Frequency Division Multiple Access, Orthogonal Frequency Division Multiple Access) address), SC-FDMA (Single-carrier Frequency-Division Multiple Access, single-carrier frequency division multiple access) and other systems. The terms "system" and "network" in the embodiments of this application are often used interchangeably, and the described technology can be used not only for the above-mentioned systems and radio technologies, but also for other systems and radio technologies. However, the following description describes an NR system for example purposes, and NR terminology is used in most of the following description, although these techniques can also be applied to applications other than NR system applications, such as 6G (6th Generation, 6th Generation) communication systems. .
下面结合附图,通过具体的实施例及其应用场景对本公开实施例提供的云计算环境中业务流程部署的方法进行详细地说明。The method of business process deployment in a cloud computing environment provided by the embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings through specific embodiments and application scenarios.
图1为本公开实施例提供的一种云计算环境中业务流程在云资源上的部署示意图。如图1中所示,包括i个云资源,i为大于1的整数,每个云资源包括:云提供商、计算能力、存储空间和定价策略四个属性,分别如图1中所示。以2个业务流程的部署为例,其中,业务流程bp1包括4个任务,分别为:tsk1-1、tsk1-2、tsk1-3和tsk1-4。业务流程bp2包括3个任务,分别为:tsk2-1、tsk2-2和tsk2-3Figure 1 is a schematic diagram of the deployment of business processes on cloud resources in a cloud computing environment provided by an embodiment of the present disclosure. As shown in Figure 1, it includes i cloud resources, where i is an integer greater than 1. Each cloud resource includes four attributes: cloud provider, computing power, storage space and pricing strategy, as shown in Figure 1 respectively. Take the deployment of two business processes as an example. Business process bp1 includes four tasks, namely: tsk 1-1 , tsk 1-2 , tsk 1-3 and tsk 1-4 . Business process bp 2 includes 3 tasks, namely: tsk 2-1 , tsk 2-2 and tsk 2-3 .
其中,执行tsk1-1的持续时间区间为[3,4],执行tsk1-2的持续时间区间为[1,3],执行tsk1-3的持续时间区间为[2,4],执行tsk1-4的持续时间区间为[3,5],执行tsk2-1的持续时间区间为[1,2],执行tsk2-2的持续时间区间为[2,4],执行tsk2-3的持续时间区间为[4,6]。Among them, the duration interval for executing tsk 1-1 is [3,4], the duration interval for executing tsk 1-2 is [1,3], and the duration interval for executing tsk 1-3 is [2,4], The duration interval for executing tsk 1-4 is [3,5], the duration interval for executing tsk 2-1 is [1,2], the duration interval for executing tsk 2-2 is [2,4], and the duration interval for executing tsk The duration interval of 2-3 is [4,6].
其中,tsk1-1和tsk1-2部署在CR1上执行,tsk1-3、tsk1-4和tsk2-3部署在CR2上执行,tsk2-1和tsk2-2部署在CRi上执行,各个任务执行的逻辑顺序为图1中各个任务间箭头指示的逻辑顺序。Among them, tsk 1-1 and tsk 1-2 are deployed on CR 1 , tsk 1-3 , tsk 1-4 and tsk 2-3 are deployed on CR 2 , and tsk 2-1 and tsk 2-2 are deployed on CR 1. Executed on CR i , the logical sequence of execution of each task is the logical sequence indicated by the arrows between each task in Figure 1.
图2为本公开实施例提供的一种云计算环境中业务流程部署的方法的流程示意图,如图2中所示,该方法包括下述的S201至S203:Figure 2 is a schematic flowchart of a method of business process deployment in a cloud computing environment provided by an embodiment of the present disclosure. As shown in Figure 2, the method includes the following S201 to S203:
S201、初始化生成在多个云资源上部署K个任务的满足物理约束条件的N个策略。S201. Initialize and generate N strategies that satisfy physical constraints for deploying K tasks on multiple cloud resources.
其中,K个任务为至少一个业务流程中的任务,物理约束条件包括存储能力和计算能力的约束条件,K和N均为大于1的正整数。Among them, K tasks are tasks in at least one business process. Physical constraints include storage capacity and computing capacity constraints. K and N are both positive integers greater than 1.
可选地,结合图2,如图3中所示,上述的S201具体可以通过下述的S21和S22执行: Optionally, in conjunction with Figure 2, as shown in Figure 3, the above-mentioned S201 can be specifically executed through the following S21 and S22:
S21、生成在多个云资源上部署K个任务的N个策略,确定每个策略是否满足物理约束条件。S21. Generate N strategies for deploying K tasks on multiple cloud resources, and determine whether each strategy satisfies physical constraints.
示例性地,在初始化时,可以随机生成N个策略。For example, during initialization, N strategies may be randomly generated.
需要说明的是,若一个策略中的存储能力和计算能力中任意一个不满足对应的约束条件,则该策略不满足物理约束条件,若一个策略中的存储能力和计算能力均满足对应的约束条件,则该策略满足物理约束条件。It should be noted that if any of the storage capacity and computing power in a policy does not meet the corresponding constraints, the policy does not meet the physical constraints. If the storage capacity and computing power in a policy both meet the corresponding constraints , then the strategy satisfies the physical constraints.
示例性地,为了便于理解本公开实施例提供的技术方案,表1为本公开实施例提供的一种业务流程的任务部署的策略的示例性表格,假设3个云资源可以为业务流程1和业务流程2的共7个任务提供服务,其中,随机生成了20个部署的策略,则可以确定该20个策略中的每个策略是否满足物理约束条件。For example, in order to facilitate understanding of the technical solution provided by the embodiment of the present disclosure, Table 1 is an exemplary table of a task deployment strategy for a business process provided by the embodiment of the present disclosure. It is assumed that the three cloud resources can be business process 1 and A total of 7 tasks in business process 2 provide services. Among them, 20 deployed strategies are randomly generated. Then it can be determined whether each of the 20 strategies satisfies the physical constraints.
需要说明的是,以策略1为“1323113”为了进行说明,策略1表示任务1部署在云资源1上、任务2部署在云资源3上、任务3部署在云资源2上、任务4部署在云资源3上、任务5部署在云资源1上、任务6部署在云资源1上、任务7部署在任务3上。It should be noted that, for the sake of explanation, taking policy 1 as "1323113", policy 1 means that task 1 is deployed on cloud resource 1, task 2 is deployed on cloud resource 3, task 3 is deployed on cloud resource 2, and task 4 is deployed on On cloud resource 3, task 5 is deployed on cloud resource 1, task 6 is deployed on cloud resource 1, and task 7 is deployed on task 3.
表1
Table 1
S22、若存在P个策略不满足物理约束条件,则重新生成P个策略,并确定重新生成的策略是否满足物理约束条件,直至得到N个满足物理约束条件的策略。S22. If there are P strategies that do not satisfy the physical constraints, regenerate P strategies and determine whether the regenerated strategies satisfy the physical constraints until N strategies that satisfy the physical constraints are obtained.
其中,P为小于或等于N正整数。Among them, P is a positive integer less than or equal to N.
具体地,若N个策略中存在不满足物理约束条件的P个策略,则删除该P个策略,重新生成P个策略,并确定重新生成的P个策略是否满足物理约束条件,若均满足,则执行下述的S202,若重新生成的P个策略中存在不满足物理约束条件的策略,则继续删除并生成新的策略,直至得到N个满足物理约束条件的策略,再执行下述的S202。Specifically, if there are P strategies among the N strategies that do not satisfy the physical constraints, delete the P strategies, regenerate the P strategies, and determine whether the regenerated P strategies satisfy the physical constraints. If they all meet, Then execute the following S202. If there are policies that do not satisfy the physical constraints among the regenerated P policies, continue to delete and generate new policies until N policies that satisfy the physical constraints are obtained, and then execute the following S202. .
示例性地,假设上述20个策略中存在5个策略不满足物理约束条件,则可以删除该5个策略,并重新生成5个策略,然后判断该5个策略是否满足物理约束条件,若该5个策略都满足物理约束条件,则继续执行下述S202,若重新生成的5个策略中存在至少一个策略不满足物理约束条件,则继续将不满足的策略删除,并重新生成并继续判断是否满足物理约束条件。For example, assuming that 5 of the above 20 strategies do not meet the physical constraints, you can delete the 5 strategies and regenerate 5 strategies, and then determine whether the 5 strategies meet the physical constraints. If the 5 strategies If all the policies satisfy the physical constraints, continue to perform the following S202. If at least one of the five regenerated policies does not satisfy the physical constraints, continue to delete the unsatisfied policies, regenerate them, and continue to determine whether they are satisfied. Physical constraints.
S202、重复执行W次下述的A1至A4:S202. Repeat the following A1 to A4 W times:
A1:基于适应度将N个满足物理约束条件的策略分为第一组和第二组。A1: Divide N strategies that satisfy physical constraints into the first group and the second group based on fitness.
其中,第一组的策略的适应度大于第二组的策略的适应度。Among them, the fitness of the first group of strategies is greater than the fitness of the second group of strategies.
其中,本公开实施例中,适应度指示策略的部署代价和违约代价的程度。其中,适应度越小,指示策略部署的代价越低,策略越优;适应度越大,指示策略部署的代价越高,策略越差。Among them, in the embodiment of the present disclosure, the fitness indicates the degree of deployment cost and default cost of the strategy. Among them, the smaller the fitness is, the lower the cost of indicating strategy deployment is, and the better the strategy is; the larger the fitness is, the higher the cost of indicating strategy deployment is, and the worse the strategy is.
示例性地,第一组策略可以为N个策略中的适应度从小到大排名后N/2的N/2个策略,第二组策略可以为N个策略中的适应度从小到大排名前N/2的N/2个策略。或者,第一组 策略可以为N个策略中的适应度大于或等于预设适应度的策略,第二组策略可以为N个策略中的适应度小于预设适应度的策略。For example, the first group of strategies can rank the N/2 strategies of the bottom N/2 among the N strategies from small to large in terms of fitness, and the second group of strategies can rank the top of the N strategies in terms of fitness from small to large. N/2 strategies for N/2. Or, the first group The strategy may be a strategy among the N strategies whose fitness is greater than or equal to the preset fitness, and the second group of strategies may be a strategy among the N strategies whose fitness is less than the preset fitness.
继续结合上述示例,在经过S202的处理之后,可以得到20个满足物理约束条件的策略,然后可以计算每个策略的适应度,从而得到20个策略的适应度。以上述第一种分组方式为例进行说明,则可以得到10个适应度比较大的第一组策略,10个适应度比较小的第二组策略。Continuing to combine the above example, after the processing of S202, 20 strategies that satisfy the physical constraints can be obtained, and then the fitness of each strategy can be calculated, thereby obtaining the fitness of the 20 strategies. Taking the above-mentioned first grouping method as an example, we can obtain a first group of 10 strategies with relatively large fitness and a second group of 10 strategies with relatively small fitness.
A2:对第一组的每个策略的云资源预处理,得到预处理后的策略,确定预处理后的策略是否满足物理约束条件。A2: Preprocess the cloud resources of each policy in the first group, obtain the preprocessed policy, and determine whether the preprocessed policy satisfies the physical constraints.
继续结合上述示例,对第一组的适应度比较大的10个策略,对每个策略中的任务对应的云资源进行预处理,可以得到新的10个策略,然后计算该10个新策略是否满足物理约束条件。Continuing to combine the above examples, for the first group of 10 strategies with relatively large fitness, preprocess the cloud resources corresponding to the tasks in each strategy to obtain 10 new strategies, and then calculate whether the 10 new strategies Meet physical constraints.
需要说明的是,若本次预处理后的策略均满足物理约束条件,则直接确定预处理后的策略的适应度,并基于本次第二组中策略的适应度和预处理后的策略的适应度重新对N个策略进行分组,执行下一次处理。It should be noted that if the preprocessed strategies this time all meet the physical constraints, the fitness of the preprocessed strategies will be determined directly, and based on the fitness of the strategies in the second group this time and the preprocessed strategies The fitness regroups the N strategies and performs the next processing.
A3:若存在Q个策略不满足物理约束条件,则重新生成Q个策略,并确定重新生成的策略是否满足物理约束条件,直至得到Q个满足物理约束条件的策略。A3: If there are Q strategies that do not satisfy the physical constraints, regenerate Q strategies and determine whether the regenerated strategies satisfy the physical constraints until Q strategies that satisfy the physical constraints are obtained.
其中,Q为正整数。Among them, Q is a positive integer.
A4:确定第二组的策略、上述Q个满足物理约束条件的策略,以及预处理后的策略中满足物理约束条件的策略中每个策略的适应度。A4: Determine the fitness of each strategy in the second group of strategies, the above-mentioned Q strategies that satisfy physical constraints, and the preprocessed strategies that satisfy physical constraints.
需要说明的是,A4中总共得到N个策略的适应度。It should be noted that in A4, the fitness of N strategies was obtained in total.
其中,A4中确定的第二组的策略的适应度可以为每次执行A1至A4时,A1中进行分组时计算的适应度。即在A4中需要计算的适应度为针对第一组的策略经过A2和A3处理后的策略的适应度。Among them, the fitness of the second group of strategies determined in A4 may be the fitness calculated when performing grouping in A1 each time A1 to A4 are executed. That is, the fitness that needs to be calculated in A4 is the fitness of the strategy after processing A2 and A3 for the first group of strategies.
S203、将第W次确定的N个适应度中值最小的策略,确定为K个任务的部署策略。S203. Determine the strategy with the smallest median fitness value among the N determined for the Wth time as the deployment strategy for the K tasks.
其中,W为正整数。Among them, W is a positive integer.
可以理解,适应度值最小可以指示该策略的部署总代价最小。It can be understood that the smallest fitness value can indicate that the total deployment cost of the strategy is the smallest.
本公开实施例提供一种云计算环境中业务流程部署的方法,首先,可以为至少一个业务流程中共K个任务初始化生成部署在多个云资源上部署的N个满足物理约束条件的策略,物理约束条件包括存储能力和计算能力的约束条件;然后,重复执行W次下述的步骤:根据适应度将该N个策略分为2组,然后将适应度值大的一组策略进行预处理,判断预处理后得到的新策略是否满足物理约束条件,存在不满足的继续重新生成,直到该组中的策略均满足物理约束条件,然后重新基于适应度分组进行预处理。最后,在第W次处理之后,将N个策略中适应度值最小的策略确定为业务流程中各个任务的部署策略。基于上述的方式,可以根据业务流程中各个任务的时序需求、云资源的计算能力、存储能力、部署代价,以及违约成本,综合确定出满足任务需求的低部署成本的部署策略。Embodiments of the present disclosure provide a method for deploying business processes in a cloud computing environment. First, N policies that satisfy physical constraints and are deployed on multiple cloud resources can be initially generated for a total of K tasks in at least one business process. The physical Constraints include storage capacity and computing capacity constraints; then, repeat the following steps W times: divide the N strategies into 2 groups according to fitness, and then preprocess the group of strategies with larger fitness values. Determine whether the new policy obtained after preprocessing satisfies the physical constraints. If it does not, continue to regenerate until all policies in the group meet the physical constraints, and then preprocess again based on fitness grouping. Finally, after the Wth processing, the strategy with the smallest fitness value among the N strategies is determined as the deployment strategy for each task in the business process. Based on the above method, a low-cost deployment strategy that meets task requirements can be comprehensively determined based on the timing requirements of each task in the business process, the computing power, storage capacity, deployment cost, and default cost of cloud resources.
可选地,本公开实施例提供的云计算环境中业务流程部署的方法中,上述的S21中“确定每个策略是否满足物理约束条件”可以通过下述的S11执行:Optionally, in the method for deploying business processes in a cloud computing environment provided by embodiments of the present disclosure, "determining whether each policy satisfies physical constraints" in the above S21 can be performed by the following S11:
S11、确定每个策略中的云资源的存储能力和计算能力是否均满足对应的约束条件。S11. Determine whether the storage capacity and computing capacity of the cloud resources in each policy meet the corresponding constraints.
结合表1中的策略1,需要计算各个云资源在执行对应的任务时的存储能力和计算能力是否满足对应的约束条件。例如,需要计算云资源1在执行任务1、任务5和任务6时的存储能力和计算能力是否满足对应的约束条件,云资源2在执行任务3时的存储能力和计算能力是否满足对应的约束条件,云资源3在执行任务2、任务4和任务7时的存储能力和计算能力是否满足对应的约束条件。Combined with Strategy 1 in Table 1, it is necessary to calculate whether the storage capacity and computing capacity of each cloud resource meet the corresponding constraints when executing the corresponding tasks. For example, it is necessary to calculate whether the storage capacity and computing capacity of cloud resource 1 satisfy the corresponding constraints when executing tasks 1, 5, and 6, and whether the storage capacity and computing capacity of cloud resource 2 satisfy the corresponding constraints when executing task 3. Conditions, whether the storage capacity and computing capacity of cloud resource 3 meet the corresponding constraints when executing tasks 2, 4, and 7.
基于该方案,在生成了各个任务的部署在云资源上的策略之后,可以判断每个策略中涉及的云资源的存储能力是否满足部署在该资源上的任务的需求、计算能力是否满足部署 在该资源上的任务的需求,从而可以剔除随机生成的策略中不满足物理约束条件的策略。Based on this solution, after generating strategies for deploying each task on cloud resources, it can be determined whether the storage capacity of the cloud resources involved in each strategy meets the requirements of the tasks deployed on the resource and whether the computing capacity meets the deployment requirements. The requirements of the task on the resource can be eliminated from the randomly generated strategies that do not meet the physical constraints.
可选地,本公开实施例提供的云计算环境中业务流程部署的方法中,在确定各个策略中云资源的存储能力是否满足对应的约束条件时,上述的S11可以包括下述的S11a:Optionally, in the method of business process deployment in a cloud computing environment provided by embodiments of the present disclosure, when determining whether the storage capacity of cloud resources in each policy satisfies the corresponding constraints, the above-mentioned S11 may include the following S11a:
S11a、基于任务所需的存储空间、云资源的存储空间,以及任务部署在云资源的决策情况,确定每个策略中的云资源的存储能力是否满足对应的约束条件。S11a. Based on the storage space required by the task, the storage space of the cloud resource, and the decision-making situation of deploying the task on the cloud resource, determine whether the storage capacity of the cloud resource in each policy meets the corresponding constraints.
示例性地,可以基于下述的公式(1)确定策略下云资源的存储能力是否满足存储的约束条件。
For example, it can be determined based on the following formula (1) whether the storage capacity of the cloud resource under the policy satisfies the storage constraints.
其中,Xij表示任务tski部署在云资源CRj的决策情况,Xij=1表示任务tski部署在云资源CRj上,Xij=0表示任务tski未部署在云资源CRj上,CRj.str表示云资源CRj的存储空间。Among them, X ij represents the decision-making situation of deploying task tsk i on cloud resource CR j . X ij =1 indicates that task tsk i is deployed on cloud resource CR j . , CR j .str represents the storage space of cloud resource CR j .
可以理解,若一个策略中的云资源的存储能力满足上述的公式(1),则该策略中的云资源的存储能力满足对应的约束条件,若一个策略中的云资源的存储能力不满足上述的公式(1),则该策略不满足物理约束条件。It can be understood that if the storage capacity of the cloud resources in a policy satisfies the above formula (1), then the storage capacity of the cloud resources in the policy satisfies the corresponding constraints. If the storage capacity of the cloud resources in a policy does not meet the above Formula (1), then the strategy does not satisfy the physical constraints.
基于该方案,可以基于业务流程中的每个任务所需的存储空间、一个策略中各个任务在云资源上的部署情况、各个云资源的存储空间,确定该策略中涉及的各个云资源的存储能力是否满足任务的需求,从而可以确定该策略是否为符合存储需求的策略,以便于进行后续继续进行筛选。Based on this solution, the storage space of each cloud resource involved in the policy can be determined based on the storage space required for each task in the business process, the deployment of each task on cloud resources in a policy, and the storage space of each cloud resource. Whether the capabilities meet the requirements of the task can be determined to determine whether the policy is a policy that meets the storage requirements, so as to facilitate subsequent screening.
可选地,本公开实施例提供的云计算环境中业务流程部署的方法中,在确定各个策略中云资源的存储能力是否满足对应的约束条件时,上述的S11可以包括下述的S11b:Optionally, in the method of business process deployment in a cloud computing environment provided by embodiments of the present disclosure, when determining whether the storage capacity of cloud resources in each policy meets the corresponding constraints, the above S11 may include the following S11b:
S11b、基于任务所需的计算量、云资源的计算能力,以及任务部署在云资源的决策情况,确定每个策略中云资源的计算能力是否满足对应的约束条件。S11b. Based on the amount of computing required for the task, the computing power of the cloud resource, and the decision-making situation of deploying the task on the cloud resource, determine whether the computing power of the cloud resource in each strategy meets the corresponding constraints.
示例性地,可以基于下述的公式(2)确定每个策略下云资源的存储能力是否满足存储的约束条件。
Exemplarily, whether the storage capacity of cloud resources under each policy meets the storage constraint condition can be determined based on the following formula (2).
其中,CRj.cmp表示云资源CRj的计算能力。Among them, CR j .cmp represents the computing capability of cloud resource CR j .
可以理解,若一个策略中的云资源的计算能力满足上述的公式(2),则该策略中的云资源的计算能力满足对应的约束条件,若一个策略中的云资源的计算能力不满足上述的公式(2),则该策略不满足物理约束条件。It can be understood that if the computing power of the cloud resources in a policy satisfies the above formula (2), then the computing power of the cloud resources in the policy satisfies the corresponding constraints. If the computing power of the cloud resources in a policy does not meet the above Formula (2), then the strategy does not satisfy the physical constraints.
基于该方案,可以基于业务流程中的每个任务所需的计算量、一个策略中各个任务在云资源上的部署情况、各个云资源的计算能力,确定该策略中涉及的各个云资源的计算能力是否满足任务的需求,从而可以确定该策略是否为符合计算需求的策略,以便于进行后续继续进行筛选。Based on this solution, the computing power of each cloud resource involved in the strategy can be determined based on the amount of computing required for each task in the business process, the deployment of each task on cloud resources in a strategy, and the computing capabilities of each cloud resource. Whether the capabilities meet the requirements of the task can be determined to determine whether the strategy is a strategy that meets the computing requirements, so as to facilitate subsequent screening.
可选地,本公开实施例提供的云计算环境中业务流程部署的方法中,对于上述A2中云资源的预处理可以为下述两种方式中的至少一项:Optionally, in the method for deploying business processes in a cloud computing environment provided by embodiments of the present disclosure, the preprocessing of the cloud resources in A2 may be at least one of the following two methods:
预处理方式1:对第一组的每两个策略中的至少一个任务的云资源进行交换,得到交换后的策略。Preprocessing method 1: Exchange the cloud resources of at least one task in each two strategies of the first group to obtain the exchanged strategy.
示例性地,将策略“1231232”和策略“3212323”中的任务4至任务6的云资源进行交换,得到2个新的策略“1232322”和“3211233”。For example, the cloud resources of tasks 4 to 6 in the policy "123 123 2" and the policy "321 232 3" are exchanged to obtain two new policies "123 232 2" and "321 123 3".
预处理方式2:对第一组的每个策略中的至少一个任务的云资源进行随机更换,得到更换后的策略。 Preprocessing method 2: Randomly replace the cloud resources of at least one task in each strategy of the first group to obtain the replaced strategy.
示例性地,将策略“1232322”中的任务3的云资源随机改变,例如变更为新的策略“1212322”。For example, the cloud resources of task 3 in the policy "12 3 2322" are randomly changed, for example, to the new policy "12 1 2322".
示例性地,若对云资源的预处理包括上述2种方式,可以先执行上述的预处理方式1,再执行上述的预处理方式2,也可以先执行上述的预处理方式2,再执行上述的预处理方式1,本公开实施例对此不作具体限定。For example, if the preprocessing of cloud resources includes the above two methods, the above preprocessing method 1 can be performed first, and then the above preprocessing method 2 can be performed, or the above preprocessing method 2 can be performed first, and then the above preprocessing method can be performed Preprocessing method 1, the embodiment of the present disclosure does not specifically limit this.
可以理解,在本公开实施例中,在经过预处理之后得到的策略,实际为全新的部署策略,因此,需要继续对新的策略确定是否满足物理约束条件。It can be understood that in the embodiment of the present disclosure, the policy obtained after preprocessing is actually a brand new deployment policy. Therefore, it is necessary to continue to determine whether the new policy satisfies the physical constraints.
基于该方案,在基于适应度对N个策略分组之后,可以将适应度指示的部署代价和违约代价较高的策略进行预处理,从而基于该组策略新生成一组策略,以便于后续进行策略的筛选,选择适应度最优的策略进行任务的部署。Based on this solution, after grouping N policies based on fitness, the policies with higher deployment costs and default costs indicated by fitness can be preprocessed, thereby generating a new set of policies based on this group of policies to facilitate subsequent policy implementation. Screen and select the strategy with the best fitness for task deployment.
可选地,本公开实施例提供的云计算环境中业务流程部署的方法中,在上述的A1之前,还包括下述的A5至A7:Optionally, the method for business process deployment in a cloud computing environment provided by the embodiment of the present disclosure further includes the following A5 to A7 before the above-mentioned A1:
A5:计算每个策略的部署代价。A5: Calculate the deployment cost of each strategy.
A6:计算每个策略的违约代价。A6: Calculate the default cost of each strategy.
A7:根据部署代价和违约代价确定每个策略的适应度。A7: Determine the fitness of each strategy based on the deployment cost and default cost.
例如,一个策略的适应度=部署代价+违约代价。For example, the fitness of a policy = deployment cost + default cost.
基于该方案,在执行A1之前,可以先判断出上述S201生成的N个满足物理约束条件的策略的适应度,以评估各个策略的部署代价和违约代价的程度,便于后续继续对部署代价和违约代价较高的策略进行预处理,基于预处理后重新得到的策略进行后续的处理,以便于得到适应度最优的策略。Based on this solution, before executing A1, the fitness of the N strategies generated by S201 above that meet the physical constraints can be judged first to evaluate the deployment cost and default cost of each strategy, so as to facilitate the subsequent evaluation of the deployment cost and default cost. The more expensive strategy is preprocessed, and subsequent processing is performed based on the strategy obtained after preprocessing, so as to obtain the strategy with optimal fitness.
可选地,本公开实施例提供的云计算环境中业务流程部署的方法中,上述的A5具体可以通过下述的A51执行:Optionally, in the method of business process deployment in a cloud computing environment provided by the embodiments of the present disclosure, the above-mentioned A5 can be specifically performed by the following A51:
A51:基于任务的最大执行时间、云资源定价的单位时间价格、任务选择的云资源中的目标定价策略的决策情况,计算每个策略的部署代价。A51: Calculate the deployment cost of each strategy based on the maximum execution time of the task, the unit time price of cloud resource pricing, and the decision-making situation of the target pricing strategy in the cloud resources selected by the task.
示例性地,可以基于下述的公式(3)确定每个策略的部署代价。
For example, the deployment cost of each strategy can be determined based on the following formula (3).
其中,Max(tski.dur)表示任务tski的最大执行时间,cij表示任务tski所选的云资源CRj定价的单位时间价格,Xijm表示任务tski选择云资源CRj的定价策略m时的决策情况,可以为一个二进制变量。例如,Xijm=1表示任务tski选择云资源CRj的定价策略m,Xijm=0示任务tski未选择云资源CRj的定价策略m。Among them, Max(tsk i.dur ) represents the maximum execution time of task tsk i , c ij represents the unit time price of cloud resource CR j selected by task tsk i , and X ijm represents the pricing of cloud resource CR j selected by task tsk i . The decision-making situation under strategy m can be a binary variable. For example, X ijm =1 indicates that task tsk i selects pricing strategy m for cloud resource CR j , and X ijm =0 indicates that task tsk i does not select pricing strategy m for cloud resource CR j .
基于该方案,可以基于各个任务需求的最大执行时间、各个云资源的定价策略、云资源定价的单位时间价格、任务选择的目标定价策略的决策情况,计算每个策略的部署代价,从而可以基于部署代价综合筛选出较优的部署策略。Based on this solution, the deployment cost of each strategy can be calculated based on the maximum execution time of each task requirement, the pricing strategy of each cloud resource, the unit time price of cloud resource pricing, and the decision-making situation of the target pricing strategy for task selection, so that it can be based on The deployment cost is comprehensively selected to select a better deployment strategy.
可选地,本公开实施例提供的云计算环境中业务流程部署的方法中,上述的A6具体可以通过下述的A61执行:Optionally, in the method of business process deployment in a cloud computing environment provided by the embodiments of the present disclosure, the above-mentioned A6 can be specifically performed by the following A61:
A61:基于任务在运行中违反时序约束造成的违约代价、任务是否违规的决策情况,计算每个策略的违规代价。A61: Calculate the violation cost of each policy based on the violation cost caused by the task's violation of timing constraints during operation and the decision-making situation of whether the task violates the violation.
示例性地,可以基于下述的公式(4)确定每个策略的违规代价。
For example, the violation cost of each policy can be determined based on the following formula (4).
其中,peni表示由于任务tski在部署运行过程中违反时序约束而造成的违规代价,Yi 表示任务tski是否违规的决策情况,Yi=1表示没有完全符合任务tski的时序约束条件,Yi=0表示完全符合任务tski的时序约束条件未造成违规。Among them, pen i represents the violation cost caused by task tsk i violating timing constraints during the deployment and running process, Y i Indicates the decision-making status of whether task tsk i violates the rules. Yi = 1 indicates that the timing constraints of task tsk i are not fully met. Yi = 0 indicates that the timing constraints of task tsk i are completely met and no violation is caused.
进而,上述每个策略的适应度可以基于下述的公式(5)确定。
FIT=COST+PEN      公式(5)
Furthermore, the fitness of each of the above strategies can be determined based on the following formula (5).
FIT=COST+PEN formula (5)
示例性地,在上述的S204中,可以基于下述的公式(6)确定N个策略的适应度中最小的适应度。
Objt=Min(COST+PEN)      公式(6)
For example, in the above-mentioned S204, the smallest fitness among the fitnesses of the N strategies may be determined based on the following formula (6).
Objt=Min(COST+PEN) Formula (6)
基于该方案,可以根据待部署的任务在运行中违反时序约束造成的代价、该策略中各个任务部署在各个云资源上是否产生违反时序的情况,确定每个策略的违规代价,从而可以准确判断出各个待部署策略是否符合任务的时序需求,以便于后续基于时序准确确定出符合各个任务需求的最佳部署策略。Based on this solution, the violation cost of each policy can be determined based on the cost of the task to be deployed violating timing constraints during operation and whether the deployment of each task in the strategy on each cloud resource causes timing violations, so that it can be accurately judged Check whether each strategy to be deployed meets the timing requirements of the task, so that the best deployment strategy that meets the requirements of each task can be accurately determined based on timing.
可选地,本公开实施例提供的云计算环境中业务流程部署的方法中,在上述的A61中,可以基于任务的结束时间、任务的开始时间和任务对应的目标时序约束,确定任务是否违反时序约束。Optionally, in the method of business process deployment in a cloud computing environment provided by embodiments of the present disclosure, in the above-mentioned A61, it can be determined whether the task violates the task based on the end time of the task, the start time of the task and the target timing constraint corresponding to the task. Timing constraints.
示例性地,可以基于下述的公式(7)确定策略中的任务是否违反时序约束。
0≤F(tski)-S(tski)≤bp.stki.TC     公式(7)
For example, whether the tasks in the policy violate timing constraints can be determined based on the following formula (7).
0≤F(tsk i )-S(tsk i )≤bp.stk i .TC Formula (7)
其中,F(tski)表示策略中任务tski的结束时间,S(tski)表示策略中任务tski的开始时间,bp.stki.TC表示业务流程bp中的任务tski所对应的时序约束。Among them, F(tsk i ) represents the end time of task tsk i in the strategy, S(tsk i ) represents the start time of task tsk i in the strategy, bp.stk i.TC represents the time corresponding to task tsk i in the business process bp. Timing constraints.
基于该方案,可以根据各个策略中每个任务预计执行的处理时间和业务流程中任务需求的时序约束,确定策略中的任务实际执行是否违反任务需求的时序约束,以便于基于时序需求和部署的预估时序情况确定出符合任务需求的部署策略。Based on this solution, it can be determined whether the actual execution of tasks in the policy violates the timing constraints of task requirements based on the expected processing time of each task in each strategy and the timing constraints of task requirements in the business process, so as to facilitate the implementation of tasks based on timing requirements and deployment. Estimate timing conditions to determine a deployment strategy that meets mission requirements.
示例:Example:
图4为本公开实施例提供一种基于遗传算法的云计算环境中业务流程优化部署流程示意图,如图4中所示,可以将上述的公式(6)作为遗传算法的目标函数,即寻找适应度最小的业务部署策略,将每个任务部署的云资源位置记作一个基因,整个业务流程中所有任务部署位置作为一条染色体,种群规模设置为20个,将公式(6)的目标函数作为自适应函数,对云计算环境下的业务流程进行优化部署。Figure 4 is a schematic diagram of a business process optimization deployment process in a cloud computing environment based on a genetic algorithm provided by an embodiment of the present disclosure. As shown in Figure 4, the above formula (6) can be used as the objective function of the genetic algorithm, that is, to find adaptation For the business deployment strategy with the smallest degree, the cloud resource location deployed by each task is recorded as a gene, the deployment locations of all tasks in the entire business process are regarded as a chromosome, the population size is set to 20, and the objective function of formula (6) is regarded as the Adaptation function to optimize the deployment of business processes in cloud computing environment.
S401、初始化种群,假设为2个业务流程中的7个任务分别随机部署云资源,染色体对应于部署的云资源编号示例为:1323113、2312321、1231232、...、3212323(共20条染色体)。其中,针对每种部署策略根据公式(1)和(2)分别判断策略中选择的云资源是否满足服务物理约束条件,包括存储约束和计算约束,将不能满足的染色体淘汰,重新初始化生成新的染色体,并重复判断是否满足物理约束条件。S401. Initialize the population. Assume that cloud resources are randomly deployed for 7 tasks in 2 business processes. Examples of chromosome numbers corresponding to the deployed cloud resources are: 1323113, 2312321, 1231232, ..., 3212323 (a total of 20 chromosomes) . Among them, for each deployment strategy, it is judged according to formulas (1) and (2) whether the cloud resources selected in the strategy meet the service physical constraints, including storage constraints and computing constraints, and the chromosomes that cannot be satisfied are eliminated and re-initialized to generate new ones. chromosome, and repeatedly determine whether physical constraints are met.
S402、对于初始种群中的所有个体,根据公式(3)计算每条染色体中涉及策略的部署代价,根据公式(4)判断各条染色体对应的部署策略是否会违反服务的时序约束,计算各条染色体的违约代价。基于公式(3)和公式(4)生成公式(5)目标函数,并以该目标函数作为种群适应度函数,计算初始种群中所有个体的适应度函数值,分别将不同染色体表示的策略代入适应度函数进行计算,得到适应度函数值。S402. For all individuals in the initial population, calculate the deployment cost of the strategy involved in each chromosome according to formula (3), judge whether the deployment strategy corresponding to each chromosome will violate the timing constraints of the service according to formula (4), and calculate each The cost of default on chromosomes. The objective function of formula (5) is generated based on formula (3) and formula (4), and this objective function is used as the population fitness function to calculate the fitness function values of all individuals in the initial population, and substitute the strategies represented by different chromosomes into the adaptation functions. The fitness function is calculated and the fitness function value is obtained.
其中,在此设置情况下,适应度函数值越小,说明部署策略越优。Among them, under this setting, the smaller the fitness function value, the better the deployment strategy.
S403、判断是否迭代结束。S403. Determine whether the iteration ends.
S404、进行选择运算,将种群中的优化个体直接遗传到下一代种群中,例如染色体2312321对应的适应度函数值较小,说明其部署策略较优,可直接遗传到下一代种群;行 交叉运算,将种群中除上述优化个体之外的其他个体中按照适应度排序,相邻个体的部分基因进行交换,对种群中个体进行进化;对进化得到的部署策略进行变异运算,对种群中个体中的部分基因值进行随机改变,对种群中的个体再进行进化。S404. Perform a selection operation to directly inherit the optimized individuals in the population to the next generation population. For example, the fitness function value corresponding to chromosome 2312321 is smaller, indicating that its deployment strategy is better and can be directly inherited to the next generation population; OK The crossover operation sorts the individuals in the population except the above-mentioned optimized individuals according to their fitness, exchanges some genes of adjacent individuals, and evolves the individuals in the population; performs mutation operation on the evolved deployment strategy, and performs mutation operation on the deployment strategy in the population. Some gene values in the individual are randomly changed, and the individuals in the population are further evolved.
例如染色体1231232和3212323中的第4-6个基因进行交换,得到1232322和3211233。并针对交换后的每种部署策略,根据公式(1)和(2)分别判断交换后的云资源是否满足服务物理约束条件,包括存储约束和计算约束,将不能满足的染色体淘汰,重新初始化生成。For example, the 4-6 genes in chromosomes 1231232 and 3212323 are exchanged to obtain 1232322 and 3211233. And for each deployment strategy after the exchange, according to formulas (1) and (2), it is judged whether the exchanged cloud resources meet the service physical constraints, including storage constraints and computing constraints, and the chromosomes that cannot be satisfied are eliminated and re-initialized. .
例如染色体1232322中第3个基因突变为1212322。其中,针对突变后的每种部署策略,根据公式(1)和(2)分别判断变异运算后的云资源是否满足服务物理约束条件,包括存储约束和计算约束,将不能满足的染色体淘汰,重新初始化生成。For example, the third gene in chromosome 1232322 mutates to 1212322. For each deployment strategy after mutation, we use formulas (1) and (2) to determine whether the cloud resources after mutation operation meet the service physical constraints, including storage constraints and computing constraints. We eliminate chromosomes that cannot meet the constraints and reinitialize them.
S406、得到第一次进化后的下一代种群,利用的适应度函数评价种群,继续进行S402到S405操作,直到满足最大迭代次数为止。S406. Obtain the next generation population after the first evolution, use the fitness function to evaluate the population, and continue operations from S402 to S405 until the maximum number of iterations is met.
S407、根据最后一代种群中适应度函数值最小的个体部署方式得到云计算环境下业务流程的优化部署策略。S407. Obtain the optimized deployment strategy of the business process in the cloud computing environment based on the individual deployment method with the smallest fitness function value in the last generation population.
例如最终选择适应度函数值最小的染色体为1122323,则说明:bp1的tsk1部署在CR1,bp1的tsk2部署在CR1,bp1的tsk3部署在CR2,bp1的tsk4部署在CR2,bp2的tsk1部署在CR3,bp2的tsk2部署在CR2,bp2的tsk3部署在CR3For example, if the chromosome with the smallest fitness function value is finally selected as 1122323, it means: tsk 1 of bp 1 is deployed in CR 1 , tsk 2 of bp 1 is deployed in CR 1 , tsk 3 of bp 1 is deployed in CR 2 , and tsk 1 of bp is deployed in CR 1. 4 is deployed in CR 2 , tsk 1 of bp 2 is deployed in CR 3 , tsk 2 of bp 2 is deployed in CR 2 , and tsk 3 of bp 2 is deployed in CR 3 .
需要说明的是,本公开实施例提供的云计算环境中业务流程部署的方法,执行主体还可以为业务流程部署的装置,或者该业务流程部署的装置中的用于执行云计算环境中业务流程部署的方法的控制模块。本公开实施例中以业务流程部署的装置执行云计算环境中业务流程部署的方法为例,说明本公开实施例提供的业务流程部署的装置。It should be noted that, in the method of business process deployment in a cloud computing environment provided by embodiments of the present disclosure, the execution subject may also be a device for business process deployment, or a device in the business process deployment device for executing business processes in a cloud computing environment. The control module of the deployed method. In the embodiment of the present disclosure, a method of using a business process deployment device to perform a business process deployment in a cloud computing environment is taken as an example to illustrate the device for business process deployment provided by the embodiment of the present disclosure.
图5为本公开实施例提供的一种业务流程部署的装置的结构示意图,如图5中所示,业务流程部署的装置500包括:生成模块501、执行模块502和确定模块503;生成模块501,用于生成在多个云资源上部署K个任务的N个满足物理约束条件的策略,该K个任务为至少一个业务流程中的任务,物理约束条件包括存储能力和计算能力的约束条件,K和N均为大于1的整数;执行模块502,用于重复执行W次下述的A1至A4:A1:基于适应度将N个满足物理约束条件的策略分为第一组和第二组,第一组的策略的适应度大于第二组的策略的适应度,适应度指示策略的部署代价和违约代价的程度;A2:对第一组的每个策略的云资源预处理,得到预处理后的策略,确定预处理后的策略是否满足物理约束条件;A3:若存在Q个策略不满足物理约束条件,则重新生成Q个策略,并确定重新生成的策略是否满足物理约束条件,直至得到Q个满足物理约束条件的策略,Q为正整数;A4:确定第二组的策略、Q个满足物理约束条件的策略,以及预处理后的策略中满足物理约束条件的策略中每个策略的适应度;确定模块503,用于将第W次计算的N个适应度中值最小的策略,确定为该K个任务的部署策略,W为大于1的整数。Figure 5 is a schematic structural diagram of a business process deployment device provided by an embodiment of the present disclosure. As shown in Figure 5, the business process deployment device 500 includes: a generation module 501, an execution module 502 and a determination module 503; the generation module 501 , used to generate N strategies that satisfy physical constraints for deploying K tasks on multiple cloud resources. The K tasks are tasks in at least one business process. The physical constraints include constraints on storage capabilities and computing capabilities. K and N are both integers greater than 1; the execution module 502 is used to repeatedly execute the following A1 to A4 W times: A1: Divide N strategies that satisfy physical constraints into the first group and the second group based on fitness , the fitness of the strategies of the first group is greater than the fitness of the strategies of the second group, and the fitness indicates the deployment cost and default cost of the strategy; A2: Preprocessing of cloud resources for each strategy of the first group, the pre-processed After processing the strategy, determine whether the preprocessed strategy satisfies the physical constraints; A3: If there are Q strategies that do not satisfy the physical constraints, regenerate Q strategies and determine whether the regenerated strategies satisfy the physical constraints until Obtain Q strategies that satisfy physical constraints, and Q is a positive integer; A4: Determine the second group of strategies, Q strategies that satisfy physical constraints, and each strategy in the preprocessed strategy that satisfies physical constraints. The fitness; the determination module 503 is used to determine the strategy with the smallest median fitness among the N calculations for the Wth time as the deployment strategy for the K tasks, where W is an integer greater than 1.
可选地,生成模块具体用于:生成在多个云资源上部署K个任务的N个策略,确定每个策略是否满足物理约束条件;若存在P个策略不满足物理约束条件,则重新生成P个策略,并确定重新生成的策略是否满足所述物理约束条件,直至得到N个满足所述物理约束条件的策略,P为小于或等于N正整数。Optionally, the generation module is specifically used to: generate N strategies for deploying K tasks on multiple cloud resources, and determine whether each strategy satisfies the physical constraints; if there are P strategies that do not satisfy the physical constraints, regenerate P strategies, and determine whether the regenerated strategies satisfy the physical constraints until N strategies that satisfy the physical constraints are obtained, where P is a positive integer less than or equal to N.
可选地,物理约束条件包括存储能力和计算能力的约束条件;确定模块具体用于:确定每个策略中的云资源的存储能力和计算能力中是否均满足对应的约束条件。Optionally, the physical constraints include constraints on storage capacity and computing capacity; the determination module is specifically configured to: determine whether the storage capacity and computing capacity of the cloud resources in each policy satisfy the corresponding constraints.
可选地,执行模块具体用于:基于任务所需的存储空间、云资源的存储空间,以及任务部署在云资源的决策情况,确定每个策略中的云资源的存储能力是否满足对应的约束条件。Optionally, the execution module is specifically used to: determine whether the storage capacity of the cloud resources in each policy meets the corresponding constraints based on the storage space required by the task, the storage space of the cloud resource, and the decision-making situation of the task deployment in the cloud resource. condition.
可选地,执行模块具体用于:基于任务所需的计算量、云资源的计算能力,以及任务 部署在云资源的决策情况,确定每个策略中云资源的计算能力是否满足对应的约束条件。Optionally, the execution module is specifically used to: based on the amount of calculation required by the task, the computing power of the cloud resource, and the task The decision-making situation of deploying cloud resources determines whether the computing capabilities of cloud resources in each strategy meet the corresponding constraints.
可选地,执行模块具体用于:执行以下至少一项:对第一组的每两个策略中的至少一个任务的云资源进行交换,得到交换后的策略;对第一组的每个策略中的至少一个任务的云资源进行随机更换,得到更换后的策略。Optionally, the execution module is specifically configured to: perform at least one of the following: exchanging cloud resources for at least one task in every two strategies of the first group to obtain an exchanged strategy; The cloud resources of at least one task in the task are randomly replaced, and the replacement strategy is obtained.
可选地,执行模块,还用于在于适应度将满足物理约束条件的N个策略分为第一组和第二组之前,计算每个策略的部署代价;计算每个策略的违约代价;根据部署代价和违约代价确定每个策略的适应度。Optionally, the execution module is also used to calculate the deployment cost of each strategy before dividing the N strategies that meet the physical constraints into the first group and the second group based on fitness; calculate the default cost of each strategy; according to The deployment cost and default cost determine the fitness of each policy.
可选地,执行模块具体用于:基于任务的最大执行时间、云资源定价的单位时间价格、任务选择的云资源中的目标定价策略的决策情况,计算每个策略的部署代价。Optionally, the execution module is specifically used to: calculate the deployment cost of each strategy based on the maximum execution time of the task, the unit time price of cloud resource pricing, and the decision-making situation of the target pricing strategy in the cloud resources selected by the task.
可选地,执行模块具体用于:基于任务在运行中违反时序约束造成的违约代价、任务是否违规的决策情况,计算每个策略的违规代价。Optionally, the execution module is specifically used to calculate the violation cost of each policy based on the violation cost caused by the task's violation of timing constraints during operation and the decision-making situation of whether the task violates the violation.
可选地,执行模块,还用于基于任务的结束时间、任务的开始时间和任务对应的目标时序约束,确定任务是否违反时序约束。Optionally, the execution module is also used to determine whether the task violates timing constraints based on the end time of the task, the start time of the task, and the target timing constraints corresponding to the task.
本公开实施例提供一种业务流程部署的装置,首先,可以为至少一个业务流程中共K个任务生成部署在多个云资源上部署的N个满足物理约束条件的策略,物理约束条件包括存储能力和计算能力的约束条件;然后,重复执行W次下述的步骤:根据适应度将该N个策略分为2组,然后将适应度值大的一组策略进行预处理,判断预处理后得到的新策略是否满足物理约束条件,存在不满足的继续重新生成,直到该组中的策略均满足物理约束条件,然后重新基于适应度分组进行预处理。最后,在第W次处理之后,将N个策略中适应度值最小的策略确定为业务流程中各个任务的部署策略。基于上述的方式,可以根据业务流程中各个任务的时序需求、云资源的计算能力、存储能力、部署代价,以及违约成本,综合确定出满足任务需求的低部署成本的部署策略。Embodiments of the present disclosure provide a device for business process deployment. First, N policies that satisfy physical constraints and are deployed on multiple cloud resources can be generated for a total of K tasks in at least one business process. The physical constraints include storage capabilities. and computing power constraints; then, repeat the following steps W times: divide the N strategies into 2 groups according to their fitness, and then preprocess the group of strategies with larger fitness values. After judging the preprocessing, we get Whether the new policy satisfies the physical constraints, and if it does not, continue to regenerate until all policies in the group satisfy the physical constraints, and then re-preprocess based on fitness grouping. Finally, after the Wth processing, the strategy with the smallest fitness value among the N strategies is determined as the deployment strategy for each task in the business process. Based on the above method, a low-cost deployment strategy that meets task requirements can be comprehensively determined based on the timing requirements of each task in the business process, the computing power, storage capacity, deployment cost, and default cost of cloud resources.
本公开实施例提供的业务流程部署的装置500能够实现图1至图4方法实施例实现的各个过程,为避免重复,这里不再赘述。The business process deployment device 500 provided by the embodiment of the present disclosure can implement each process implemented by the method embodiments in Figures 1 to 4. To avoid duplication, they will not be described again here.
可选地,如图6所示,本公开实施例还提供一种业务流程部署的装置600,包括处理器601,存储器602,存储在存储器602上并可在处理器601上运行的程序或指令,该程序或指令被处理器601执行时实现上述云计算环境中业务流程部署的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。Optionally, as shown in Figure 6, this embodiment of the present disclosure also provides a business process deployment device 600, including a processor 601, a memory 602, and programs or instructions stored on the memory 602 and executable on the processor 601. , when this program or instruction is executed by the processor 601, it implements each process of the above-mentioned business process deployment method embodiment in a cloud computing environment, and can achieve the same technical effect. To avoid duplication, it will not be described again here.
需要说明的是,图7示出的网络实体或电子设备700仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。It should be noted that the network entity or electronic device 700 shown in FIG. 7 is only an example, and should not bring any limitations to the functions and scope of use of the embodiments of the present disclosure.
如图7所示,电子设备700包括中央处理单元(Central Processing Unit,CPU)701,其可以根据存储在ROM(Read Only Memory,只读存储器)702中的程序或者从存储部分708加载到RAM(Random Access Memory,随机访问存储器)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。I/O(Input/Output,输入/输出)接口705也连接至总线704。As shown in Figure 7, the electronic device 700 includes a central processing unit (Central Processing Unit, CPU) 701, which can be loaded into the RAM (Read Only Memory) 702 according to the program stored in the ROM (Read Only Memory) 702 or from the storage part 708. Random Access Memory (Random Access Memory) 703 program to perform various appropriate actions and processing. In RAM 703, various programs and data required for system operation are also stored. CPU 701, ROM 702 and RAM 703 are connected to each other through bus 704. I/O (Input/Output, input/output) interface 705 is also connected to bus 704.
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如CRT(Cathode Ray Tube,阴极射线管)、LCD(Liquid Crystal Display,液晶显示器)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN(Local Area Network,无线网络)卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。The following components are connected to the I/O interface 705: an input section 706 including a keyboard, a mouse, etc.; an output section 707 including a CRT (Cathode Ray Tube, cathode ray tube), LCD (Liquid Crystal Display), etc., and speakers, etc. ; a storage part 708 including a hard disk, etc.; and a communication part 709 including a network interface card such as a LAN (Local Area Network, wireless network) card, a modem, etc. The communication section 709 performs communication processing via a network such as the Internet. Driver 710 is also connected to I/O interface 705 as needed. Removable media 711, such as magnetic disks, optical disks, magneto-optical disks, semiconductor memories, etc., are installed on the drive 710 as needed, so that a computer program read therefrom is installed into the storage portion 708 as needed.
特别地,根据本公开的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上 的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU 701)执行时,执行本申请的系统中限定的各种功能。In particular, according to embodiments of the present disclosure, the processes described below with reference to the flowcharts may be implemented as a computer software program. For example, embodiments of the present disclosure include a computer program product including a computer program product hosted on a computer-readable medium. A computer program containing program code for performing the method illustrated in the flowchart. In such embodiments, the computer program may be downloaded and installed from the network via communication portion 709 and/or installed from removable media 711 . When the computer program is executed by the central processing unit (CPU 701), various functions defined in the system of the present application are executed.
本公开实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述云计算环境中业务流程部署的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。Embodiments of the present disclosure also provide a readable storage medium on which a program or instructions are stored. When the program or instructions are executed by a processor, each of the above method embodiments of business process deployment in a cloud computing environment is implemented. The process can achieve the same technical effect. To avoid repetition, it will not be described again here.
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如ROM、RAM、磁碟或者光盘等。Wherein, the processor is the processor in the electronic device described in the above embodiment. The readable storage media includes computer-readable storage media, such as ROM, RAM, magnetic disks or optical disks.
本公开实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述云计算环境中业务流程部署的方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。An embodiment of the present disclosure further provides a chip. The chip includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the business process in the cloud computing environment. Each process of the deployment method embodiment can achieve the same technical effect. To avoid duplication, it will not be described again here.
应理解,本公开实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。It should be understood that the chip mentioned in the embodiments of the present disclosure may also be called a system-on-chip, a system-on-a-chip, a system-on-a-chip or a system-on-chip, etc.
本公开实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如上述的云计算环境中业务流程部署的方法的步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。Embodiments of the present disclosure provide a computer program product containing instructions that, when run on a computer, cause the computer to execute the steps of the method for deploying business processes in a cloud computing environment, and can achieve the same technical effect. To avoid repetition, we will not go into details here.
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本公开实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。It should be noted that, in this document, the terms "comprising", "comprises" or any other variations thereof are intended to cover a non-exclusive inclusion, such that a process, method, article or device that includes a series of elements not only includes those elements, It also includes other elements not expressly listed or inherent in the process, method, article or apparatus. Without further limitation, an element defined by the statement "comprises a..." does not exclude the presence of additional identical elements in a process, method, article or apparatus that includes that element. In addition, it should be pointed out that the scope of the methods and apparatuses in the embodiments of the present disclosure is not limited to performing functions in the order shown or discussed, but may also include performing functions in a substantially simultaneous manner or in the reverse order according to the functions involved. Functions may be performed, for example, the methods described may be performed in an order different from that described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本公开各个实施例所述的方法。Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus the necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is better. implementation. Based on this understanding, the technical solution of the present disclosure can be embodied in the form of a software product in essence or that contributes to the existing technology. The computer software product is stored in a storage medium (such as ROM/RAM, disk, CD), including several instructions to cause a terminal (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in various embodiments of the present disclosure.
上面结合附图对本公开的实施例进行了描述,但是本公开并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本公开的启示下,在不脱离本公开宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本公开的保护之内。 The embodiments of the present disclosure have been described above in conjunction with the accompanying drawings. However, the present disclosure is not limited to the above-mentioned specific implementations. The above-mentioned specific implementations are only illustrative and not restrictive. Those of ordinary skill in the art will Inspired by this disclosure, many forms can be made without departing from the purpose of this disclosure and the scope protected by the claims, all of which fall within the protection of this disclosure.

Claims (10)

  1. 一种云计算环境中业务流程部署的方法,所述方法包括:A method of business process deployment in a cloud computing environment, the method includes:
    初始化生成在多个云资源上部署K个任务的N个满足物理约束条件的策略,所述K个任务为至少一个业务流程中的任务,所述物理约束条件包括存储能力和计算能力的约束条件,K和N均为大于1的整数;Initialization generates N strategies that satisfy physical constraints for deploying K tasks on multiple cloud resources. The K tasks are tasks in at least one business process. The physical constraints include constraints on storage capabilities and computing capabilities. , K and N are both integers greater than 1;
    重复执行W次下述的A1至A4:Repeat the following A1 to A4 W times:
    A1:基于适应度将N个满足所述物理约束条件的策略分为第一组和第二组,所述第一组的策略的适应度大于第二组的策略的适应度,适应度指示策略的部署代价和违约代价的程度;A1: Divide N strategies that satisfy the physical constraints into a first group and a second group based on fitness. The fitness of the strategies of the first group is greater than the fitness of the strategies of the second group. The fitness indicates the strategy. The extent of deployment costs and default costs;
    A2:对所述第一组的每个策略的云资源预处理,得到预处理后的策略,确定所述预处理后的策略是否满足所述物理约束条件;A2: Preprocess the cloud resources of each policy of the first group, obtain the preprocessed policy, and determine whether the preprocessed policy satisfies the physical constraints;
    A3:若存在Q个策略不满足所述物理约束条件,则重新生成Q个策略,并确定重新生成的策略是否满足所述物理约束条件,直至得到Q个满足所述物理约束条件的策略,Q为正整数;A3: If there are Q strategies that do not satisfy the physical constraints, regenerate Q strategies and determine whether the regenerated strategies satisfy the physical constraints until Q strategies that satisfy the physical constraints are obtained, Q is a positive integer;
    A4:确定第二组的策略、所述Q个满足所述物理约束条件的策略,以及所述预处理后的策略中满足物理约束条件的策略中每个策略的适应度;A4: Determine the fitness of each strategy among the strategies of the second group, the Q strategies that satisfy the physical constraints, and the strategies that satisfy the physical constraints in the preprocessed strategies;
    将第W次计算的N个适应度中值最小的策略,确定为所述K个任务的部署策略,W为大于1的整数。The strategy with the smallest median fitness among the N calculations for the Wth time is determined as the deployment strategy for the K tasks, where W is an integer greater than 1.
  2. 根据权利要求1所述的方法,其中,所述初始化生成在多个云资源上部署K个任务的N个满足物理约束条件的策略,包括:The method according to claim 1, wherein the initialization generates N strategies that satisfy physical constraints for deploying K tasks on multiple cloud resources, including:
    生成在多个云资源上部署K个任务的N个策略,确定每个策略是否满足物理约束条件;Generate N strategies for deploying K tasks on multiple cloud resources, and determine whether each strategy satisfies physical constraints;
    若存在P个策略不满足物理约束条件,则重新生成P个策略,并确定重新生成的策略是否满足所述物理约束条件,直至得到N个满足所述物理约束条件的策略,P为小于或等于N正整数。If there are P strategies that do not satisfy the physical constraints, regenerate P strategies and determine whether the regenerated strategies satisfy the physical constraints until N strategies that satisfy the physical constraints are obtained, and P is less than or equal to N positive integer.
  3. 根据权利要求1所述的方法,其中,所述物理约束条件包括存储能力和计算能力的约束条件;The method of claim 1, wherein the physical constraints include storage capacity and computing capacity constraints;
    所述确定每个策略是否满足物理约束条件,包括:Determining whether each policy satisfies physical constraints includes:
    确定每个策略中的云资源的存储能力和计算能力中是否均满足对应的约束条件。Determine whether the storage capabilities and computing capabilities of the cloud resources in each policy meet the corresponding constraints.
  4. 根据权利要求3所述的方法,其中,所述确定每个策略中的云资源的存储能力是否满足对应的约束条件,包括:The method according to claim 3, wherein determining whether the storage capacity of the cloud resources in each policy satisfies corresponding constraints includes:
    基于任务所需的存储空间、云资源的存储空间,以及任务部署在云资源的决策情况,确定每个策略中的云资源的存储能力是否满足对应的约束条件。Based on the storage space required by the task, the storage space of the cloud resource, and the decision-making situation of deploying the task in the cloud resource, it is determined whether the storage capacity of the cloud resource in each policy meets the corresponding constraints.
  5. 根据权利要求3所述的方法,其中,所述确定每个策略中的云资源的计算能力是否满足对应的约束条件,包括:The method according to claim 3, wherein determining whether the computing capabilities of the cloud resources in each policy satisfy corresponding constraints includes:
    基于任务所需的计算量、云资源的计算能力,以及任务部署在云资源的决策情况,确定每个策略中云资源的计算能力是否满足对应的约束条件。Based on the amount of computing required for the task, the computing power of the cloud resource, and the decision-making situation of deploying the task on the cloud resource, it is determined whether the computing power of the cloud resource in each strategy meets the corresponding constraints.
  6. 根据权利要求1所述的方法,其中,所述对所述第一组的每个策略的云资源预处理,得到预处理后的策略,包括以下至少一项:The method according to claim 1, wherein the preprocessing of cloud resources for each policy of the first group to obtain a preprocessed policy includes at least one of the following:
    对所述第一组的每两个策略中的至少一个任务的云资源进行交换,得到交换后的策略;Exchange the cloud resources of at least one task in every two policies of the first group to obtain the exchanged policy;
    对所述第一组的每个策略中的至少一个任务的云资源进行随机更换,得到更换后的策略。The cloud resources of at least one task in each strategy of the first group are randomly replaced to obtain a replaced strategy.
  7. 根据权利要求1所述的方法,其中,所述基于适应度将满足所述物理约束条件的N个策略分为第一组和第二组之前,所述方法还包括: The method according to claim 1, wherein before dividing the N strategies that satisfy the physical constraints into the first group and the second group based on fitness, the method further includes:
    计算每个策略的部署代价;Calculate the deployment cost of each strategy;
    计算每个策略的违约代价;Calculate the default cost of each strategy;
    根据所述部署代价和所述违约代价确定每个策略的适应度。The fitness of each strategy is determined according to the deployment cost and the default cost.
  8. 根据权利要求7所述的方法,其中,所述计算每个策略的部署代价,包括:The method according to claim 7, wherein calculating the deployment cost of each strategy includes:
    基于任务的最大执行时间、云资源定价的单位时间价格、任务选择的云资源中的目标定价策略的决策情况,计算每个策略的部署代价。Based on the maximum execution time of the task, the unit time price of cloud resource pricing, and the decision-making situation of the target pricing strategy in the cloud resources selected by the task, the deployment cost of each strategy is calculated.
  9. 根据权利要求7所述的方法,其中,所述计算每个策略的违规代价,包括:The method according to claim 7, wherein the calculating the violation cost of each policy includes:
    基于任务在运行中违反时序约束造成的违约代价、任务是否违规的决策情况,计算每个策略的违规代价。Based on the violation cost caused by the task's violation of timing constraints during operation and the decision-making situation of whether the task violates the violation, the violation cost of each policy is calculated.
  10. 一种业务流程部署的装置,所述业务流程部署的装置包括:生成模块、执行模块和确定模块;A device for business process deployment, which includes: a generation module, an execution module and a determination module;
    所述生成模块,用于生成在多个云资源上部署K个任务的N个满足物理约束条件的策略,所述K个任务为至少一个业务流程中的任务,所述物理约束条件包括存储能力和计算能力的约束条件,K和N均为大于1的整数;The generation module is used to generate N policies that satisfy physical constraints for deploying K tasks on multiple cloud resources. The K tasks are tasks in at least one business process. The physical constraints include storage capacity. and computing power constraints, K and N are both integers greater than 1;
    所述执行模块,用于重复执行W次下述的A1至A4:A1:基于适应度将N个满足所述物理约束条件的策略分为第一组和第二组,所述第一组的策略的适应度大于第二组的策略的适应度,适应度指示策略的部署代价和违约代价的程度;A2:对所述第一组的每个策略的云资源进行预处理,得到预处理后的策略,确定所述预处理后的策略是否满足所述物理约束条件;A3:若存在Q个策略不满足所述物理约束条件,则重新生成Q个策略,并确定重新生成的策略是否满足所述物理约束条件,直至得到Q个满足所述物理约束条件的策略,Q为正整数;A4:确定第二组策略、Q个满足所述物理约束条件的策略,以及所述预处理后的策略中满足物理约束条件的策略中每个策略的适应度;The execution module is used to repeatedly execute the following A1 to A4 W times: A1: divide N strategies that satisfy the physical constraints into a first group and a second group based on fitness, and the first group The fitness of the policy is greater than the fitness of the second group of policies, and the fitness indicates the deployment cost and default cost of the policy; A2: Preprocess the cloud resources of each policy of the first group to obtain the preprocessed strategy, determine whether the preprocessed strategy satisfies the physical constraint; A3: If there are Q strategies that do not satisfy the physical constraint, regenerate Q strategies, and determine whether the regenerated strategy satisfies all the physical constraints. The physical constraints are obtained until Q strategies that satisfy the physical constraints are obtained, Q is a positive integer; A4: Determine the second group of strategies, Q strategies that satisfy the physical constraints, and the preprocessed strategies The fitness of each strategy in the strategy that satisfies the physical constraints;
    所述确定模块,用于将执行模块第W次计算的N个适应度中值最小的策略,确定为所述K个任务的部署策略;W为大于1的整数。 The determination module is used to determine the strategy with the smallest median fitness value among the N calculated by the execution module for the Wth time as the deployment strategy for the K tasks; W is an integer greater than 1.
PCT/CN2023/117095 2022-09-15 2023-09-05 Method and apparatus for deploying business process in cloud computing environment WO2024055877A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211124516.8 2022-09-15
CN202211124516.8A CN115460087B (en) 2022-09-15 2022-09-15 Method and device for deploying business processes in cloud computing environment

Publications (1)

Publication Number Publication Date
WO2024055877A1 true WO2024055877A1 (en) 2024-03-21

Family

ID=84304888

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/117095 WO2024055877A1 (en) 2022-09-15 2023-09-05 Method and apparatus for deploying business process in cloud computing environment

Country Status (2)

Country Link
CN (1) CN115460087B (en)
WO (1) WO2024055877A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115460087B (en) * 2022-09-15 2024-01-02 中国电信股份有限公司 Method and device for deploying business processes in cloud computing environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130246208A1 (en) * 2012-03-16 2013-09-19 Microsoft Corporation Allocation of computational resources with policy selection
CN114461386A (en) * 2021-12-30 2022-05-10 科大讯飞股份有限公司 Task allocation method and task allocation device
CN114661431A (en) * 2020-12-23 2022-06-24 深圳Tcl新技术有限公司 Task scheduling method, storage medium and terminal equipment
CN115460087A (en) * 2022-09-15 2022-12-09 中国电信股份有限公司 Method and device for deploying business process in cloud computing environment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103957261A (en) * 2014-05-06 2014-07-30 湖南体运通信息技术有限公司 Cloud computing resource distributing method based on energy consumption optimization
CN108694077B (en) * 2017-04-10 2022-02-01 郑州芯兰德网络科技有限公司 Distributed system task scheduling method based on improved binary system bat algorithm
CN107133091A (en) * 2017-05-08 2017-09-05 武汉轻工大学 The cloud workflow task dispatching method being classified based on top-down task
CN108664330B (en) * 2018-05-16 2019-12-10 哈尔滨工业大学(威海) cloud resource allocation method based on variable neighborhood search strategy

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130246208A1 (en) * 2012-03-16 2013-09-19 Microsoft Corporation Allocation of computational resources with policy selection
CN114661431A (en) * 2020-12-23 2022-06-24 深圳Tcl新技术有限公司 Task scheduling method, storage medium and terminal equipment
CN114461386A (en) * 2021-12-30 2022-05-10 科大讯飞股份有限公司 Task allocation method and task allocation device
CN115460087A (en) * 2022-09-15 2022-12-09 中国电信股份有限公司 Method and device for deploying business process in cloud computing environment

Also Published As

Publication number Publication date
CN115460087A (en) 2022-12-09
CN115460087B (en) 2024-01-02

Similar Documents

Publication Publication Date Title
Wang et al. A genetic-based approach to web service composition in geo-distributed cloud environment
Heilig et al. A cloud brokerage approach for solving the resource management problem in multi-cloud environments
US9491313B2 (en) Optimizing storage between mobile devices and cloud storage providers
US10261819B2 (en) Determining an optimal computing environment for running an image based on performance of similar images
Binh et al. An evolutionary algorithm for solving task scheduling problem in cloud-fog computing environment
US9336059B2 (en) Forecasting capacity available for processing workloads in a networked computing environment
Ahmed et al. Optimizing energy consumption for cloud internet of things
US7979520B2 (en) Prescriptive architecture recommendations
Yusoh et al. A penalty-based genetic algorithm for the composite SaaS placement problem in the cloud
WO2024055877A1 (en) Method and apparatus for deploying business process in cloud computing environment
EP3014804B1 (en) Burst mode control
CN108664330B (en) cloud resource allocation method based on variable neighborhood search strategy
EP3796166A1 (en) Graph data-based task scheduling method, device, storage medium and apparatus
Amato et al. Multi-objective decision support for brokering of cloud sla
US9672545B2 (en) Optimizing license use for software license attribution
Tripathi et al. Energy efficient VM placement for effective resource utilization using modified binary PSO
Naik et al. Multiobjective virtual machine selection for task scheduling in cloud computing
Shojaiemehr et al. A three-phase process for SLA negotiation of composite cloud services
Yassa et al. A genetic algorithm for multi-objective optimisation in workflow scheduling with hard constraints
CN113821318A (en) Internet of things cross-domain subtask combined collaborative computing method and system
CN102394833B (en) Adaptively selecting electronic message scanning rules
Shi et al. Location-aware and budget-constrained application replication and deployment in multi-cloud environment
CN103997515A (en) Distributed cloud computing center selection method and application thereof
Badri et al. Risk-based optimization of resource provisioning in mobile edge computing
CN114064249A (en) Method and device for scheduling cross-cloud computing tasks of hybrid cloud and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23864609

Country of ref document: EP

Kind code of ref document: A1