Gateway Module Routing for Stateful Enterprise Services

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional stateful enterprise services are inefficient for large-scale systems as they require network hits for each request, leading to overloading and delays, and scaling through replication or redesigning to statelessness is time-consuming and labor-intensive.

Innovation Solution

A gateway module is introduced to route messages based on user identifiers, eliminating the need for session replication and allowing existing stateful enterprise services to scale in a cloud environment without redesigning applications, by dynamically routing requests to appropriate instances.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If session replication is used to scale stateful enterprise services, then the system can serve more users, but replication time is consumed and synchronization delays occur

Engineering Contradiction:
Improvenumber of users servedVSAvoidreplication and synchronization time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent extracts the session management functionality from the enterprise application instances and places it in a dedicated session manager component. This separation allows instances to be stateless while the session manager maintains and manages session state independently, eliminating the need for session replication between instances and removing synchronization delays.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The session manager acts as an intermediary between the enterprise application instances and the session state. Instead of instances directly maintaining and replicating sessions, they communicate session information through the session manager, which handles storage, retrieval, and management centrally, thus avoiding replication overhead and synchronization issues.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If stateful enterprise applications are used, then existing applications can serve requests, but network hits are required for each request leading to overloading

Engineering Contradiction:
Improveability to serve requestsVSAvoidrequest handling efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The session state is extracted from the enterprise application instances and centralized in the session manager. This allows instances to be stateless, eliminating repeated network hits to retrieve session data from storage for each request, while maintaining the ability to serve requests through the session manager's centralized session management.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If redesign to stateless is performed, then scaling efficiency improves, but extensive redesign time and labor are required

Engineering Contradiction:
Improvescaling efficiencyVSAvoidredesign and implementation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The session manager serves as an intermediary that enables stateless instances without requiring redesign of existing enterprise applications. The session manager handles all session management operations, allowing existing stateful applications to continue functioning while benefiting from the scalability of stateless architecture through the added session manager component.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9621632B2Scaling of stateful enterprise services
Publication Date: 2017.04.11 ADOBE INC
  • US9621632B2 patent drawing
  • US9621632B2 patent drawing
  • US9621632B2 patent drawing

AI summary

In one embodiment, a method of scaling stateful enterprise services is provided. In this method, a request for data from an enterprise application is received. A user identifier is identified from the request, and an instance of the enterprise application that is associated with the user identifier is identified. The request is then routed to the identified instance of the enterprise application.