Server Load Management via Dynamic Multiplicity Adjustment
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
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
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
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
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
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
Data Source
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.


