Implements a basic peer discovery protocol. This will allow services to maintain lists of other available GA4GH services. Adding a peer is optional.
This is done by adding three endpoints:
peers/list - a service responds with a list of accepted peers
announce - receives a message to notify a service about a possible peer
info - presents protocol version and other information about a service to evaluating a possible peer
This protocol is designed to be easy to implement with little cost overhead. Peers do not exchange any genomic data over the peer service, only metadata about the protocol version they present.
This would open up a number of features in network design and query federation, the first of which is being able to use a client to build a map of GA4GH network services by crawling peers.
Implements a basic peer discovery protocol. This will allow services to maintain lists of other available GA4GH services. Adding a peer is optional.
This is done by adding three endpoints:
This protocol is designed to be easy to implement with little cost overhead. Peers do not exchange any genomic data over the peer service, only metadata about the protocol version they present.
This would open up a number of features in network design and query federation, the first of which is being able to use a client to build a map of GA4GH network services by crawling peers.
Close #760