Hemera-nsq package
This is a plugin to use NSQ with Hemera.
NSQ promotes distributed and decentralized topologies without single points of failure, enabling fault tolerance and high availability coupled with a reliable message delivery guarantee. It is complementary to the primary NATS transport system.
The client use JSON to transfer data.
Start NSQ with Docker
How does it work with NATS and Hemera
We use a seperate topic for each NSQ Topic/Channels because with that you can listen in every hemera service for events. Every message will be forwarded to the NATS subscriber. As you can see NSQ give you new possibilities how to distribute your data but without lossing the benefits of nats-hemera with regard to load balancing and service-discovery.
Install
npm i hemera-nsq --save
Example
hemera hemera
Requirements
- node >=6.0.0 - Due to the rewrite of the nsqjs module only Node >= 6 is supported.
Interface
publish
The pattern is:
topic
: is the service name to publish tonsq
cmd
: is the command to executepublish
subject
: the name of the NSQ topicstring
data
: the data to transferobject
Example:
hemera
Create subscriber
The pattern is:
topic
: is the service name to publish tonsq
cmd
: is the command to executesubscribe
subject
: the name of the NSQ topicstring
channel
: the name of the NSQ channelstring
Example:
hemera
Consume events
The pattern is:
topic
: is a combination of the subject and channel namensq.<subject>.<channel>
cmd
: is the command to executesubscribe
Example:
hemera