Dynamic Server Resource Allocation via Real-Time Workload Scoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Remote server environments face inefficiencies due to load distribution imbalances, where some servers are overburdened while others are underutilized, leading to resource wastage and increased costs.

Innovation Solution

A resource management layer with a group monitor that collects performance data from servers, calculates scores based on user-defined weights, and dynamically reallocates servers between active and idle pools to optimize resource utilization by redirecting requests to underutilized servers and removing underutilized servers from high-workload groups.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If servers are statically allocated to handle requests, then system stability is maintained, but resource utilization efficiency deteriorates due to load distribution imbalances

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

Solution Approach 1:

The patent implements dynamic server allocation where the resource manager continuously monitors workload metrics (CPU usage, memory consumption, response times) and adjusts server group memberships in real-time. Servers are dynamically added to or removed from active server groups based on current load conditions, transforming the static allocation into a dynamic system that adapts to changing demands, thereby improving resource utilization efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs a feedback mechanism where the resource manager receives performance data from servers, evaluates workload metrics against thresholds, and triggers appropriate actions (adding or removing servers from groups). This closed-loop feedback system enables automatic load balancing and resource optimization without manual intervention, resolving the contradiction between productivity improvement and system complexity.

Inventive Principle:
Principle #23Feedback

2Loss of time

If more servers are allocated to handle high workload, then response time is reduced, but resource waste increases due to idle servers

Engineering Contradiction:
Improveresponse timeVSAvoidresource waste
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The system dynamically adjusts the number of active servers based on real-time workload monitoring. When response times increase or workload exceeds thresholds, the resource manager automatically adds servers to active groups to reduce response time. When workload decreases, servers are removed from active groups to eliminate resource waste, creating a dynamic adaptation mechanism that balances response time optimization with resource efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The resource manager monitors key performance parameters (CPU usage percentage, memory consumption, response times) and changes system state based on threshold violations. When parameters indicate high workload, the system changes by adding servers; when parameters indicate low utilization, it changes by removing servers. This parameter-driven approach ensures response time optimization without permanent resource overallocation.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If servers are dynamically added and removed from groups, then resource efficiency is improved, but system stability deteriorates due to frequent reconfigurations

Engineering Contradiction:
Improveresource efficiencyVSAvoidsystem stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The resource manager is configured with threshold values that trigger server addition or removal actions. By establishing predetermined thresholds for workload metrics (CPU usage, memory consumption, response times), the system performs preliminary configuration of when reconfiguration should occur, preventing arbitrary or excessive changes. This preliminary action mechanism maintains system stability by ensuring changes only occur when necessary, while still achieving resource efficiency improvements.

Inventive Principle:
Principle #10Preliminary action

4Productivity

If manual load balancing is used to distribute requests, then resource distribution is simplified, but productivity deteriorates due to inability to respond to changing conditions

Engineering Contradiction:
Improveadaptability to changing conditionsVSAvoidmanagement complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The resource manager implements self-service automation where the system automatically monitors its own performance metrics, evaluates workload conditions, and performs server allocation decisions without external intervention. The resource manager autonomously adds or removes servers from active groups based on monitored conditions, enabling the system to adapt to changing conditions automatically while reducing manual management complexity through full automation of the load balancing process.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11409570B2Dynamic management of system computing resources
Publication Date: 2022.08.09 SAP SE
  • US11409570B2 patent drawing
  • US11409570B2 patent drawing
  • US11409570B2 patent drawing

AI summary

System computing resources are dynamically managed by a resource management layer together with resource server pool. A group monitor collects data of server operation (e.g., CPU usage, memory consumption, queue size) in a particular group (e.g., customer-facing servers, job servers). The group monitor: calculates a weighted score for each server, sorts the scores of each server, maintains a sequence of scores, and periodically reports the score list to a resource manager. When an incoming request is directed to a particular server group, the group monitor redirects the request to a lowest-scoring server, and recalculates/sorts the score list. The resource manager monitors and throttles the servers in each group. Where servers in a group are experiencing high workload, the manager adds to the group server(s) from the resource pool. Conversely, where server group members are experiencing a low workload, the manager removes the lowest scoring server(s) to the resource pool.