Dynamic dispatching of workloads spanning heterogeneous services
First Claim
1. A method of executing a workload that includes a plurality of transactions, the method comprising:
- determining a plurality of cloud services needed to execute each of the plurality of transactions, wherein at least one of the determined cloud services is a metered cloud service that executes metered transactions and limits a number of operations that can be performed within a given time interval, and at least one of the determined cloud services is a non-metered cloud service that executes non-metered transactions and does not limit the number of operations that can be performed within the given time interval;
for a first time slot, determining whether each metered cloud service has a sufficient quota of operations available to execute respective metered transactions;
for the first time slot, determining whether each non-metered cloud service has a sufficient processing load to execute respective non-metered transactions;
executing the plurality of transactions of the workload during the first time slot when each metered cloud service has the sufficient quota and each non-metered cloud service has the sufficient processing load, wherein executing the plurality of transactions of the workload uses both metered cloud services and non-metered cloud services; and
waiting to execute the plurality of transactions of the workload during a time slot subsequent to the first time slot when any of the metered cloud services does not have the sufficient quota or any of the non-metered cloud services does not have a sufficient processing load.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for executing a workload that includes a plurality of transactions for a first time slot determines whether a metered cloud service has a sufficient quota of operations available to execute respective metered transactions. For the first time slot, the system determines whether a non-metered cloud service has a sufficient processing load to execute respective non-metered transactions. The system executes the plurality of transactions during the first time slot when each metered cloud service has the sufficient quota and each non-metered cloud service has the sufficient processing load. Further, the system waits to execute the plurality of transactions of the workload during a time slot subsequent to the first time slot when any of the metered cloud services does not have the sufficient quota or any of the non-metered cloud services does not have a sufficient processing load.
-
Citations
20 Claims
-
1. A method of executing a workload that includes a plurality of transactions, the method comprising:
-
determining a plurality of cloud services needed to execute each of the plurality of transactions, wherein at least one of the determined cloud services is a metered cloud service that executes metered transactions and limits a number of operations that can be performed within a given time interval, and at least one of the determined cloud services is a non-metered cloud service that executes non-metered transactions and does not limit the number of operations that can be performed within the given time interval; for a first time slot, determining whether each metered cloud service has a sufficient quota of operations available to execute respective metered transactions; for the first time slot, determining whether each non-metered cloud service has a sufficient processing load to execute respective non-metered transactions; executing the plurality of transactions of the workload during the first time slot when each metered cloud service has the sufficient quota and each non-metered cloud service has the sufficient processing load, wherein executing the plurality of transactions of the workload uses both metered cloud services and non-metered cloud services; and waiting to execute the plurality of transactions of the workload during a time slot subsequent to the first time slot when any of the metered cloud services does not have the sufficient quota or any of the non-metered cloud services does not have a sufficient processing load. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer readable medium having instructions stored thereon that, when executed by a processor, executes a workload that includes a plurality of transactions, the executes workload comprising:
-
determining a plurality of cloud services needed to execute each of the plurality of transactions, wherein at least one of the determined cloud services is a metered cloud service that executes metered transactions and limits a number of operations that can be performed within a given time interval, and at least one of the determined cloud services is a non-metered cloud service that executes non-metered transactions and does not limit the number of operations that can be performed within the given time interval; for a first time slot, determining whether each metered cloud service has a sufficient quota of operations available to execute respective metered transactions; for the first time slot, determining whether each non-metered cloud service has a sufficient processing load to execute respective non-metered transactions; executing the plurality of transactions of the workload during the first time slot when each metered cloud service has the sufficient quota and each non-metered cloud service has the sufficient processing load, wherein executing the plurality of transactions of the workload uses both metered cloud services and non-metered cloud services; and waiting to execute the plurality of transactions of the workload during a time slot subsequent to the first time slot when any of the metered cloud services does not have the sufficient quota or any of the non-metered cloud services does not have a sufficient processing load. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A cloud based dynamic dispatcher for a workload that includes a plurality of transactions, the dispatcher comprising:
-
a processor executing instructions stored in a memory, the processor; determining a plurality of cloud services needed to execute each of the plurality of transactions, wherein at least one of the determined cloud services is a metered cloud service that executes metered transactions and limits a number of operations that can be performed within a given time interval, and at least one of the determined cloud services is a non-metered cloud service that executes non-metered transactions and does not limit the number of operations that can be performed within the given time interval; for a first time slot, determining whether each metered cloud service has a sufficient quota of operations available to execute respective metered transactions; for the first time slot, determining whether each non-metered cloud service has a sufficient processing load to execute respective non-metered transactions; executing the plurality of transactions of the workload during the first time slot when each metered cloud service has the sufficient quota and each non-metered cloud service has the sufficient processing load, wherein executing the plurality of transactions of the workload uses both metered cloud services and non-metered cloud services; and waiting to execute the plurality of transactions of the workload during a time slot subsequent to the first time slot when any of the metered cloud services does not have the sufficient quota or any of the non-metered cloud services does not have a sufficient processing load. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification