Dynamic Resource Allocation via Disposable Virtual Binary Codes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Monolithic computing systems are inefficient in resource utilization, requiring additional resources for increased service demand and leaving residual agents or containers in memory after service execution, leading to unnecessary resource usage.
Innovation Solution
A system that monitors current and foreseen computing resource usage to dynamically allocate data processing services across a network of resources, employing virtual binary codes that can be deployed and removed without residual effects, allowing for horizontal and vertical deployment and dynamic re-deployment based on usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional virtual use (VMs or containers) is employed to allocate resources based on service demand, then resource allocation flexibility is improved, but residual memory usage occurs after service execution
Solution Approach 1:
The patent extracts the agent from the traditional VM/container architecture and places it in a centralized database. The agent is deployed only when needed and removed immediately after service execution, preventing residual memory usage while maintaining resource allocation flexibility through on-demand deployment and removal of the agent component.
Solution Approach 2:
The patent implements a disposable agent model where the agent is created temporarily for service execution and then discarded. This short-lived agent approach eliminates the need for persistent agents that consume memory after service completion, while still providing the adaptability needed for dynamic resource allocation.
2Productivity
If additional computing resources are deployed to meet increased service demand, then service capacity is improved, but resource utilization efficiency deteriorates
Solution Approach 1:
The patent implements dynamic resource allocation where the agent can be deployed to different computing resources based on real-time service demand. The system monitors resource usage and dynamically moves the agent between resources, allowing service capacity to scale with demand while maintaining high utilization efficiency by avoiding static resource allocation.
Solution Approach 2:
The centralized agent in the database serves multiple functions: it can be deployed to different computing resources, manages multiple services, and coordinates resource allocation across the system. This universal agent approach allows a single agent instance to handle varying service demands without requiring dedicated agents for each resource, improving overall utilization efficiency.
3Speed
If agents remain in memory after service execution to receive subsequent commands, then response readiness is improved, but memory consumption increases
Solution Approach 1:
The patent prepares the agent in advance by storing it in a centralized database ready for deployment. When a service needs execution, the agent is quickly instantiated from the database and deployed to the appropriate computing resource. This preliminary preparation in the database enables rapid deployment and response without requiring the agent to permanently reside in memory.
Solution Approach 2:
The centralized database acts as an intermediary between the service management system and the computing resources. The agent is stored and managed in the database, which mediates its deployment to computing resources when needed and its removal afterward. This intermediary approach enables fast response times through efficient database retrieval while minimizing memory consumption by avoiding persistent agent residency.
Data Source
AI summary
A system, method and the like for allocating computing resources to data processing services/applications based on the current or foreseen usage/load of the computing resources. The elastic nature of the computing resource grid allows for expansion or contraction of ancillary use of the computing resources depending on the data processing requirements and computer resource usage. Further, virtual binary codes are deployed on the computing resources, which are executed at the application layer and configured to be removed upon completion of a job or in the event that the usage state of the computing resource dictates such. The removal of the virtual binary codes from the computing resources provides for no residual effect on the computing resources (i.e., no code remains in computing resource memory and, as such no processing capabilities are subsequently used).


