alisinabh/yasd
Yet Another Service Discovery, But Simple.
51
Yet Another Service Discovery
YASD is a simple service discovery mainly for connecting Erlang nodes. YASD only registers nodes of a service in-memory and does not need any persistent storage as nodes should constantly inform YASD about their health.
YASD also supports tags on nodes so nodes with specific tags can be queried.
The datastore is a simple GenServer.
You can register your nodes by calling this method. Note that the service_name
and ip
params
are mandatory.
If successful this method returns a HTTP 204
status code without any content.
You can list registered nodes in a service by calling this method.
Response (application/json)
["192.168.1.1", "192.168.1.2"]
You can list all registered services by calling this method. Note that even services with 0 nodes will be returned.
Response (application/json)
["service1", "service2"]
Primarily you should use YASD docker image to run YASD in environment of your choice.
# This will run YASD on port 4001
docker run -d -p4001:4001 alisinabh/yasd
PORT
: Port to run YASD web server on. (default: 4001)JANITOR_SWEEP_INTERVAL
: Amount of time to run janitor on services in seconds. (default: 30)HEARTBEAT_TIMEOUT
: Amount of time which a node is considered dead afterwards in seconds. (default: 90)docker pull alisinabh/yasd