Data Replication Service Configuration Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In a clustered or distributed application server domain, existing data replication methods fail to maintain consistency of configuration updates across servers, leading to divergence and inconsistencies, especially during server startup, failure, or network partitioning, and do not adequately support independent server operations or cluster-specific consistency requirements.
Innovation Solution
The Data Replication Service (DRS) provides a mechanism for consistent changes across a WebLogic domain or cluster, using two-phase updates, heartbeats, and version-aware configuration management to ensure that configuration updates are propagated and applied uniformly, with features like incremental deltas, two-phase distribution methods, and multicast infrastructure for intra-cluster communication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If simple data copying is used for configuration distribution, then data transfer is fast and simple, but configuration consistency across servers cannot be maintained
Solution Approach 1:
The configuration data is segmented into configuration items (CIs) that can be independently replicated and managed. Each CI can be tracked separately through version control, allowing selective updates and maintaining consistency without requiring complete data synchronization across all servers.
Solution Approach 2:
The system implements feedback mechanisms where servers report their configuration state back to the replication service. This enables the service to detect inconsistencies, track which servers have received updates, and retransmit data as needed to maintain configuration consistency across the distributed system.
2Productivity
If data is cached locally on each server, then server startup is faster and independent operation is enabled, but data divergence and inconsistency occur
Solution Approach 1:
Configuration data is pre-cached on servers before startup occurs. The replication service distributes complete configuration packages in advance, so servers have all necessary data locally available for immediate startup without needing to contact the Admin server, thus achieving fast independent startup while maintaining consistency through pre-synchronization.
Solution Approach 2:
The system implements periodic configuration synchronization where servers periodically check for and receive configuration updates. This maintains the balance between having local cached data for fast startup and ensuring consistency through regular refreshes from the central configuration repository.
3Reliability
If configuration updates are distributed to all servers simultaneously, then consistency is maintained, but network overhead and complexity increase
Solution Approach 1:
The replication service applies local quality by distributing configuration data selectively to specific servers based on their roles and requirements. Different servers receive different subsets of configuration items relevant to their function, reducing unnecessary network traffic while maintaining the consistency of required configuration data for each server type.
4Loss of information
If version-aware configuration management is implemented, then update tracking and consistency are improved, but system complexity increases
Solution Approach 1:
The system uses version control by creating and managing copies of configuration data with version identifiers. Each configuration update generates a new versioned copy that is tracked by the replication service, allowing historical tracking and rollback capabilities without requiring complex version negotiation protocols, thus managing information loss through simple copying with version tags.
Data Source
AI summary
A mechanism for making changes consistently across an application server domain or a cluster. Server configuration consistency is absolutely necessary for cluster deployments. The invention allows changes to the configuration repository and to the application deployment process to be managed via a Data Replication Service (DRS). The former requires that the configuration repository be version aware, while the latter breaks down the application deployment process into two phases—one for data distribution and processing as far as possible, and the second to expose the changes through the Java Naming and Directory Interface (JNDI).

