haypi-redis-discovery v1.1.1
#Haypi Redis Service Disovery Module
This is a package allowing for discovery of haypi instances using Redis pub/sub.
Here's how to use it:
In your Haypi initialization:
let redisDiscovery = require('haypi-redis-discovery')
let actions = haypi.discovery(redisDiscovery, config)The config object takes one option specific to haypi-redis-discovery, channel which is the pub/sub channel your service will communicate on.
Calling discovery successfully automatically makes the following haypi methods available:
serviceRequest: Make an HTTP request to a connected service.
connectedServices: See all connected services.
The discovery interface returns an object with 3 functions relative to service discovery. You do not need to ever call these manually for service discovery to fully function. Only use these for custom behaviors.
services: Lists the connected services.
announce: Announces the service on the initialized channel.
remove: Broadcasts the exit of the service.
The discovery interface emits three events using's haypi's built in events:
announce: The service has announced itself.
connection: A service has connected.
disconnect: A service has disconnected.
#Using haypi.serviceRequest
Example:
haypi.serviceRequest("some-other-service-name")
.get("/path/to/route")
.then((body, meta) => {
})
.catch(err => {
})haypi.serviceRequest("some-service")
.post("/path", {
headers: {
},
body: data
})
.then((body, meta) => {
})
.catch(err => {
})