awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
hashicorp avatar

hashicorp/serf

0
View on GitHub↗
6,058 stars·607 forks·Go·MPL-2.0·5 vuesgithub.com/hashicorp/serf/blob/master/docs/index.html.markdown↗

Serf

Serf is a decentralized cluster coordination tool that manages node membership, failure detection, and event broadcasting across a distributed system without a central coordinator. Every node runs an identical agent process that independently handles membership, health monitoring, and event propagation through a peer-to-peer gossip protocol, creating a leaderless architecture where no single point of failure exists.

The project implements the SWIM failure detection algorithm, where each node monitors a small random subset of peers to detect unreachable or failed nodes in real time. Custom user events, such as deployment notifications or configuration changes, propagate across the cluster by piggybacking on existing gossip messages for efficient dissemination. Nodes join the cluster by specifying a single known member, with the gossip protocol automatically propagating membership information to all other nodes.

Serf provides real-time cluster topology queries from any agent's perspective, returning the set of alive and known nodes with their addresses and status. The compact binary wire format encodes membership updates, pings, and events for efficient parsing and transmission between agents over lightweight UDP datagrams.

Features

  • Cluster Membership Tools - Provides decentralized cluster membership and failure detection via a gossip protocol without a central coordinator.
  • Custom Event Broadcasting - Broadcasts custom events like deploys or configuration changes across all cluster nodes using the gossip protocol.
  • Gossip Protocols - Exchanges membership information through a peer-to-peer gossip protocol that converges on a consistent cluster view.
  • Gossip Cluster Joiners - Connects a new agent to a running cluster by pointing it to at least one known member and letting gossip handle the rest.
  • Gossip-Based Node Discoveries - Joins new nodes to an existing cluster by specifying one known member and letting gossip propagate membership.
  • Decentralized Orchestrators - Orchestrates distributed services with automatic node discovery, health monitoring, and event propagation through peer-to-peer communication.
  • Leaderless Service Orchestrations - Orchestrates distributed services with automatic node discovery, health monitoring, and event propagation without a leader.
  • Identical Agent Processes - Implements a leaderless architecture where every node runs an identical agent process for cluster coordination.
  • Cluster and Service Orchestration - Orchestrates distributed services with automatic node discovery, health monitoring, and event propagation.
  • Failure Detection Systems - Detects unreachable or failed nodes in real time by monitoring health through a gossip-based SWIM algorithm.
  • Distributed Systems Coordination - Coordinates distributed system nodes through gossip-based communication for resilience and scalability without single points of failure.
  • Node Failure Detection - Detects unreachable or terminated nodes by monitoring cluster members through a gossip protocol and notifying the cluster.
  • SWIM Failure Detectors - Implements the SWIM failure detection algorithm where each node monitors a random subset of peers in real time.
  • Traversal Event Propagation - Broadcasts custom events like deploys or configuration changes to all cluster members using the gossip protocol.
  • Cluster Member Status and Information Listing - Queries the current set of alive and known nodes from any agent's perspective to see all cluster members.
  • Cluster Membership Coordination - Lists all active nodes in the cluster along with their addresses and status to show the current cluster topology.
  • Unreliable Datagram Transports - Uses lightweight unreliable UDP datagrams to carry gossip and failure detection messages with minimal latency.
  • Cluster Wire Formats - Ships a compact binary wire format for encoding membership updates, pings, and events between agents.
  • Microservices - Service orchestration tool.
  • Orchestration and Management - Decentralized service orchestration and cluster management.
  • Workload Orchestration and Scheduling - Service orchestration and management tool.

Historique des stars

Graphique de l'historique des stars pour hashicorp/serfGraphique de l'historique des stars pour hashicorp/serf

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Questions fréquentes

Que fait hashicorp/serf ?

Serf is a decentralized cluster coordination tool that manages node membership, failure detection, and event broadcasting across a distributed system without a central coordinator. Every node runs an identical agent process that independently handles membership, health monitoring, and event propagation through a peer-to-peer gossip protocol, creating a leaderless architecture where no single point of failure exists.

Quelles sont les fonctionnalités principales de hashicorp/serf ?

Les fonctionnalités principales de hashicorp/serf sont : Cluster Membership Tools, Custom Event Broadcasting, Gossip Protocols, Gossip Cluster Joiners, Gossip-Based Node Discoveries, Decentralized Orchestrators, Leaderless Service Orchestrations, Identical Agent Processes.

Quelles sont les alternatives open-source à hashicorp/serf ?

Les alternatives open-source à hashicorp/serf incluent : hashicorp/memberlist — Memberlist is a Go library used for maintaining distributed cluster membership and failure detection via a… akkadotnet/akka.net — Akka.NET is an actor model framework used for building concurrent and distributed applications. It functions as a… akka/akka-core — Akka Core is an actor model framework and asynchronous concurrency library used for building scalable and resilient… cortexproject/cortex — Cortex is an open-source, horizontally scalable metrics platform that ingests, stores, and queries… vonng/ddia — This project serves as a comprehensive technical reference for the architecture and design of data-intensive… apachecn/interview — This project is a comprehensive knowledge base and study resource designed for mastering technical interviews. It…

Alternatives open source à Serf

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Serf.
  • hashicorp/memberlistAvatar de hashicorp

    hashicorp/memberlist

    4,068Voir sur GitHub↗

    Memberlist is a Go library used for maintaining distributed cluster membership and failure detection via a peer-to-peer gossip protocol. It functions as a cluster state synchronizer, allowing nodes to track active members and propagate metadata without a central coordinator. The library implements a secure gossip mechanism using AES-GCM encryption to protect inter-node communication and membership data. It distinguishes its failure detection through a suspicion-based model and adaptive timeout scaling, which reduces false positives caused by transient network latency. The project provides ca

    Go
    Voir sur GitHub↗4,068
  • akkadotnet/akka.netAvatar de akkadotnet

    akkadotnet/akka.net

    5,023Voir sur GitHub↗

    Akka.NET is an actor model framework used for building concurrent and distributed applications. It functions as a distributed computing platform and state manager that enables isolated actors to communicate via asynchronous message passing, ensuring thread-safe state management without manual locks. The project is distinguished by its decentralized coordination capabilities, including a distributed state manager that uses sharding and dynamic rebalancing to maintain high availability. It incorporates an event sourcing engine that persists state as a sequence of events in an append-only log an

    C#actoractor-modelakka
    Voir sur GitHub↗5,023
  • akka/akka-coreAvatar de akka

    akka/akka-core

    13,272Voir sur GitHub↗

    Akka Core is an actor model framework and asynchronous concurrency library used for building scalable and resilient distributed systems. It provides a distributed computing platform and fault tolerant runtime that manages communication and state across networked nodes. The system uses location-transparent messaging and a cluster management system to organize nodes into high-availability architectures. This allows for the creation of elastic clusters that scale resources on demand and coordinate distributed workloads. The platform handles concurrent state management and distributed systems or

    Scala
    Voir sur GitHub↗13,272
  • cortexproject/cortexAvatar de cortexproject

    cortexproject/cortex

    5,751Voir sur GitHub↗

    Cortex is an open-source, horizontally scalable metrics platform that ingests, stores, and queries Prometheus-compatible time-series data with multi-tenant isolation. It accepts metrics via Prometheus remote write and OpenTelemetry, executes PromQL queries against both recent and historical data, and provides a Prometheus-compatible alerting and recording rule engine with an integrated Alertmanager. The system is built as a set of independently scalable microservices that use hash-ring-based sharding, gossip-based cluster membership, and tenant-aware object storage to distribute workloads acro

    Gocncfhacktoberfestkubernetes
    Voir sur GitHub↗5,751
Voir les 30 alternatives à Serf→