Microservice Identity Management Zero Downtime Upgrades

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current identity management systems in cloud environments face challenges in providing secure and unified access across diverse devices and user types, including employees, customers, and partners, while maintaining consistency in security measures and preventing unauthorized access.

Innovation Solution

The implementation of a cloud-based identity management system using a multi-tenant, microservices architecture that provides a unified Identity Cloud Service (IDCS) with features like authentication, authorization, auditing, and federation, enabling secure access across various channels and environments through microservices-based identity management, access control, and adaptive authentication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If a monolithic identity management system is used, then system simplicity is maintained, but system downtime during upgrades increases

Engineering Contradiction:
Improvesystem downtime during upgradesVSAvoidsystem architecture complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The identity management system is divided into multiple independent microservices (e.g., authentication service, authorization service, account management service). Each microservice can be deployed, updated, and scaled independently, allowing zero-downtime upgrades by routing traffic between different service versions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A service mesh or API gateway is introduced as an intermediary layer that manages traffic routing between clients and microservice versions. This intermediary enables seamless transition between old and new service versions during upgrades, maintaining system availability while facilitating architectural complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If version-specific URLs are used to route to different microservice versions, then service version control is achieved, but URL management complexity increases

Engineering Contradiction:
Improveservice version control capabilityVSAvoidURL management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The service mesh or API gateway provides universal traffic management capabilities that work across all microservice versions. Instead of requiring clients to manage version-specific URLs, the gateway automatically routes requests to appropriate service versions based on configuration, headers, or other routing rules, eliminating the need for complex version-specific URL management.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The service mesh acts as an intermediary that abstracts away version management complexity from clients. It handles URL routing, version negotiation, and service discovery internally, allowing clients to interact with a simplified interface while the intermediary manages the complexity of multiple service versions.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If microservices architecture is implemented, then system scalability and zero-downtime upgrades are enabled, but system complexity increases

Engineering Contradiction:
Improvesystem scalabilityVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system is segmented into independent microservices that can be developed, deployed, and scaled separately. This segmentation enables parallel development and deployment pipelines, allowing the system to scale horizontally by adding more service instances without increasing overall system complexity through standardized service interfaces and containerization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A service mesh or API gateway serves as an intermediary that manages the complexity of microservice communication, routing, and orchestration. This intermediary layer provides standardized patterns for service interaction, reducing the complexity burden on individual services while enabling scalable architecture through centralized management of cross-cutting concerns.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10579367B2Zero down time upgrade for a multi-tenant identity and data security management cloud service
Publication Date: 2020.03.03 ORACLE INT CORP
  • US10579367B2 patent drawing
  • US10579367B2 patent drawing
  • US10579367B2 patent drawing

AI summary

Embodiments implement data versioning in a cloud-based identity management system. Embodiments provide a first microservice for performing an identity management service and having a corresponding first version application programming interface (“API”) that identifies the first microservice. Embodiments provide a second microservice for performing the identity management service, the second microservice comprising a new version of the first microservice and having a corresponding second version API that identifies the second microservice. Embodiments receive a request for performing the identity management service from a client of the identity management system, the request including a uniform resource locator (“URL”), where the first version API or the second version API are identified in the URL. Embodiments then perform the identity management service using either the first microservice or the second microservice based on the request and using tenant data stored in a database.