Microservice Data Synchronization via Single Network Channel
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Centralized database solutions for cloud microservices face scalability issues, synchronization challenges, and high availability dependencies, leading to a separation between microservices and their underlying data.
Innovation Solution
A method for synchronizing microservice data stores across multiple network nodes using a single network channel, adjusted based on context information such as delay tolerance, encryption, update frequency, and priority, to ensure high availability and reduce network complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a centralized database is used to store microservice data, then data storage is simplified, but scalability is reduced and synchronization requirements increase
Solution Approach 1:
The patent divides the centralized database into distributed data stores across multiple microservice instances. Each instance maintains its own data store, eliminating the single centralized database and enabling independent scaling of each instance without affecting others.
Solution Approach 2:
The patent introduces a synchronization mechanism that acts as an intermediary to coordinate data changes across distributed data stores. This mediator ensures consistency between instances while allowing them to operate independently, resolving the conflict between simplification and scalability.
2Device complexity
If a centralized database is used, then data storage is simplified, but high availability becomes contingent on the centralized database availability
Solution Approach 1:
By segmenting the centralized database into multiple distributed data stores across different instances, the system eliminates the single point of failure. Each instance can continue operating independently even if others are unavailable, improving overall system reliability.
Solution Approach 2:
The patent changes the availability parameter from centralized (all-or-nothing) to distributed (partial availability). Each data store can serve requests independently, allowing the system to maintain partial functionality even when some instances are down, thereby improving high availability.
3Ease of operation
If separate network channels are used to synchronize each data store independently, then data synchronization is simplified, but network complexity increases
Solution Approach 1:
The patent merges multiple separate network channels into a single shared network channel for synchronizing data across distributed data stores. This consolidation reduces network complexity while maintaining the ability to synchronize all data stores through one unified communication path.
Solution Approach 2:
The single network channel is designed to handle synchronization for multiple data stores simultaneously, making it a universal communication path. This multi-functional channel replaces multiple specialized channels, simplifying the network architecture while preserving synchronization capabilities.
4Productivity
If multiple instances of microservices are created to improve scalability, then processing capacity increases, but synchronization challenges increase
Solution Approach 1:
The patent combines synchronization operations for multiple data stores into a unified process over a single network channel. This merging approach allows multiple instances to be synchronized through one coordinated mechanism, reducing the complexity that would otherwise arise from managing separate synchronization channels for each instance.
Solution Approach 2:
The synchronization mechanism acts as an intermediary that coordinates changes across all distributed data stores. This mediator manages the complexity of synchronizing multiple instances by providing a centralized coordination point, allowing scalable deployment without proportionally increasing synchronization complexity.
Data Source
AI summary
The disclosed computer-implemented method for synchronizing microservice data stores may include (i) establishing, at a first network node, an instance of a first microservice for an application and an instance of a distinct second microservice, (ii) establishing, at a distinct second network node, an additional instance of the first microservice and an additional instance of the distinct second microservice, (iii) establishing a single network channel for synchronizing, between the first network node and the distinct second network node, a first data store for the first microservice and a second data store for the distinct second microservice, and (iv) synchronizing the first data store for the first microservice and the second data store for the distinct second microservice. Various other methods, systems, and computer-readable media are also disclosed.


