Microservice Fabric Controller Atomicity Enforcement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current microservice fabric controllers fail to ensure atomicity across a chain of microservices and lack the ability to measure success/failure metrics, leading to unpredictable behavior and cleanup challenges in transaction flows.

Innovation Solution

A microservice fabric controller initiates a call flow through a chain of microservices, detects transaction failures, and retries the failed transaction without disrupting successful microservices, using an atomicity agent that collaborates with sidecars to enforce atomicity and track metrics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If current microservice fabric controllers are used to manage microservice chains, then developers can focus on application logic and DevOps capabilities, but the controllers cannot ensure atomicity of operations across the microservice chain

Engineering Contradiction:
ImproveDeveloper focus on application logicVSAvoidAtomicity of operations
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent introduces an atomicity agent as an intermediary component that sits between the microservice fabric controller and the microservices chain. This agent intercepts calls, tracks their progress through the chain, and enforces atomicity by coordinating rollbacks when failures occur. The intermediary handles the complexity of atomicity enforcement without requiring changes to the microservices themselves or their application logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The atomicity agent implements feedback mechanisms by monitoring the state of each microservice in the chain and using this information to determine whether to proceed with or rollback operations. When a failure is detected, the agent provides feedback to initiate appropriate rollback actions, ensuring that the system returns to a consistent state. This feedback loop enables automatic enforcement of atomicity without human intervention.

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If individual applications are responsible for ensuring cleanup across microservice chains, then each microservice can operate independently, but the system cannot measure success/failure metrics or predict trends

Engineering Contradiction:
ImproveIndependent microservice operationVSAvoidSuccess/failure metrics
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The atomicity agent serves multiple functions: it enforces atomicity, tracks metrics, monitors chain behavior, and provides visibility into success/failure rates. This universal agent handles both the operational independence of individual microservices and the centralized measurement of system-wide metrics, eliminating the need for each application to independently implement both concerns.

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

Solution Approach 2:

The atomicity agent automatically collects and analyzes metrics about microservice chain behavior, including success and failure rates. This self-service capability enables the system to predict trends and identify issues without requiring external monitoring tools or manual tracking by individual applications. The agent autonomously provides insights into system health and performance.

Inventive Principle:
Principle #25Self-service

3Reliability

If a transaction fails at one microservice in the chain, then the failure can be detected, but the entire chain must be rolled back disrupting previously successful microservices

Engineering Contradiction:
ImproveTransaction atomicityVSAvoidRollback disruption time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the microservice chain into independent units of work, each tracked by the atomicity agent. When a failure occurs, the agent identifies the specific segment that failed and only rolls back operations from that point forward, leaving previously successful segments intact. This segmentation enables selective rollback rather than forcing a complete chain rollback, reducing time loss and disruption.

Inventive Principle:
Principle #1Segmentation

4Productivity

If microservice chains are deployed without atomicity enforcement, then deployment is simpler and faster, but the system behavior becomes unpredictable and cleanup becomes difficult

Engineering Contradiction:
ImproveDeployment speedVSAvoidSystem behavior predictability
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The atomicity agent acts as a transparent intermediary that enforces atomicity without requiring changes to deployment processes or microservice code. It intercepts and manages transactions at the fabric controller level, allowing rapid deployment of microservices while automatically ensuring predictable behavior through enforced atomicity. The intermediary handles the complexity of atomicity enforcement without impacting deployment speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11388273B2Achieving atomicity in a chain of microservices
Publication Date: 2022.07.12 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11388273B2 patent drawing
  • US11388273B2 patent drawing
  • US11388273B2 patent drawing

AI summary

An approach is provided in which a microservice fabric controller initiates a call flow that includes a set of transactions through a microservices chain that includes a set of microservices. The microservice fabric controller detects a transaction failure at one of the microservices that is positioned in the microservices chain subsequent to at least one successful microservice. In turn, the microservice fabric controller retries the transaction on the failed microservice without disrupting the previously successful microservice.