Application Manifest Tree for Dynamic Resource Provisioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex applications require efficient management of various resources for operation, which existing technologies struggle to manage dynamically and adaptively, especially in cloud-based platforms like PaaS and IaaS, leading to inefficiencies in resource allocation and failure analysis.

Innovation Solution

An application manifest is used to define logical resource requirements, which are mapped to physical components, enabling dynamic provisioning and scaling of resources such as CPUs, databases, and web servers, with analytics for real-time logging and root cause analysis through a manifest tree.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If applications require various external resources to facilitate their operation, then application functionality is improved, but resource management complexity increases

Engineering Contradiction:
Improveapplication functionalityVSAvoidresource management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a resource manifest as an intermediary that declaratively defines resource requirements and a system that processes this manifest to automatically provision and manage resources. The manifest acts as a mediator between the application and the complex resource provisioning system, allowing applications to specify needs without directly managing the complexity of resource allocation, scaling, and interdependencies.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system enables self-service by automatically provisioning resources based on the resource manifest without requiring manual intervention. The system autonomously analyzes the manifest, determines required resources, provisions them through appropriate services (PaaS, IaaS), and manages their lifecycles, allowing the application deployment process to serve itself rather than requiring operator intervention for each resource.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If resources are dynamically provisioned and scaled, then application adaptability is improved, but system complexity increases

Engineering Contradiction:
Improveapplication adaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic resource provisioning where the system continuously monitors application performance and resource utilization, automatically scaling resources up or down based on actual needs. The resource manifest and provisioning system enable flexible, dynamic allocation rather than static pre-provisioning, allowing the system to adapt to changing conditions while managing complexity through automated decision-making and orchestration.

Inventive Principle:
Principle #15Dynamics

3Reliability

If comprehensive resource tracking is implemented, then reliability is improved, but measurement and detection difficulty increases

Engineering Contradiction:
Improveapplication reliabilityVSAvoidresource tracking difficulty
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements comprehensive feedback mechanisms that continuously monitor resource provisioning status, application performance, and resource utilization. This feedback is fed back into the system to automatically adjust resource allocation, detect issues, and maintain reliability. The feedback loop includes tracking resource lifecycle events, monitoring performance metrics, and using this information to drive automated provisioning and scaling decisions, making reliability measurable and manageable through systematic observation.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9128792B2Systems and methods for installing, managing, and provisioning applications
Publication Date: 2015.09.08 WALMART APOLLO LLC
  • US9128792B2 patent drawing
  • US9128792B2 patent drawing
  • US9128792B2 patent drawing

AI summary

Systems and methods are disclosed for provisioning resources for an application according to an application manifest. The resources may include database, network, and processing resources. The application manifest may be organized as a manifest tree with provisioned resources having their own application manifests for provisioning sub-resources. The application manifest may also define provisioning and de-provisioning of the application in response to loading of the application. Root cause analysis may be performed in accordance with the manifest tree. Also disclosed are systems and methods for rolling out an upgrade across a node cluster. Systems and methods are disclosed for routing traffic to different workflow paths in order to implement an overloaded path and evaluate performance of the overloaded path.