Server Resource Orchestration via Priority Dispatching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current application server environments face inefficiencies in resource allocation and management, particularly during peak usage times, leading to resource shortages, lack of responsiveness, and suboptimal use of resources due to the lack of application-level priority awareness in traditional systems.

Innovation Solution

A centralized orchestration layer is introduced to dynamically manage and balance resources across applications based on their priority levels, using algorithms such as suspend-resume, fixed-sharing, and dynamic-sharing strategies to allocate resources efficiently and ensure higher priority applications receive necessary resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional resource allocation methods are used in application server environments, then system simplicity is maintained, but resource allocation efficiency deteriorates during peak usage times

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

A centralized orchestration layer is introduced as an intermediary between applications and application servers. This orchestration layer receives application requests, determines priority levels, and dynamically allocates server resources accordingly. The mediator resolves the contradiction by implementing sophisticated resource allocation algorithms without requiring changes to individual applications or servers, thus improving productivity while managing complexity through centralized control.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If equal resource allocation is provided to all applications, then system fairness is maintained, but responsiveness to high-priority applications deteriorates

Engineering Contradiction:
Improveapplication responsivenessVSAvoidresource allocation fairness
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The system implements local quality by allocating different resource priorities to different applications based on their specific needs and importance. The orchestration layer assigns priority levels to individual applications or tasks, allowing critical applications to receive preferential resource allocation while less critical applications receive standard allocation. This resolves the contradiction by maintaining fairness at the system level while providing differentiated responsiveness at the application level.

Inventive Principle:
Principle #3Local quality

3Productivity

If more server resources are allocated to handle peak demand, then system capacity increases, but resource utilization efficiency during low-demand periods deteriorates

Engineering Contradiction:
Improvesystem capacityVSAvoidresource utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system implements dynamic resource allocation where the orchestration layer continuously monitors application priorities and adjusts server resource allocation in real-time. During peak demand periods, more resources are dynamically assigned to high-priority applications; during low-demand periods, resources are released or reallocated. This dynamic approach resolves the contradiction by maintaining high system capacity when needed while optimizing resource utilization efficiency during off-peak times, eliminating the need for permanently over-provisioned resources.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10884801B2Server resource orchestration based on application priority
Publication Date: 2021.01.05 SAP SE
  • US10884801B2 patent drawing
  • US10884801B2 patent drawing
  • US10884801B2 patent drawing

AI summary

The present disclosure involves systems, software, and computer implemented methods for resource allocation and management. One example method includes receiving a request to run a first task for a first application, the request including a first application priority. At least one second application priority of at least one currently running application is identified. A dispatching algorithm is executed, to dispatch the first task to a first application server based on the first application priority and the at least one second application priority. Destination information is returned, in response to the request, for the first application server, for execution of the first task for the first application, at the first application server, using the first resources.