XMQ
XMQ are lightweight, self-healing, frictionless messaging Agents that send and receive data using a .Net implementation of the open-source Zero MQ library.
The Agents form a resilient network where each object can assume the server role, making it capable of self-healing if one Agent disconnects.
If the Stream Hosts are not in the same environment, you should opt to use an external router in stead.
They are useful in several scenarios:
Stream within a stream You could have one Data Stream that performs pre-processing and then passes it off to several other Data Streams for further processing - rather than duplicating the pre-processing logic.
Interact with a Jupyter Notebook You could include data from a Jupyter Notebook in your Data Stream. You could send live data from your Data Stream to a Jupyter Notebook.
Because any Stream Object using these Agents can assume the server role, changing the authentication settings must be performed carefully.
A Stream Object with old or incorrect settings may take the server role and reject connections from ones with correct settings.
Although our examples use manually entered values for simplicity, we recommend always using variables for the authentication settings.
The Listener allows you to subscribe to other XMQ Action Agents for data they have published.
The Action Agent allows you to publish data to other XMQ Agents - and subscribe to topics like the Listener.
Pre-requisites
When using Agents as the local router, to facilitate self-healing the linked Agents must connect to a port on the same machine as it is running - i.e. a port on the 127.0.0.1 address
When using an external ZeroMQ router, it must be accessible by the Stream Host
To interact with a Jupyter Notebook, the Notebook must be accessible by the Stream Host
Current Version
XMQ Listener Release Notes
v1.04, 20 May 2024
Support using an external router as the server (new Enable Local Router property)
Fixed high CPU usage
v1.01, 08 Apr 2024
Fixed concurrent access exception
v1.0, 22 Dec 2023
Initial Release
XMQ Action Agent Release Notes
v1.04, 20 May 2024
Support using an external router as the server (new Enable Local Router property)
Fixed high CPU usage
v1.01, 08 Apr 2024
Fixed concurrent access exception
v1.0, 22 Dec 2023
Initial Release
Last updated