Microservice Client Aggregation for OPC UA Server Scalability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modern distributed control systems face scalability issues due to numerous OPC UA clients simultaneously accessing data from servers, leading to server overload and performance degradation in microservice architectures.
Innovation Solution
A data exchange system with a microservice client aggregator that aggregates common stateful connections and subscriptions across multiple clients, reducing the number of individual requests to servers by consolidating communication through a single request for multiple clients.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If numerous OPC UA clients simultaneously access data from servers, then data exchange functionality is provided, but server load increases and performance degrades
Solution Approach 1:
The patent applies the merging principle by introducing a client aggregator that consolidates multiple client connections into a single connection to the OPC UA server. The aggregator combines stateful connections and subscriptions from multiple microservice clients, allowing them to share common data access paths. This reduces the number of simultaneous server connections from numerous individual clients to a single aggregated connection, thereby reducing server load while maintaining data exchange functionality for all clients.
Solution Approach 2:
The patent applies the intermediary principle by positioning the client aggregator as a mediator between microservice clients and the OPC UA server. The aggregator receives data requests from multiple clients, aggregates them into unified requests, and forwards them to the server. It also aggregates server responses and distributes them to appropriate clients. This intermediary layer isolates clients from direct server connections, enabling load reduction while preserving data exchange capabilities.
2Adaptability or versatility
If multiple microservice clients establish independent connections to servers, then each client can access data independently, but the number of connections increases server overhead
Solution Approach 1:
The patent merges multiple independent client connections into a single aggregated connection managed by the client aggregator. The aggregator maintains internal tracking of which clients are associated with which data paths, allowing it to distribute responses appropriately. This combining approach reduces connection management complexity from handling numerous individual connections to managing a single aggregated connection, while clients retain independent data access capability through the aggregator's internal routing mechanisms.
3Duration of action of stationary object
If stateful connections are maintained for each client, then connection state is preserved for future use, but the number of stateful connections increases server resource consumption
Solution Approach 1:
The patent merges multiple stateful connections into a single stateful connection at the server level. The client aggregator maintains stateful connections to the server on behalf of multiple clients, and the server only needs to maintain one stateful connection instead of numerous individual ones. The aggregator internally tracks client associations and manages state information, allowing it to preserve connection state for future use while reducing the quantity of stateful connections from many to one.
Data Source
AI summary
A data exchange system includes a first layer including a set of microservice clients, a second layer comprising at least one microservice client aggregator that aggregates common stateful connections and/or common subscriptions from the microservice clients, and a third layer comprising at least one server, at least one microservice client aggregator in the second layer is configured to be in communication with at least one server in the third layer, wherein, at least one microservice client aggregator is/are configured to provide, to at least one server, aggregated common stateful connections and/or aggregated common subscriptions that are associated with more than one microservice client, and to provide collected data to the microservice clients according to the aggregated common stateful connections and/or aggregated common subscriptions.


