Micro-service Architecture with Dynamic Address Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing micro-service architectures require manual registration and resolution of physical addresses, leading to inflexibility, user dissatisfaction, and limited scalability, as changes in micro-service addresses necessitate reconfiguration and redeployment of dependent services, and there is no automatic failover in case of server failures.
Innovation Solution
Implementing a micro-service architecture that uses intermediate identifiers linked to physical addresses for automatic registration and resolution, allowing micro-services to be self-registering and self-resolving, enabling dynamic updates and prioritization, thus eliminating the need for manual intervention and enhancing scalability and availability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If manual registration and resolution of physical addresses is used, then micro-services can be registered and accessed, but the system requires reconfiguration and redeployment when addresses change, reducing flexibility and scalability
Solution Approach 1:
The patent introduces an intermediary mapping system that decouples the relationship between micro-service identifiers and physical addresses. Instead of directly embedding physical addresses in service calls, the system uses an intermediate mapping layer that translates service identifiers to current physical addresses automatically. This intermediary mechanism eliminates the need for reconfiguration when addresses change, as the mapping can be updated independently of the service logic.
Solution Approach 2:
The patent implements dynamic address resolution where the mapping between service identifiers and physical addresses can change without requiring system reconfiguration. The system dynamically updates the mapping information and automatically routes service calls to the new addresses, enabling the architecture to adapt to address changes, server failures, and load balancing requirements in real-time.
2Reliability
If physical addresses are embedded in calling micro-service code, then direct access is achieved, but server failures cannot be handled and no failover is possible
Solution Approach 1:
The mapping system acts as an intermediary that maintains knowledge of multiple physical addresses for each micro-service. When a server fails, the mapping can be updated to redirect calls to alternative servers hosting the same service, enabling automatic failover without changing the calling service code.
Solution Approach 2:
The system prepares for potential failures by maintaining a mapping that can be quickly updated with alternative address information. This beforehand preparation allows the system to cushion against server failures by having pre-planned alternative routing paths, ensuring continuous service availability.
3Extent of automation
If manual registration of micro-services is performed, then all micro-services can be registered, but the process requires user intervention and is time-consuming
Solution Approach 1:
The patent implements self-service registration where micro-services automatically register themselves with the mapping system upon deployment. The services provide their own identifier and address information to the mapping, eliminating the need for manual user intervention in the registration process and significantly reducing registration time.
4Productivity
If static addressing is used, then simple architecture is maintained, but changes require redeployment of calling services
Solution Approach 1:
The mapping system serves as an intermediary layer that absorbs the complexity of address management. While the addressing mechanism becomes more complex with the introduction of mapping, this complexity is isolated in a dedicated component rather than being distributed across all services. This allows calling services to remain simple while the mapping layer handles the complexity of dynamic address resolution.
Data Source
AI summary
A plurality of micro-services is automatically registered with a central data storage device. During registration, a mapping is determined between intermediate identifiers that identify selected micro-services and physical addresses of one or more servers that execute the selected micro-services. At least one of the physical addresses are dynamically updated based upon operational changes to the one or more servers or based upon a registration of an additional server.


