Exchanging data between apps
Last updated
Was this helpful?
Last updated
Was this helpful?
The FLECS Service Mesh is a key component in our industrial automation solutions, designed to enable seamless, efficient inter-app communication. It solves the traditional silo problem by providing a real-time communication layer based on Zenoh, optimized for high-throughput, low-latency industrial environments.
Historically, applications operated in isolation, complicating system integration and slowing down processes. By introducing the Service Mesh, FLECS provides a backbone for real-time data exchange and system orchestration.
FLECS uses , an open-source protocol, to power the Service Mesh with Pub/Sub, Store, Query, and Compute features. This lean, fast, and flexible architecture is particularly well-suited for industrial applications.
System Apps No Longer Installed by Default:
As of FLECS 3.x, tech.flecs.mqtt-bridge
and tech.flecs.service-mesh
are no longer included by default. Install them via the App Marketplace in the FLECS WebApp.
Manual Maintenance Required Post-Upgrade: When upgrading from previous versions, these apps must be uninstalled and reinstalled manually if needed.
The FLECS Service Mesh, uses a Pub/Sub mechanism for efficient data transfer across various protocols. Itโs designed for low latency, high throughput, and minimal memory footprint, making it suitable for industrial applications requiring speed and reliability.
It's important to note that you need to install the Service Mesh and MQTT Bridge apps via the marketplace on your devices to utilize these functionalities. This step is crucial for enabling the full scope of features offered by the Service Mesh and ensuring efficient communication across your automation systems.
Configuring communication channels within the FLECS Service Mesh is crucial for optimal performance. Depending on your system's requirements and the nature of the apps you are using, there are two main options:
Direct Connection via C or C++ Interface:
Pre-configured in Some Apps: It's important to note that some apps provided by vendors already include this direct connection option as a default feature. In such cases, users need not worry about setup complexities โ the app comes ready to integrate seamlessly with the Service Mesh for maximum performance.
Integration via Mosquitto MQTT Broker and FLECS MQTT Bridge:
If you're integrating with an existing MQTT infrastructure, use the FLECS MQTT Bridge to connect to the 'flecs-mqtt' server through the standard MQTT port 1883 (non-encrypted communication).
This option is ideal for environments where MQTT is already in use, ensuring a smooth integration process while maintaining effective data exchange capabilities.
By choosing the appropriate communication setup, you can leverage the full capabilities of the FLECS Service Mesh, ensuring your automation system operates efficiently and reliably.
While FLECS does not claim hard real-time performance, the Service Mesh is optimized for deterministic behavior with latencies in the range of 35โ45ยตs using the flunder client.
To support developers building native integrations:
This guide shows how to:
Initialize a flunder
client
Use structured messaging
Measure and optimize latency
Build real-time industrial apps using Zenoh
Customize and extend with semantic topics and security
Contact us for whitepapers and advanced benchmark results
Ensure your devices are . The Service Mesh integrates seamlessly into the existing FLECS architecture, providing a unified layer for communication.
For the highest level of performance, particularly in scenarios demanding rapid data transfer and minimal latency, a direct connection using our C or C++ interfaces is recommended. Use the flunder
client for highest performance.
๐
For custom implementations or to understand how this integration works, refer to our GitHub repository for practical examples: .
๐ Visit
Try the