Global Session Pool for Stateless Content Management Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In stateless content management systems, the frequent creation and destruction of session managers and their associated session pools lead to the loss of object caches, forcing subsequent requests to perform expensive backend fetches for data that was previously cached, as each request requires re-retrieval of objects due to the lack of persistent caching across requests.

Innovation Solution

Implementing a global session pool shared among session managers, where sessions and object caches persist even after individual session managers terminate, allowing subsequent requests to utilize cached data without re-fetching from the backend.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a session manager and session pool are created for each request in a stateless content management system, then the system maintains stateless architecture and simplicity, but object caches are lost after each request forcing expensive backend fetches

Engineering Contradiction:
Improvesession manager structureVSAvoiddata access efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent merges the session pool and object cache from individual session managers into a shared global session pool that persists across multiple requests. This allows object caches to be retained and reused by different session managers, eliminating the need to re-fetch data from the backend while maintaining the stateless architecture of individual requests.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The global session pool serves multiple functions: it acts as a session manager for individual requests while simultaneously providing persistent object caching across requests. This multi-functional design allows the system to maintain stateless request handling while benefiting from cached data reuse, improving data access efficiency without increasing individual request complexity.

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

2Reliability

If sessions are released after each request in stateless mode, then the system maintains clean state between requests, but cached objects are removed requiring re-retrieval from backend

Engineering Contradiction:
Improvestate management consistencyVSAvoiddata re-fetch time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by caching objects in the global session pool before they are needed by subsequent requests. Objects are retrieved and cached in advance, so when future requests need the same objects, they can be served from the cache without requiring time-consuming backend fetches, while still maintaining proper state management.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The global session pool acts as an intermediary between the backend repository and individual session managers. It mediates data access by intercepting requests for cached objects and serving them from the global cache, reducing the need for direct backend access and eliminating re-fetch time while maintaining stateless request handling.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If object caches are associated with individual session managers, then each session has its own cache, but the cache is destroyed when the session manager terminates

Engineering Contradiction:
Improvesession independenceVSAvoidcached object data
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent transitions from a single-dimensional cache model (cache tied to individual session manager lifecycle) to a multi-dimensional model where a global session pool provides persistent caching across multiple session managers. This dimensional change allows cached data to persist beyond individual session manager boundaries while maintaining session independence for request handling.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9853912B2Stateless services in content management clients
Publication Date: 2017.12.26 OPEN TEXT CORP
  • US9853912B2 patent drawing
  • US9853912B2 patent drawing
  • US9853912B2 patent drawing

AI summary

Techniques to provide stateless services in a content management client are disclosed. A session manager is instantiated to service a request to access a content item. The session manager is used to obtain from a global session pool that is not specific to the session manager a session to service the request. The session is used to service the request. Once the request has been completed the session manager may be terminated, but the global session pool and associated object cache remain.