Automatic Scaling of at Least One User Application to External Clouds
US-2016134558-A1 · May 12, 2016 · US
US10733557B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10733557-B2 |
| Application number | US-201715478530-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 4, 2017 |
| Priority date | Apr 4, 2017 |
| Publication date | Aug 4, 2020 |
| Grant date | Aug 4, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
According to an embodiment of the present invention, a system dynamically optimizes a service workflow including one or more software services. Initially, the system receives a request to optimize a service workflow, wherein the request includes one or more service requirements and one or more performance objectives related to the one or more service requirements. The system validates service plan information associated with at least one software service plan offered by one or more service providers and generates a plurality of candidate workflows based on the service requirements and performance objectives. The system then determines an optimized workflow from the candidate workflows and executes the optimized workflow to perform operations of the software services. Embodiments of the present invention further include a method and computer program product for dynamically optimizing a service workflow including one or more software services in substantially the same manner as described above.
Opening claim text (preview).
What is claimed is: 1. A system for dynamically optimizing a plurality of workflows including a plurality of cloud-based software services comprising: a cloud-based server comprising at least one processor and a memory coupled to the at least one processor, wherein the cloud-based server is configured to: receive a request to optimize the plurality of workflows, wherein the request includes one or more service requirements and one or more performance objectives related to the one or more service requirements; validate service plan information associated with a plurality of software service plans pre-arranged with one or more service providers, wherein the software service plans indicate a plurality of ranges for service requests with each range associated with a quantity range for service requests and a corresponding cost for service requests within that quantity range; generate a plurality of candidate workflows based on the service requirements and performance objectives, wherein each candidate workflow includes one or more software services with validated service plan information; determine optimized workflows from the candidate workflows based on minimizing processing time of the optimized workflows and a cost of the one or more software services within the candidate workflows determined in accordance with the software service plans, wherein the ranges of the software service plans are selectively considered based on a parameter indicating a quantity of service requests to be made relative to a quantity of available service requests remaining for the ranges; determine an optimum time to connect to each of the one or more service providers; determine, based on the determining the optimum time, that concurrent processing of two or more software services hosted by the one or more service providers reduces processing time needed to execute the plurality of workflows; automatically connect, at the optimum time, one or more client devices to the one or more service providers and concurrently process the two or more software services hosted by the one or more service providers; execute the optimized workflows by the connecting to the one or more service providers of the software services of the optimized workflows to perform operations of the software services of the optimized workflows; and periodically analyze information pertaining to performance of the optimized workflows over an interval period from the one or more service providers of the software services of the optimized workflows, and dynamically update one or more of the software service plans based on the analysis. 2. The system of claim 1 , wherein generating the plurality of candidate workflows further comprises: generating a minimum-cost prediction for each validated software service; for each of the one or more service providers, identifying a minimum-cost service plan for each validated software service; and determining the lowest minimum-cost service plan for each validated software service that satisfies the service requirements and performance objectives. 3. The system of claim 1 , wherein determining optimized workflows further comprises: for each of the plurality of candidate workflows, determining whether a cost associated with a software service included in the candidate workflow may be reduced by selecting the same service provider to simultaneously provide the software service and at least one other software service in the candidate workflow; and aggregating the cost associated with each software service included in the candidate workflow. 4. The system of claim 1 , wherein validating the service plan information further comprises: extracting one or more vocabulary parameters associated with the request; identifying at least one service plan offered by the one or more service providers based on the one or more vocabulary parameters; and determining that at least one service plan offered by the one or more service providers has not expired. 5. The system of claim 1 , wherein the optimized workflows are determined from the candidate workflows based on the cost of the one or more software services executed during a service interval. 6. The system of claim 1 , wherein validating service plan information further comprises: determining a quota associated with a user for the software service for each of the one or more service providers; determining a total quota amount for the user by aggregating the quota associated with each of the one or more service providers; and validating the request to optimize the plurality of workflows in response to an amount of software service requested by the user being less than or equal to the total quota amount for the user. 7. The system of claim 1 , wherein determining optimized workflows from the candidate workflows further comprises sending a message recommending the optimized workflows or one or more service providers associated with the optimized workflows to a user associated with the request to optimize the plurality of workflows. 8. A computer program product dynamically optimizing a plurality of workflows including a plurality of cloud-based software services comprising: one or more non-transitory computer readable storage media collectively having program instructions embodied therewith, the program instructions executable by a cloud-based server comprising at least one processor and a memory coupled to the at least one processor to cause the cloud-based server to: receive a request to optimize the plurality of workflows, wherein the request includes one or more service requirements and one or more performance objectives related to the one or more service requirements; validate service plan information associated with a plurality of software service plans pre-arranged with one or more service providers, wherein the software service plans indicate a plurality of ranges for service requests with each range associated with a quantity range for service requests and a corresponding cost for service requests within that quantity range; generate a plurality of candidate workflows based on the service requirements and performance objectives, wherein each candidate workflow includes one or more software services with validated service plan information; determine optimized workflows from the candidate workflows based on minimizing processing time of the optimized workflows and a cost of the one or more software services within the candidate workflows determined in accordance with the software service plans, wherein the ranges of the software service plans are selectively considered based on a parameter indicating a quantity of service requests to be made relative to a quantity of available service requests remaining for the ranges; determine an optimum time to connect to each of the one or more service providers; determine, based on the determining the optimum time, that concurrent processing of two or more software services hosted by the one or more service providers reduces processing time needed to execute the plurality of workflows; automatically connect, at the optimum time, one or more client devices to the one or more service providers and concurrently process the two or more software services hosted by the one or more service providers; execute the optimized workflows by the connecting to the one or more service providers of the software services of the optimized workflows to perform operations of the software services of the optimized workflows; and periodically analyze information pertaining to performance of the optimized workflows over an interval period from the one or more service providers of the software services of the optimized workflows, and dynamically update one or more of the software service plans based
Provisioning of proxy services (store-and-forward switching systems in data switching networks H04L12/54) · CPC title
Discovery or management thereof, e.g. service location protocol [SLP] or web services · CPC title
involving task migration · CPC title
based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30) · CPC title
Workflow analysis · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.