awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

85 Repos

Awesome GitHub RepositoriesDistributed Systems

Frameworks and tools for building scalable, fault-tolerant microservices.

Explore 85 awesome GitHub repositories matching part of an awesome list · Distributed Systems. Refine with filters or upvote what's useful.

Awesome Distributed Systems GitHub Repositories

Finde die besten Repos mit KI.Wir suchen mit KI nach den am besten passenden Repositories.
  • binhnguyennus/awesome-scalabilityAvatar von binhnguyennus

    binhnguyennus/awesome-scalability

    71,779Auf GitHub ansehen↗

    This project is a curated knowledge repository that aggregates high-quality resources, technical documentation, and expert insights focused on distributed systems engineering. It serves as a community-driven learning resource designed to help developers navigate the complexities of building and maintaining large-scale software applications. The repository distinguishes itself through a hierarchical taxonomy that organizes vast amounts of technical information into a structured, searchable format. By utilizing markdown-based content curation and static indexing, the collection remains version-

    Guides and resources for building highly scalable software systems.

    architectureawesomeawesome-list
    Auf GitHub ansehen↗71,779
  • coreos/etcdAvatar von coreos

    coreos/etcd

    51,846Auf GitHub ansehen↗

    etcd is a distributed key-value store and configuration store designed to maintain a consistent set of data across a cluster of nodes. It functions as a reliable registry for storing and synchronizing critical settings and metadata used by distributed applications. The system implements the Raft consensus algorithm to ensure data consistency and leader election across servers. To protect data transfers and verify node identities, it utilizes a network security layer based on mutual TLS and client certificates. Its capabilities cover distributed configuration management, cluster state synchro

    Raft consensus protocol implementation.

    Go
    Auf GitHub ansehen↗51,846
  • tal-tech/go-zeroAvatar von tal-tech

    tal-tech/go-zero

    33,103Auf GitHub ansehen↗

    go-zero is a toolkit for building cloud-native distributed services in Go. It functions as a microservices framework that provides built-in support for RPC, web APIs, and service discovery. The project includes a microservices code generator that produces production-ready server and client boilerplate from API descriptions. This automation is supported by a domain-specific language and pattern libraries designed to ensure compatibility with AI assistants. The framework incorporates a resilience suite for distributed system reliability, utilizing adaptive circuit breakers, rate limiting, and

    Web and RPC framework for high-load sites.

    Go
    Auf GitHub ansehen↗33,103
  • zeromicro/go-zeroAvatar von zeromicro

    zeromicro/go-zero

    33,102Auf GitHub ansehen↗

    This project is a comprehensive microservices development framework designed to build scalable, resilient backend systems. It provides a production-ready runtime that integrates stability patterns directly into the service architecture, ensuring consistent performance and reliability for both web and remote procedure call services even under heavy traffic conditions. The framework centers on an interface-first development model, utilizing a domain-specific language to define service contracts that serve as the single source of truth. This approach powers an extensive code generation ecosystem

    Listed in the “Distributed Systems” section of the Awesome Go awesome list.

    Goai-nativeai-native-developmentcloud-native
    Auf GitHub ansehen↗33,102
  • go-kit/kitAvatar von go-kit

    go-kit/kit

    27,430Auf GitHub ansehen↗

    Kit is a microservices architectural framework and toolkit for Go. It provides a set of standardized primitives and abstractions for implementing service, endpoint, and transport layers in a decoupled manner. The framework focuses on system instrumentation through integrated distributed request tracing and a service instrumentation toolkit that utilizes counters and gauges to export performance data to external monitoring backends. It includes a structured logging library that records system events as key-value pairs to ensure compatibility with log aggregation tools. The project covers a br

    Toolkit for building microservices with service discovery and load balancing.

    Gogogolangmetallica
    Auf GitHub ansehen↗27,430
  • go-kratos/kratosAvatar von go-kratos

    go-kratos/kratos

    25,743Auf GitHub ansehen↗

    Kratos is a toolkit for building cloud-native microservices in Go. It provides a comprehensive suite of framework primitives, including a dedicated toolset for API-first development using Protobuf to generate server and client code for gRPC and HTTP. The project is distinguished by its pluggable service infrastructure, which allows for the swapping of configuration stores, service registries, and data encoding formats. It utilizes a composable middleware pipeline to inject cross-cutting concerns such as authentication, request validation, and circuit breaking into the service flow. The frame

    Modular microservices framework.

    Goaiarchitecturecloud-native
    Auf GitHub ansehen↗25,743
  • grpc/grpc-goAvatar von grpc

    grpc/grpc-go

    22,962Auf GitHub ansehen↗

    grpc-go is a Go language implementation of the gRPC framework, providing a remote procedure call library for high-performance service communication. It uses the HTTP/2 protocol to execute functions on remote servers as if they were local methods and utilizes protobuf service bindings to generate type-safe client and server code. The project features a bidirectional streaming transport that supports asynchronous, full-duplex message streams between clients and servers. This networking layer allows for various communication patterns, including client-to-server and server-to-client streaming, to

    Official Go implementation of the gRPC framework.

    Godogs-over-catsgiant-robotsgo
    Auf GitHub ansehen↗22,962
  • micro/go-microAvatar von micro

    micro/go-micro

    22,810Auf GitHub ansehen↗

    Go-micro is a distributed systems development toolkit designed for building, connecting, and managing modular microservices. It provides a comprehensive framework for service discovery, remote procedure call abstraction, and event-driven messaging, allowing developers to create decoupled architectures that communicate asynchronously through shared message brokers. The project distinguishes itself by integrating autonomous agent orchestration and language model tool binding directly into the service lifecycle. By exposing internal service endpoints as standardized tools, it enables AI agents t

    Framework for distributed system development.

    Godistributed-systemsgogolang
    Auf GitHub ansehen↗22,810
  • nats-io/nats-serverAvatar von nats-io

    nats-io/nats-server

    20,076Auf GitHub ansehen↗

    NATS Server is a high-performance, lightweight messaging system designed for cloud-native applications, edge computing, and distributed microservices. It functions as a distributed publish-subscribe broker that routes messages using hierarchical, dot-separated subject strings, enabling decoupled communication between services without requiring centralized broker lookups. The system supports core messaging patterns including asynchronous publish-subscribe, request-reply, and load-balanced queue processing. The platform distinguishes itself through a decentralized architecture that eliminates t

    Communications system for digital services.

    Gocloudcloud-computingcloud-native
    Auf GitHub ansehen↗20,076
  • theanalyst/awesome-distributed-systemsAvatar von theanalyst

    theanalyst/awesome-distributed-systems

    12,001Auf GitHub ansehen↗

    A curated list to learn about distributed systems

    Collection of papers and resources on distributed systems architecture.

    architectureconsensusdistributed-systems
    Auf GitHub ansehen↗12,001
  • zeromq/libzmqAvatar von zeromq

    zeromq/libzmq

    10,902Auf GitHub ansehen↗

    libzmq is a C++ based asynchronous messaging engine and networking core designed for routing non-blocking messages between distributed nodes. It functions as a distributed message queue that implements the ZMTP wire-format framing protocol to standardize how data moves across different network transport layers. The library provides a multi-transport abstraction that allows a single interface to route data across TCP, IPC, and in-process memory. It incorporates a cryptographic layer to encrypt and authenticate transmissions between nodes and employs topology-based messaging patterns, such as p

    Listed in the “Distributed Systems” section of the Awesome Go awesome list.

    C++concurrencylibzmqmessaging
    Auf GitHub ansehen↗10,902
  • hashicorp/raftAvatar von hashicorp

    hashicorp/raft

    9,037Auf GitHub ansehen↗

    This is a Raft consensus library and distributed consensus engine implemented in Go. It provides the primitives necessary to build fault-tolerant distributed services by implementing a replicated state machine that ensures a group of servers agree on a shared system state through leader election and log replication. The project distinguishes itself through a pluggable architecture for storage backends and snapshot storage, decoupling the consensus logic from physical persistence. It includes specialized mechanisms for leadership transfer, protocol version management to support rolling upgrade

    Implementation of the Raft consensus protocol.

    Go
    Auf GitHub ansehen↗9,037
  • smallnest/rpcxAvatar von smallnest

    smallnest/rpcx

    8,295Auf GitHub ansehen↗

    rpcx is a high-performance remote procedure call framework for building scalable microservices in Go. It functions as a binary protocol RPC system and a service mesh, providing the necessary infrastructure for low-latency inter-service communication and distributed cloud environments. The project features a cross-language service gateway that provides an HTTP entry point, allowing clients written in any programming language to invoke Go remote services via protocol translation. It also includes a specialized RPC traffic analyzer for capturing and analyzing binary packets to debug network comm

    Distributed RPC framework with pluggable components.

    Godubbogrpcmicroservice
    Auf GitHub ansehen↗8,295
  • cloudwego/kitexAvatar von cloudwego

    cloudwego/kitex

    7,973Auf GitHub ansehen↗

    Kitex is a high-performance remote procedure call framework for building distributed microservices in Go. It provides a communication system compatible with gRPC and Protobuf standards and includes a suite of tools for microservices governance. The framework features proxyless service mesh integration, which allows it to manage network traffic and governance directly without adding sidecar proxy latency. It optimizes data throughput through a high-performance communication library that minimizes memory copies. The system covers a broad surface of distributed capabilities, including service d

    High-performance RPC framework.

    Goframeworkgogrpc
    Auf GitHub ansehen↗7,973
  • luraproject/luraAvatar von luraproject

    luraproject/lura

    6,780Auf GitHub ansehen↗

    Lura is an API gateway and traffic router that directs network requests to backend services using a configurable pipeline of processing steps. It functions as a backend load balancer and a request middleware engine designed to validate, modify, and transform incoming requests and responses. The system specializes in API response aggregation, allowing it to execute concurrent requests to multiple backend services and merge the results into a single unified output. This includes the ability to perform dynamic response mapping by renaming fields and filtering data to optimize the final client pa

    API gateway framework.

    Goapi-gatewayapisbackend-services
    Auf GitHub ansehen↗6,780
  • anacrolix/torrentAvatar von anacrolix

    anacrolix/torrent

    6,041Auf GitHub ansehen↗

    Dieses Projekt ist eine voll ausgestattete BitTorrent-Client-Bibliothek und Protokollimplementierung. Sie bietet die Kernkomponenten, die für Peer-to-Peer-Dateifreigabe erforderlich sind, einschließlich eines Netzwerk-Stacks, der die BitTorrent-Spezifikation, Tracker-Kommunikation und Schwarm-Management unterstützt. Ein Hauptunterscheidungsmerkmal ist die Einbindung eines virtuellen Dateisystems, das es ermöglicht, Torrents als schreibgeschützte Laufwerke einzubinden. Dieses System ermöglicht On-Demand-Content-Streaming, bei dem spezifische Datenstücke nur dann aus dem Netzwerk abgerufen werden, wenn eine Leseanfrage erfolgt, anstatt das gesamte Archiv vorab herunterladen zu müssen. Die Bibliothek deckt ein breites Spektrum an Peer-to-Peer-Funktionen ab, einschließlich dezentraler Peer-Entdeckung via Distributed Hash Tables, NAT-Traversal durch Hole-Punching und UPnP sowie Datenintegritätssicherung durch Hash-basierte Stückverifizierung. Sie handhabt zudem Bencode-Datenverarbeitung, verschlüsselte Handshakes und Verkehrsmanagement zur Steuerung von Bandbreite und Peer-Verbindungen. Die Implementierung umfasst Unterstützung für BitTorrent v2-Kompatibilität und bietet strukturiertes Logging sowie interne Metriken zur Überwachung der Verbindungsleistung.

    Full-featured BitTorrent client implementation.

    Gobittorrentgomagnet-link
    Auf GitHub ansehen↗6,041
  • tendermint/tendermintAvatar von tendermint

    tendermint/tendermint

    5,861Auf GitHub ansehen↗

    Tendermint is a Byzantine fault tolerant consensus engine that replicates a deterministic state machine across a cluster of machines while tolerating up to one-third malicious validators. It functions as a blockchain application platform, connecting application logic to the consensus engine through a socket-based protocol that enables development in any programming language. The system commits blocks when more than two-thirds of weighted validators sign and broadcast their votes, with proof included in the next block. It provides cryptographic state verification, allowing efficient authentica

    High-performance middleware for Byzantine Fault Tolerant state machines.

    Go
    Auf GitHub ansehen↗5,861
  • lni/dragonboatAvatar von lni

    lni/dragonboat

    5,308Auf GitHub ansehen↗

    Dragonboat ist eine Go-Implementierung des Raft-Konsensprotokolls, die darauf ausgelegt ist, einen konsistenten Status über einen verteilten Cluster von Knoten hinweg aufrechtzuerhalten. Sie bietet eine Bibliothek zum Aufbau verteilter Zustandsautomaten, die Datenintegrität und Fehlertoleranz bei Systemausfällen gewährleisten. Das Projekt zeichnet sich durch eine Multi-Group-Raft-Implementierung aus, die Daten über unabhängige Konsensgruppen partitioniert, um Arbeitslasten zu verteilen und die gesamte Verarbeitungskapazität des Systems zu erhöhen. Es integriert zudem gegenseitiges TLS (mTLS), um die Kommunikation zwischen Knoten zu verschlüsseln und die Identität von Clustermitgliedern zu verifizieren. Das System umfasst Funktionen für hochperformante Zustandsautomaten mit Unterstützung für Speicher- und Festplattenpersistenz. Es bietet Optimierungen für den Read-Path, um Konsistenz ohne Generierung neuer Log-Einträge zu gewährleisten, ein pluggbares Speicher-Interface für benutzerdefinierte Log-Backends sowie administrative Tools für die Quorum-Wiederherstellung, um die Verfügbarkeit nach einem permanenten Verlust der Knotenmehrheit wiederherzustellen. Die operative Stabilität wird durch den Export von Cluster-Gesundheitsmetriken unterstützt.

    High-performance library for distributed consensus.

    Goconsensusdistributed-consensusdistributed-storage
    Auf GitHub ansehen↗5,308
  • ktr0731/evansAvatar von ktr0731

    ktr0731/evans

    4,481Auf GitHub ansehen↗

    Evans ist ein gRPC-Client und API-Explorer, der für das Testen, Debuggen und Automatisieren von Remote Procedure Calls entwickelt wurde. Er fungiert als interaktiver Client und zustandsloses Kommandozeilen-Utility für die Ausführung von gRPC-Methoden und die Inspektion von Remote-Server-API-Oberflächen. Das Tool bietet spezialisierte Unterstützung für das gRPC-Web-Protokoll, um die Kommunikation mit Web-basierten Implementierungen zu erleichtern. Es ermöglicht die Entdeckung von Diensten und Nachrichtenstrukturen durch Server-Reflection oder Definitionsdateien und unterstützt das Management von Unary-, Client-Side-, Server-Side- und bidirektionalen Streaming-Kommunikationen. Das Projekt deckt das Request-Management durch benutzerdefinierte Metadaten-Header und die Handhabung komplexer Feldtypen wie Arrays, Enums und Base64-kodierte Bytes ab. Es nutzt JSON-basierte Repräsentationen für Ein- und Ausgaben, um maschinenlesbare Ergebnisse und Datei-basierte Request-Automatisierung zu ermöglichen.

    Universal gRPC client.

    Goclicompletiongolang
    Auf GitHub ansehen↗4,481
  • emitter-io/emitterAvatar von emitter-io

    emitter-io/emitter

    4,005Auf GitHub ansehen↗

    Emitter ist eine verteilte Pub-Sub-Plattform und ein Message-Broker, der Echtzeit-Datenrouting zwischen Publishern und Subscribern in einem verteilten Cluster ermöglicht. Er fungiert als MQTT-Message-Broker für stromsparende Geräte und als WebSocket-Kommunikationsserver für webbasierte Clients, während er gleichzeitig als sicherer Channel-Orchestrator verschlüsselte Datenströme verwaltet. Das System zeichnet sich durch eine Kombination aus verteiltem Broker-Clustering für hohe Verfügbarkeit und einem persistenzbasierten Message-Playback-System aus. Dadurch kann die Plattform historische Nachrichten speichern und an Subscriber ausliefern, die während der ursprünglichen Übertragung offline waren. Der Zugriff wird über zeitlich begrenzte Berechtigungsschlüssel gesteuert, die granulare Lese- und Schreibkontrollen für spezifische Channel-Pfade erzwingen. Die Plattform deckt ein breites Spektrum an Messaging-Funktionen ab, einschließlich asynchroner Zustellung, Offline-Client-Queuing sowie der Übertragung von Binär- und Textformaten. Sie unterstützt Channel-basiertes Routing mit Nachrichtenfilterung zur Entkopplung von Systemkomponenten und bietet operative Observability durch Verbindungs-Metadaten und Performance-Monitoring. Das System ist über Docker-Container bereitstellbar und kann mittels Umgebungsvariablen und externen Konfigurationsdateien konfiguriert werden.

    Distributed, low-latency publish-subscribe platform.

    Goemittergogolang
    Auf GitHub ansehen↗4,005
Vorherige1234…5Nächste
  1. Home
  2. Part of an Awesome List
  3. DevOps & Infrastructure
  4. Distributed Systems