Service discovery library in Rust?

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • raft-rs

    Raft distributed consensus algorithm implemented in Rust.

  • https://github.com/tikv/raft-rs probably gets you close. I seem to remember that the "gossip" protocol is helpful and not a part of Raft.

  • rust-mdns-discover

    A multicast DNS client in Rust

  • I guess you could look at mdns and multicast such as https://github.com/nervosnetwork/rust-mdns-discover that's how bonjour and printer/Chromecast/Spotify Connect and Sonos stuff works (I think?)

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • memberlist

    Golang package for gossip based membership and failure detection

  • serf uses memberlist which uses the SWIM failure detection protocol (https://www.cs.cornell.edu/projects/Quicksilver/public_pdfs/SWIM.pdf) with the Lifeguard extensions (https://arxiv.org/pdf/1707.00788.pdf).

  • spec

    A Specification for Generating Unique and Reproducible IP Addresses (by ipgen)

  • This is definitely not what you are looking for but I thought it might be interesting to mention my "service determination" (opposite of service discovery but trying to achieve the same goal) toy as well :) Five years ago, I wrote the IPGen Spec (https://github.com/ipgen/spec) which outlines a way to generate unique and reproducible IP addresses in a stateless manner. Naturally, it can be used for service discovery.

  • rust

    Official implementation of the IPGen Spec in Rust (by ipgen)

  • It comes with Rust (https://github.com/ipgen/rust) and Go (https://github.com/ipgen/go) reference implementations. It also has a command line tool written in Rust (https://github.com/ipgen/cli).

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts