Application idling in a multi-tenant cloud-based application hosting environment
US-9317325-B2 · Apr 19, 2016 · US
US9842002B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9842002-B2 |
| Application number | US-201213461699-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 1, 2012 |
| Priority date | May 1, 2012 |
| Publication date | Dec 12, 2017 |
| Grant date | Dec 12, 2017 |
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.
A mechanism for node selection for a new application in a multi-tenant cloud hosting environment is disclosed. A method of the invention includes receiving a request to host a software application on one of a plurality of nodes of a cloud computing infrastructure, each node configured to host multiple software applications. A set of available nodes from the plurality of nodes can be identified on which the software application can be hosted and the capacity of each identified node to host additional software applications can be determined. Then, a node is selected to host the software application using the determined capacities.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: receiving, by a processing device, a first request from a first application owner to host a first Web application on a virtual machine of a plurality of virtual machines of a multi-tenant cloud computing infrastructure of the cloud provider; creating the first Web application for the first request on the virtual machine; receiving a second request from a second application owner to host a second Web application on one of the plurality of virtual machines in the multi-tenant cloud computing infrastructure, wherein the second application owner is different than the first application owner; determining that a first attribute of the first Web application being hosted for the first request on the virtual machine matches a second attribute of the second Web application in the second request, wherein the first attribute and the second attribute comprise an implementation related property of the first Web application and the second Web application, respectively; determining, responsive to the first attribute matching the second attribute, that the virtual machine hosting the first Web application for the first request has capacity to host the second Web application for the second request; creating the second Web application for the second request on the virtual machine hosting the first Web application; and preventing the second Web application from accessing the first Web application and preventing the first Web application from accessing the second Web application. 2. The method of claim 1 , wherein determining that the virtual machine hosting the first Web application for the first request has capacity comprises: comparing the capacity of the virtual machine that is hosting the first Web application to other virtual machines of the plurality of virtual machines; and determining the virtual machine that is hosting the first Web has the most capacity in view of the comparing. 3. The method of claim 1 , wherein creating the second Web application for the second request comprises: sending an instruction to the virtual machine hosting the first Web application to create a new software repository for the second Web application for the second request. 4. The method of claim 1 , wherein determining that the virtual machine hosting the first Web application for the first request has capacity comprises: determining a number of software repositories on the virtual machine; and determining a current virtual machine utilization using the number of software repositories. 5. The method of claim 4 , wherein determining the current virtual machine utilization comprises: weighing each software repository on the virtual machine in view of a source code language of a respective Web application hosted in each software repository. 6. The method of claim 1 , wherein determining that the virtual machine hosting the first Web application for the first request has capacity comprises: determining a number of active applications on the virtual machine that are currently executing; and determining a current virtual machine utilization using the number of active applications. 7. The method of claim 6 , wherein determining the current virtual machine utilization comprises: weighing each active application on the virtual machine in view of an expected memory footprint of each active application. 8. The method of claim 6 , wherein determining the current virtual machine utilization comprises: weighing each active application on the virtual machine in view of an indicated size of each active application. 9. The method of claim 6 , further comprising: determining a maximum virtual machine utilization for the virtual machine hosting the first Web application for the first request; and comparing the maximum virtual machine utilization to the current virtual machine utilization of the virtual machine. 10. A system, comprising: a memory; a communications interface to communicate with a plurality of virtual machines of a multi-tenant cloud computing infrastructure of cloud provider; and a processing device operably coupled to the memory and the communications interface to: receive a first request from a first application owner to host a first Web application on a virtual machine of the plurality of virtual machines of the multi-tenant cloud computing infrastructure; create the first Web application for the first request on the virtual machine; receive a second request from a second application owner to host a second Web application on one of the plurality of virtual machines in the multi-tenant cloud computing infrastructure, wherein the second application owner is different than the first application owner; determine that a first attribute of the first Web application being hosted for the first request on the virtual machine matches a second attribute of the second Web application in the second request, wherein the first attribute and the second attribute comprise an implementation related property of the first Web application and the second Web application, respectively; determine, responsive to a match of the first attribute to the second attribute, that the virtual machine hosting the first Web application for the first request has capacity to host the second Web application for the second request; create the second Web application for the second request on the virtual machine hosting the first Web application; and prevent the second Web application from accessing the first Web application and prevent the first Web application from accessing the second Web application. 11. The system of claim 10 , wherein to determine that the virtual machine hosting the first Web application for the first request has capacity comprises the processing device to: compare the capacity of the virtual machine that is hosting the first Web application to other virtual machines of the plurality of virtual machines; and determine the virtual machine that is hosting the first Web application has the most capacity in view of the comparing. 12. The system of claim 10 , wherein to create the second Web application for the second request comprises the processing device to: send an instruction to the virtual machine hosting the first Web application to create a new software repository for the second Web application for the second request. 13. The system of claim 10 , wherein to determine that the virtual machine hosting the first Web application for the first request has comprises the processing device to: determine a number of software repositories on the virtual machine; and determine a current virtual machine utilization using the number of software repositories. 14. The system of claim 13 , wherein to determine the current virtual machine utilization comprises the processing device to: weigh each software repository on the virtual machine in view of a source code language of a respective Web application hosted in each software repository. 15. The system of claim 10 , wherein to determine that the virtual machine hosting the first Web application for the first request has comprises the processing device to: determine a number of active applications on the virtual machine that are currently executing; and determine a current virtual machine utilization using the number of active applications. 16. The system of claim 15 , wherein to determine the current virtual machine utilization comprises the processing device to: weigh each active application on the virtual machine in view of an expected memory footprint of each active application. 17.
by executing in a restricted environment, e.g. sandbox or secure virtual machine · CPC title
Partitioning or combining of resources · CPC title
considering the load · CPC title
Grid computing · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.