Self-Orchestrated Canary Release Deployment in API Gateway

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional API gateway architectures rely on centralized release orchestration tools for updating API gateways, which are inefficient, fragile, and require manual processing, leading to delayed and batched deployments, increased error rates, and reduced API service availability.

Innovation Solution

A self-orchestrated canary release deployment system within the API gateway architecture using a message broker that employs a point-to-point messaging model for initial updates and a publish-and-subscribe model for subsequent deployments, allowing for real-time, decentralized, and efficient updates without requiring API gateways to be taken offline.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a centralized release orchestration tool is used to update API gateways, then deployment control is centralized, but deployment efficiency is reduced and manual processing is required

Engineering Contradiction:
Improvedeployment controlVSAvoiddeployment efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The API gateway nodes automatically perform self-updates by pulling configuration updates from the message broker without requiring centralized orchestration or manual intervention. Each node independently manages its own update process, eliminating the need for centralized deployment control while maintaining system reliability through automated self-service mechanisms.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The release orchestration function is extracted from the centralized tool and distributed to individual API gateway nodes. Each node independently receives and processes update messages from the message broker, removing the dependency on centralized orchestration and enabling parallel autonomous updates across all nodes.

Inventive Principle:
Principle #2Taking out (Extraction)

2Use of energy by moving object

If updates are batch deployed once a day, then resource usage is reduced, but service availability is reduced and deployment is fragile

Engineering Contradiction:
Improveresource usageVSAvoidservice availability
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The system enables continuous real-time deployment of updates to API gateway nodes without batching. The message broker continuously distributes update messages to nodes as they become available, maintaining constant service availability while efficiently utilizing resources through on-demand update processing rather than periodic batch operations.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The update deployment process becomes dynamic and adaptive, with nodes automatically pulling updates when ready and the system adjusting deployment pace based on real-time node availability and health status. This dynamic approach replaces static daily batching with flexible continuous deployment that optimizes both resource usage and service availability.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If a centralized release orchestration tool is used, then deployment coordination is simplified, but the system becomes fragile and requires manual monitoring

Engineering Contradiction:
Improvedeployment coordinationVSAvoidsystem fragility
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The centralized deployment coordination is segmented and distributed to individual API gateway nodes. Each node independently processes update messages from the message broker and manages its own update state, eliminating the single point of failure represented by the centralized orchestration tool while maintaining coordination through standardized message protocols.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements automated feedback mechanisms where nodes report their update status and health metrics to the message broker, which automatically adjusts deployment based on real-time system state. This feedback-driven approach replaces manual monitoring with automated self-healing and adaptive coordination, reducing system fragility.

Inventive Principle:
Principle #23Feedback

4Measurement precision

If manual processing is used to monitor deployment, then control is precise, but time consumption increases and automation is reduced

Engineering Contradiction:
Improvedeployment monitoring precisionVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

API gateway nodes automatically monitor and report their own deployment status, health metrics, and update completion state without requiring manual intervention. This self-monitoring capability maintains precise deployment tracking while eliminating the time consumption associated with manual monitoring processes.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Manual monitoring processes are replaced with automated electronic monitoring and reporting mechanisms. Nodes continuously report their state through standardized interfaces, and the message broker automatically processes this information, substituting manual mechanical monitoring with automated digital systems that provide equal or superior precision without time loss.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS10735262B1System and method for self-orchestrated canary release deployment within an API gateway architecture
Publication Date: 2020.08.04 INTUIT INC
  • US10735262B1 patent drawing
  • US10735262B1 patent drawing
  • US10735262B1 patent drawing

AI summary

API gateways are updated utilizing canary release deployment in which a message broker delivers update messages to the API gateways first using a point-to-point messaging model and then a publish-and-subscribe messaging model. All the API gateways are capable of receiving point-to-point messages and publish-and-subscribe messages. First, a canary API gateway receives an update message from a message queue of the message broker and deploys the associated update on the canary API gateway. If deployment of the update is successful, then non-canary API gateways receive the update message from a message topic of the message broker and deploy the associated update on the non-canary API gateways.