11385939

Method and System for Modeling and Analyzing Computing Resource Requirements of Software Applications in a Shared and Distributed Computing Environment

PublishedJuly 12, 2022
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A system, comprising: one or more processors; and memory storing instructions that, when executed by the one or more processors, are configured to cause the one or more processors to: receive a request for computing resources for a first application of a plurality of applications in a shared computing environment, wherein the request is received at a resource supply manager from an application manager based on resource requirements for the first application, wherein the resource supply manager is configured to manage allocation for a plurality of computing resources in the shared computing environment, and the requested computing resources are to be allocated from the plurality of computing resources; responsive to the request, determine availability of the requested computing resources within the shared computing environment; and allocate a subset of the plurality of computing resources to the application manager for the first application based at least in part on a service specification, wherein the subset of the computing resources is less than all of the requested computing resources using relaxed resource requirements received from the application manager based at least in part on an unavailability of the requested computing resources, and wherein the service specification defines an acceptable range for a number of instances of the first application on the allocated computing resources.

2

2. The system of claim 1 , wherein the service specification is received from the application manager and used by the application manager to generate the request.

3

3. The system of claim 1 , wherein the service specification defines a set of constraints for the plurality of computing resources.

4

4. The system of claim 3 , wherein the set of constraints define which computing resources of the plurality of computing resources are allocatable to the application manager to execute the first application.

5

5. The system of claim 3 , wherein the request is based at least in part on the set of constraints in relation to constraints for another application of a plurality of applications managed by the application manager.

6

6. The system of claim 3 , wherein the set of constraints defines the requested computing resources to prevent the first application from having a single point of failure.

7

7. The system of claim 1 , wherein the service specification defines a priority for one or more of a plurality of applications that includes the first application and that is managed by the application manager.

8

8. The system of claim 1 , wherein the instructions are configured to cause the one or more processors to: receive a replacement request for a replacement computing resource from the application manager when there is an instance of failure in the subset of the computing resources on which the first application is running; and allocating the replacement computing resource to cause the application manager to restart at least a portion of the first application that has failed on the replacement computing resource.

9

9. The system of claim 1 , wherein allocating the subset of the plurality of computing resources comprises: determining that a full set of the requested computing resources are not available, and allocating the subset in response to the determination that the full set of requested computing resources are not available and in response to a subsequent request from the application manager, wherein the service specification defines the relaxed resource requirements when the full set is unavailable.

10

10. The system of claim 9 , wherein the full set of the requested computing resources are not available due to constraints specified in the service specification.

11

11. A method, comprising: receiving a service specification for a first application of a plurality of applications at an application manager implemented using one or more processors, wherein the service specification defines a set of computing resources of a plurality of computing resources in a shared computing environment used to execute the first application, and wherein the application manager is configured to manage allocations of the plurality of computing resources from a resource supply manager to the plurality of applications; requesting, by the application manager, the set of computing resources from the resource supply manager; receiving, at the application manager from the resource supply manager, an indication of allocated computing resources of the plurality of computing resources allocated to the first application, wherein the allocated computing resources include fewer resources than are included in the set of computing resources based at least in part on respective availability statuses of the set of computing resources determined by the resource supply manager using resource allocation policies and the service specification indicating an allowable reduction in allocated resources from the set of computing resources to the allocated computing resources; and deploying and managing a plurality of instances of the first application on the allocated computing resources using the application manager, wherein the service specification defines an acceptable range for a number of instances of the first application on the allocated computing resources.

12

12. The method of claim 11 , wherein the plurality of applications comprises heterogeneous types of applications.

13

13. The method of claim 11 , wherein the service specification also defines a set of constraints for the plurality of computing resources, and wherein the application manager is configured to account for the set of constraints when requesting the set of computing resources from the resource supply manager.

14

14. The method of claim 13 , wherein the set of constraints defines which computing resources of the plurality of computing resources can or cannot be allocated to the application manager to execute the first application.

15

15. The method of claim 13 , wherein the application manager is configured to account for the set of constraints of the first application in relation to constraints of a second application of the plurality of applications when requesting the set of computing resources from the resource supply manager.

16

16. The method of claim 13 , wherein the set of constraints defines the set of computing resources to prevent the first application from having a single point of failure.

17

17. The method of claim 11 , wherein the service specification defines a priority for one or more of the plurality of applications, and the allocation of the plurality of computing resources to the plurality of applications is based at least in part on the priority.

18

18. The method of claim 11 , wherein deploying and managing a plurality of instances of the first application comprises: monitoring a status of the allocated computing resources on which the first application is running; and in response to an instance of failure in a failed allocated computing resource of the allocated computing resources, restarting the first application that has failed on the failed allocated computing resource.

19

19. The method of claim 11 , wherein deploying and managing a plurality of instances of the first application comprises: monitoring a status of the allocated computing resources on which the first application is running; in response to an instance of failure in a failed allocated computing resource of the allocated computing resources, requesting a replacement computing resource from the resource supply manager; and restarting the first application that has failed on the replacement computing resource.

20

20. A tangible, non-transitory, and computer-readable medium storing instructions, that when executed by one or more processors are configured to cause the one or more processors to: receive, at an application manager, a service specification for a first application of a plurality of applications that defines a set of computing resources used to execute the first application, wherein the application manager is implemented using one or more processors and is configured to manage the plurality of applications in a shared computing environment; transmit a request, from the application manager to a resource supply manager, for the set of computing resources from the resource supply manager; receive, at the application manager and from the resource supply manager, an indication that the set of computing resources is unavailable based on resource allocation policies; in response to receiving the indication, transmit a subsequent request, from the application manager to the resource supply manager, for a relaxed set of computing resources that comprises only a portion of the set of the computing resources; receive, at the application manager from the resource supply manager, an allocation of the portion of the set of computing resources to the first application; and deploy and manage a plurality of instances of the first application on the portion of the set of computing resources, wherein the service specification defines an acceptable range for the number of instances of the first application on the allocated computing resources.

Patent Metadata

Filing Date

Unknown

Publication Date

July 12, 2022

Inventors

Wai Ming Wong
Michael C. Hui

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “METHOD AND SYSTEM FOR MODELING AND ANALYZING COMPUTING RESOURCE REQUIREMENTS OF SOFTWARE APPLICATIONS IN A SHARED AND DISTRIBUTED COMPUTING ENVIRONMENT” (11385939). https://patentable.app/patents/11385939

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.

METHOD AND SYSTEM FOR MODELING AND ANALYZING COMPUTING RESOURCE REQUIREMENTS OF SOFTWARE APPLICATIONS IN A SHARED AND DISTRIBUTED COMPUTING ENVIRONMENT — Wai Ming Wong | Patentable