Microservice Memory Data Sharing via Direct Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems that rely on Redis clusters for real-time data sharing in microservice architectures face increased system complexity, operational burden, and decreased efficiency due to serialization, deserialization, and data transmission processes.

Innovation Solution

A method and apparatus for sharing microservice application data that involves managing memory data registration information, determining required memory data, partitioning and distributing data to memory computation service nodes, and loading data in a preset manner for real-time sharing without relying on a Redis cluster.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a Redis cluster is used for real-time data sharing, then data sharing capability is achieved, but system complexity increases

Engineering Contradiction:
Improvedata sharing capabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the data sharing function from the Redis cluster dependency and implements it through direct memory mapping and file-based communication between microservices. This eliminates the need for centralized caching infrastructure while maintaining real-time data access capabilities.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Each microservice manages its own data storage and retrieval through local memory mapping and file operations, rather than relying on a centralized Redis cluster. This self-contained approach reduces system complexity by eliminating the need for external cache management infrastructure.

Inventive Principle:
Principle #25Self-service

2Productivity

If data is accessed through Redis cluster, then real-time data sharing is enabled, but operational burden increases

Engineering Contradiction:
Improvereal-time data sharing efficiencyVSAvoidoperational burden
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

Microservices perform data operations independently through local memory mapping and file I/O operations, eliminating the need for centralized Redis cluster management. This self-service approach reduces operational burden by removing the need for cache administration, monitoring, and maintenance.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent removes the Redis cluster from the architecture and replaces it with direct file-based communication and memory mapping mechanisms. This extraction eliminates the operational complexity associated with managing a distributed caching system while preserving real-time data access functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If data is serialized and transmitted through Redis, then data sharing is achieved, but system efficiency decreases

Engineering Contradiction:
Improvedata sharing functionalityVSAvoidsystem efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent replaces the mechanical serialization/deserialization process required by Redis with direct memory mapping and file-based data access. This substitution eliminates the overhead of data format conversion and network serialization, significantly improving system efficiency.

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

Solution Approach 2:

The patent extracts the data transmission step from the Redis communication pipeline and implements direct inter-process memory access through shared memory segments and file mapping. This extraction eliminates the serialization and network transmission overhead, improving efficiency while maintaining data sharing functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

4Ease of manufacture

If data is extracted to local computer for processing, then data processing capability is achieved, but system performance is degraded

Engineering Contradiction:
Improvedata processing capabilityVSAvoidsystem performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent introduces memory-mapped files and shared memory segments as intermediaries between microservices and data storage. This intermediary layer eliminates the need to extract data to local computer memory, allowing direct in-memory processing and significantly improving system performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the mechanical data extraction process with direct memory mapping and file-based data access. This substitution eliminates the copy-and-process cycle, allowing services to process data directly in their memory space without extracting to local disk, thereby improving performance while maintaining processing capability.

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

Data Source

PatentUS12236290B2Method, apparatus and device for sharing microservice application data
Publication Date: 2025.02.25 INSPUR GENERSOFT CO LTD
  • US12236290B2 patent drawing
  • US12236290B2 patent drawing
  • US12236290B2 patent drawing

AI summary

The disclosure relates to a method, apparatus and device for sharing microservice application data. The method includes: managing, through data registration management, memory data registration information that is to be loaded by microservice application clusters; determining, according to the memory data registration information, memory data that are required by the microservice application clusters; partitioning and distributing the memory data to a plurality of memory computation service nodes in the microservice application clusters, and deploying the plurality of memory computation service nodes into a corresponding microservice application cluster at a proximal end; and loading the memory data in a preset manner in the plurality of memory computation service nodes, and sharing a corresponding memory computation service node in real time under the condition that the memory data change.