Dynamic Application Assignment in Distributed Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for assigning applications in distributed systems are rigid and inflexible, leading to user discomfort and inefficiencies, particularly in mobile applications where local computing resources are limited and communication with remote resources requires time and energy.
Innovation Solution
A method and architecture that dynamically assign applications to local or remote application servers based on tolerance time, which is the maximum permissible latency threshold, allowing for flexible resource allocation and improved user experience by selecting the most efficient calculation environment.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If applications are permanently assigned to local or remote application servers based on prioritization, then the system structure is simple and easy to manage, but the system becomes rigid and inflexible leading to user discomfort
Solution Approach 1:
The patent implements dynamic application assignment by continuously monitoring round-trip times and automatically switching between local and remote application servers based on current performance conditions. The application manager dynamically adjusts assignment decisions rather than using permanent static assignments, allowing the system to adapt to changing network conditions and server performance while maintaining manageable complexity through automated control.
2Power
If applications are assigned to remote application servers, then computing power is increased, but communication time and energy consumption increase
Solution Approach 1:
The patent introduces an application manager as an intermediary component that sits between the application client and the application servers. This mediator continuously monitors round-trip times to both local and remote servers and intelligently routes application execution to the appropriate server based on current conditions. The intermediary enables the system to access remote computing power when beneficial while minimizing communication time by switching to local execution when network conditions deteriorate.
3Speed
If applications are executed locally, then response time is reduced, but computing resources are limited
Solution Approach 1:
The patent creates a universal execution environment where applications can run on either local or remote application servers depending on conditions. The application client is designed to support both local and remote execution modes, making the system multi-functional. This universality allows the system to leverage local computing resources for fast response when needed while accessing remote computing power when additional capacity is required, effectively combining the advantages of both approaches.
Data Source
AI summary
A method for executing an application on a distributed system architecture having an application client for receiving input data and for providing output data; a local application server on the application client; at least one remote application server for receiving input data from the application client for processing input data for the application client and for returning processed input data to the application client; and an application manager for assigning the application to the local application server or to the at least one remote application server. The method includes determining a first round-trip time, determining a second round-trip time, determining a tolerance time for receiving and processing input data for the application, comparing the two round-trip times with the tolerance time, and assigning the application to the local application server or to the at least one remote application server based on the comparison.

