Transforming non-apex code to apex code
US-10423396-B1 · Sep 24, 2019 · US
US11038778B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11038778-B2 |
| Application number | US-201816216749-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 11, 2018 |
| Priority date | Dec 11, 2018 |
| Publication date | Jun 15, 2021 |
| Grant date | Jun 15, 2021 |
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.
The current document is directed to an automated-application-installation subsystem that provisions, installs, and configures applications across cloud-computing providers, including applications that invoke functions provisioned and executed through a distributed-function-as-a-service feature of the automated-application-installation subsystem. The automated-application-installation subsystem employs application blueprints to identify components to provision. An application blueprint generally includes component specifications, constraints, and interdependencies. The automated-application-installation subsystem then determines a cost-effective provisioning of the identified components across available cloud-computing providers and installs the application according to the cost-effective provisioning.
Opening claim text (preview).
The invention claimed is: 1. An automated-application subsystem of an automated-application-release-management system within a cloud-computing facility having multiple servers, data-storage devices, and one or more internal networks, the automated-application subsystem comprising: an application-blueprint-generation subsystem that generates an application blueprint for a distributed application; an application-provisioning engine, to which the application blueprint is input, that allocates computational resources from one or more computing facilities for execution of the application described by the application blueprint, and interfaces to a distributed-function-service provisioning interface provided by a distributed-function-service to instantiate user-defined functions specified in the application blueprint; and a distributed-function-service execution interface provided by the distributed-function-service through which the distributed application calls the user-defined functions. 2. The automated-application subsystem of claim 1 that is further incorporated in a workflow-based cloud-management system that additionally includes an infrastructure-management-and-administration subsystem and a workflow-execution engine. 3. The automated-application subsystem of claim 1 wherein the application blueprint generated by the application-blueprint-generation subsystem describes the computational resources and application components that together compose an executing distributed application, including specifications of the computational resources and application components, constraints, characteristics, and dependencies of the computational resources and application components, and interdependencies among computational resources and application components. 4. The automated-application subsystem of claim 1 wherein the distributed-function-service instantiates user-defined functions within execution environments acquired by the distributed-function-service from multiple cloud-computing facilities, including virtual machines and containers within virtual machines. 5. The automated-application subsystem of claim 4 wherein the distributed-function-service, in addition to the distributed-function-service execution interface and the distributed-function-service provisioning interface, further comprises a provisioning-engine database that stores information about user-defined functions, execution environments acquired by the distributed-function-service, and other information used by the distributed-function-service to instantiate and re-instantiate user-defined functions within execution acquired by the distributed-function-service. 6. The automated-application subsystem of claim 5 wherein the distributed-function-service further comprises: a function-as-a-service execution engine that instantiates and executes user-defined functions on the multiple cloud-computing facilities; and a distributed-function-service execution engine that receives, through the distributed-function-service execution interface, an indication of a user-defined-function and arguments supplied to the user-defined-function, transforms and packages the received indication of the user-defined-function and arguments into calling information, and passes the calling information to the function-as-a-service execution engine. 7. The automated-application subsystem of claim 6 wherein the distributed-function-service execution engine accesses stored information that specifies a format and a content for the calling information for the indicated user-defined function, the stored information maintained in the provisioning-engine database and recently accessed stored information maintained in a memory cache. 8. The automated-application subsystem of claim 6 wherein the distributed-function-service execution engine further comprises an infrastructure configuration engine that configures the function-as-a-service execution engine to use bootstrapped virtual machines acquired by the distributed-function-service execution engine for instantiating containers for execution of user-defined functions. 9. The automated-application subsystem of claim 6 wherein the distributed-function-service further comprises a bootstrap service that boots up virtual machines to prepare them for hosting user-defined functions. 10. The automated-application subsystem of claim 6 wherein the distributed-function-service further comprises an infrastructure health monitor that continuously monitors acquired virtual machines so that, when one or more of the virtual machines have been terminated by the cloud-computing facilities, replacement virtual machines are acquired, as needed, by the distributed-function-service. 11. The automated-application subsystem of claim 5 wherein the distributed-function-service further comprises: a latency filter that evaluates candidate cloud-computing facilities with respect to latency requirements associated with a user-defined function; a geo-location-constraints analyzer that evaluates candidate cloud-computing facilities with respect to location constraints and requirements associated with a user-defined function; and a function-affinity filter that determines a list of candidate cloud-computing facilities within which to instantiate a user-defined function by; characterizing the user-defined function, accessing an infrastructure registry to generate a list of candidate cloud-computing facilities on which the user-defined function can be instantiated, filtering the list of candidate cloud-computing facilities, via a call to the latency filter, to select candidate cloud-computing facilities compatible with latency requirements associated with the user-defined function, filtering the list of candidate cloud-computing facilities, via a call to the geo-location-constraints analyzer, to select candidate cloud-computing facilities compatible with location requirements associated with the user-defined function, and filtering the list of candidate cloud-computing facilities for compliance with one or more cloud-computing-facility-selection policies. 12. The automated-application subsystem of claim 11 wherein the distributed-function-service further comprises a spot-bid service that accesses cloud-computing vendors to acquire virtual machines for instantiation of user-defined functions. 13. The automated-application subsystem of claim 12 wherein the distributed-function-service further comprises a distributed-function-service provisioning engine that receives an indication of a user-defined function in a request from the distributed-function-service provisioning interface, searches the infrastructure registry for an already-instantiated user-defined function that matches the indicated user-defined function, and when no already-instantiated user-function is found in the provisioning-engine database, calls the function affinity filter to obtain a list of candidate cloud-computing facilities on which to instantiate the user-defined function, and and calls the spot-bid service to acquire an initial execution environment from a cloud-computing facility for execution of the user-defined function. 14. The automated-application subsystem of claim 12 wherein the distributed-function-service further comprises an infrastructure prediction engine that periodically reevaluates the computational resources acquired for user-defined functions in order to ensure that the expected demand for execution of the user-defined functions can be satisfied by the computational resources acquired for execution of the user-defined function from the multiple cloud-computing facilities; m
Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements · CPC title
Discovery or management thereof, e.g. service location protocol [SLP] or web services · CPC title
Automatic or semi-automatic definitions, e.g. definition templates · CPC title
to service a request · CPC title
Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.