Centralized Application Deployment in Server Clusters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional management of configuration and deployment for software and hardware in distributed systems is time-consuming and error-prone, requiring manual changes across multiple servers and instances, which can lead to compatibility issues and increased costs due to repetitive compilation and deployment processes.
Innovation Solution
A system and method for deploying applications in a domain that involves assembling and compiling source code on a domain administration server, storing it in a central repository, and deploying it to multiple server clusters, allowing for phased deployment and management of different application versions to maintain compatibility and reduce errors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If manual operations are used for compiling and deploying each application instance on each server, then flexibility to make individual changes is achieved, but time consumption and error rate increase significantly
Solution Approach 1:
The patent performs preliminary actions by compiling the application once on the domain administration server and storing the compiled artifact in a repository. This pre-compilation step eliminates the need for repetitive compilation on each target server, significantly reducing deployment time while maintaining the ability to make changes through version control in the repository.
Solution Approach 2:
The patent creates a centralized copy of the compiled application in a repository that can be efficiently distributed to multiple servers. Instead of compiling separately on each server, the system copies the pre-compiled artifact from the repository to multiple target servers, reducing time consumption while allowing version management through copy operations.
2Adaptability or versatility
If manual operations are used for modifying configuration files across hundreds of servers, then individual server customization is possible, but error rate and time consumption increase
Solution Approach 1:
The patent implements a universal configuration management system where a single configuration template can be applied across multiple servers. The domain administration server manages configuration files in a repository that can be selectively deployed to different server subsets, providing both consistency across the system and the ability to customize for specific servers when needed.
Solution Approach 2:
The patent uses configuration templates that can be copied and deployed to multiple servers simultaneously. This approach maintains precision by using standardized templates while allowing customization through selective modification of specific server configurations in the repository before deployment.
3Stability of the object's composition
If the same application version is deployed to all servers, then consistency is maintained, but ability to perform phased rollouts and A/B testing is limited
Solution Approach 1:
The patent segments the server infrastructure into different subsets that can receive different application versions. The domain administration server manages multiple versions in the repository and can selectively deploy to specific server subsets, enabling phased rollouts, A/B testing, and gradual migration while maintaining consistency within each subset.
Solution Approach 2:
The patent implements dynamic version management where the system can adaptively deploy different application versions to different server subsets based on operational needs. This allows phased rollouts and testing while maintaining consistency within each deployment subset, and the ability to switch configurations dynamically.
4Ease of manufacture
If repetitive compilation is performed on each server, then local optimization is possible, but productivity and deployment speed decrease
Solution Approach 1:
The patent performs compilation as a preliminary action on the domain administration server before deployment. The compiled application artifact is then stored in a repository and rapidly distributed to multiple servers, eliminating repetitive compilation and significantly improving deployment speed while maintaining the ability to optimize for specific environments through configuration parameters.
Data Source
AI summary
A system and method for application deployment in a server cluster from a central domain. The method may include assembling a set of source code and related resource files on an administration server coupled to an application repository. The method may also include compiling the set of source code and related resource files into an application and storing the application in the application repository. The application may then be deployed onto a first subset of servers in a cluster of servers and executed on the subset of servers. In one embodiment, the method may further include storing a different version of the application in the application repository and deploying the different version of the application onto a second subset of servers separate from the first subset of servers. The different version of the application may then be executed on the second subset of servers.


