Microservice Configuration Recommendation System

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Users face challenges in allocating appropriate resources for a multitier microservice architecture, particularly in determining the optimal number of containers at different tiers to meet specific throughput and budget conditions, as existing solutions lack efficient configuration recommendation tools.

Innovation Solution

A system and method that allows users to specify conditions for a multitier microservice architecture, searches a configuration data store for matching configurations, and allocates resources through a cloud provider, providing identifiers for the allocated containers, enabling efficient resource allocation and management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If users manually determine and allocate container configurations for multitier microservice architecture, then they can control resource allocation, but it becomes difficult to meet specific throughput and budget conditions efficiently

Engineering Contradiction:
Improveconfiguration allocation efficiencyVSAvoiddifficulty in determining optimal container numbers
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system automatically searches the configuration data store and allocates containers based on user-specified conditions (throughput requirements, budget constraints) without requiring manual intervention. The container allocator autonomously queries available configurations, selects matching ones, and provisions containers across multiple tiers, enabling the system to serve itself rather than requiring expert manual configuration

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Configuration templates for different container tiers are pre-stored in the configuration data store with predefined resource specifications and performance characteristics. This preliminary preparation allows the system to quickly retrieve and allocate appropriate configurations when conditions are specified, avoiding the need to calculate optimal configurations from scratch during runtime

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If comprehensive configuration options are provided for multitier microservice architecture, then users can meet specific throughput and budget conditions, but the complexity of configuration management increases

Engineering Contradiction:
Improveability to meet throughput and budget conditionsVSAvoidconfiguration management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The container allocator acts as an intermediary between the user's high-level requirements (throughput conditions, budget constraints) and the detailed configuration options in the data store. It translates user conditions into configuration queries, automatically matches appropriate container configurations across tiers, and manages the allocation process, shielding users from the complexity of individual container configuration details

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The configuration data store is segmented into multiple tier-specific configurations (first tier containers, second tier containers, etc.), each with independent resource specifications. This segmentation allows the system to independently select and allocate appropriate configurations for each tier based on overall conditions, making the complex multi-tier configuration management more tractable through modular organization

Inventive Principle:
Principle #1Segmentation

3Productivity

If automated configuration allocation is implemented, then resource allocation efficiency improves, but integration with cloud providers and configuration management infrastructure is required

Engineering Contradiction:
Improveautomated configuration allocation speedVSAvoidsystem integration requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The container allocator is designed with multi-functional capabilities: it stores configuration templates, searches for matching configurations based on user conditions, manages container allocation across multiple cloud providers, and provides unified configuration management. This universal design consolidates multiple functions into a single system, reducing overall infrastructure complexity despite the automated allocation capabilities

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

Data Source

PatentUS11637889B2Configuration recommendation for a microservice architecture
Publication Date: 2023.04.25 RED HAT INC
  • US11637889B2 patent drawing
  • US11637889B2 patent drawing
  • US11637889B2 patent drawing

AI summary

An example method of providing a configuration for a multitier microservice architecture includes receiving a configuration request from a user for a configuration that satisfies a set of conditions in a cloud environment. The method also includes searching a configuration data store for the configuration that matches the set of conditions. The configuration specifies a first container and a second container, the first container sends a first communication to the second container, and the second container sends a second communication responsive to the first communication to the first container. The method further includes in response to finding the configuration that matches the set of conditions: sending an allocation request to a cloud provider for allocation of the configuration in the cloud environment and providing a first identifier (ID) that identifies the first container and a second ID that identifies the second container to the user.