Shared-Memory RPC for Low-Latency Edge Process Communication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing remote procedure call (RPC) mechanisms face inefficiencies and latency issues in inter-process communication on the same machine, particularly in cross-region or cross-network environments, leading to performance degradation and network instability problems.
Innovation Solution
A method utilizing a shared memory for inter-process communication between processes on the same machine, enabling efficient and reliable data exchange by writing and reading messages with message types and method identifiers, and employing error detection mechanisms to ensure accurate data processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If RPC mechanisms rely on network communication (HTTP/TCP), then inter-process communication can be achieved, but communication latency and overhead increase significantly
Solution Approach 1:
The patent introduces a shared memory as an intermediary mechanism between processes. Instead of using network communication protocols (HTTP/TCP) that introduce latency, processes communicate by writing to and reading from a shared memory space, eliminating network overhead while maintaining communication reliability through structured message passing with type checking and error detection.
2Adaptability or versatility
If network calls are used for RPC communication, then processes can interact across different machines, but communication efficiency decreases due to latency and network instability
Solution Approach 1:
The patent optimizes communication by using shared memory for local inter-process communication where both processes reside on the same machine. This local communication approach provides high efficiency and speed, while the system maintains adaptability by allowing configuration of different communication modes (shared memory vs. network RPC) based on whether processes are local or remote.
3Reliability
If RPC mechanisms handle various network failures, then communication robustness improves, but system complexity and resource consumption increase
Solution Approach 1:
The patent extracts and handles only the essential error cases relevant to shared memory communication (memory access errors, message format errors, process identification errors) rather than implementing comprehensive network failure handling. This reduces system complexity by focusing on the specific error types that occur in the shared memory communication model while maintaining sufficient robustness for the intended use case.
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
Provided are a method for processing human-machine-environment data, an edge computing device and system and a storage medium. According to the method, the first process writes the first message into the first memory, and reads the second message from the first memory to obtain the message type and the method identifier that are carried in the second message after detecting that the second message is written into the first memory. When the value of the message type carried in the second message is a response, and the method identifier carried in the second message matches the identifier of the method that the first process requests to call, the first process determines that the second message is a response message of the first message, and then processes the second message, thereby realizing efficient and reliable inter-process communication on the same machine, and reducing the communication latency and resource consumption.