Application Grouping Controller for Server Communication Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data processing systems face inefficiencies due to applications and virtual machines being hosted on different servers, leading to reduced communication speed, increased heat generation, and unnecessary energy usage, especially during low processing demands.
Innovation Solution
A data processing system with a system controller that networks host servers to determine which applications or virtual machines communicate with each other, grouping them on the same server for improved efficiency and reducing server power usage by moving non-essential processes to offline mode.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If applications and virtual machines are hosted on different host servers to distribute processing duties, then load balancing is improved, but communication speed between applications deteriorates
Solution Approach 1:
The system segments applications into different groups based on their communication patterns. Frequently communicating applications are placed in the same host server group, while less interconnected applications are distributed across different servers. This segmentation resolves the contradiction by maintaining load balancing at the group level while enabling fast communication within groups.
Solution Approach 2:
The patent merges frequently communicating applications onto the same host server to improve communication speed. The system dynamically identifies communication patterns and consolidates related applications on shared servers, thereby reducing network latency while maintaining overall system load balance through the distribution of application groups across multiple servers.
2Power
If all servers in the cluster operate at full power to handle processing demands, then processing capacity is improved, but energy consumption increases
Solution Approach 1:
The system dynamically adjusts server power states based on real-time processing demands and application communication patterns. When applications are consolidated on certain servers, those servers can operate at higher power levels when needed, while other servers can be placed in low-power or offline states. This dynamic adjustment resolves the contradiction by matching power consumption to actual processing requirements.
Solution Approach 2:
The patent implements a strategy where servers that are not currently needed for processing or communication can be discarded (powered down or placed in standby), and their resources recovered for later use. The system monitors communication patterns and processing loads, bringing servers online only when their hosted applications need to communicate or process data, thereby reducing overall energy consumption while maintaining processing capacity when needed.
3Reliability
If applications communicating with each other are hosted on different host servers, then fault isolation is improved, but communication efficiency deteriorates
Solution Approach 1:
The system segments the server infrastructure into multiple groups or clusters, where each group hosts a subset of applications that communicate frequently with each other. This segmentation enables fault isolation at the group level while maintaining high communication efficiency within groups. If one group experiences failures, other groups continue to operate independently, preserving both reliability and communication efficiency.
Data Source
AI summary
A data processing system may include a plurality of host servers, each host server including a device processor and a non-transitory computer readable medium including instructions stored thereon and executable by the processor. The computer readable medium of each server includes instructions for running one or more application. The system further includes a system controller including a device processor and a non-transitory computer readable medium including instructions stored thereon and executable by the processor, wherein the computer readable medium of the system controller includes instructions for performing the following steps: receiving commands to run two or more applications on the plurality of host servers; making a determination as to which of the two or more applications communicate with one another during operation; and based on the determination, providing instructions to the plurality of host servers to run running applications determined to communicate with one another on the same host server.


