Server Load Management via Dynamic Multiplicity Adjustment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing environments, managing server load effectively is challenging due to the session sticky characteristic of transactions, leading to uneven distribution and inefficiencies where one server may be overloaded while others are idle, resulting in suboptimal processing capacity.

Innovation Solution

A method and system that monitor and adjust the maximum permitted local multiplicity of servers by issuing instructions based on global and local transaction loads, allowing for dynamic adjustment of the number of transactions each server can handle, ensuring efficient load distribution across multiple servers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If transactions are allocated to application servers based on session sticky characteristic, then transaction processing consistency is maintained, but server load distribution becomes uneven and some servers become idle while others are overloaded

Engineering Contradiction:
Improvetransaction processing consistencyVSAvoidserver load distribution efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies dynamics by making the server selection strategy adaptive rather than static. The load distribution apparatus dynamically adjusts its behavior based on real-time server load conditions, switching between round-robin allocation (when servers are balanced) and session sticky allocation (when servers are overloaded), thereby resolving the contradiction between consistency and efficiency

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the allocation parameter from fixed session sticky to dynamic round-robin based on server load state. By monitoring server load parameters and adjusting the allocation strategy accordingly, the system optimizes both transaction consistency and server utilization efficiency

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the multiplicity of server programs is increased to handle high CPU frequency, then server processing capacity is improved, but system complexity and resource consumption increase

Engineering Contradiction:
Improveserver processing capacityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies local quality by allowing different servers to have different multiplicity values assigned to them. Instead of uniformly increasing all server multiplicities, the system assigns higher multiplicities only to servers that are currently overloaded, optimizing processing capacity while minimizing overall system complexity

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically adjusts server multiplicity values based on real-time load conditions rather than using fixed high multiplicity for all servers. This dynamic approach increases processing capacity when needed while maintaining simplicity during normal operation

Inventive Principle:
Principle #15Dynamics

3Productivity

If database processing is performed by multiple database processes throughout the entire system, then data processing capability is improved, but the database server becomes a bottleneck in the transaction process

Engineering Contradiction:
Improvedata processing capabilityVSAvoidtransaction processing efficiency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces a load distribution apparatus as an intermediary between clients and application servers. This intermediary manages transaction routing and coordinates database processing, preventing the database server from becoming a bottleneck by balancing the distribution of database operations across multiple processes

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7707581B2Method and system for managing server load to execute transactions of an application program on multiple servers
Publication Date: 2010.04.27 X CORP
  • US7707581B2 patent drawing
  • US7707581B2 patent drawing
  • US7707581B2 patent drawing

AI summary

A method and system for managing server load to execute groups of transactions of an application program on N servers. A condition, ascertained for each transaction group, is that a current value of global multiplicity is not or is, respectively, less than a specified maximum value of global multiplicity. For each transaction group, an instruction is or is not issued to each server to change a current value of the maximum permitted local multiplicity for each server to a new value of the maximum permitted local multiplicity. For each transaction group: global multiplicity denotes a number of transactions concurrently performed by the N servers collectively; and local multiplicity for each server denotes a number of transactions concurrently performed by each server. The issuing or not issuing depends on the ascertained condition and whether the current value of the maximum local multiplicity is a default value for each server.