22 Repos
Systems that maintain consistent application state and shared data across multiple worker nodes or service instances.
Explore 22 awesome GitHub repositories matching networking & communication · Distributed State Management. Refine with filters or upvote what's useful.
Redis is an in-memory, key-value database designed to provide sub-millisecond latency for read and write operations. It functions as a versatile data platform, serving as a distributed cache, a message broker, a NoSQL document store, and a vector database. The system utilizes an event-driven, single-threaded loop to process requests efficiently, while maintaining data durability through append-only persistence logs and asynchronous snapshotting mechanisms. What distinguishes Redis is its ability to handle complex data structures—including strings, hashes, lists, sets, and sorted sets—alongsid
Coordinates shared application state across multiple service instances to ensure consistency in distributed environments.
This project is a data processing engine and AI application platform designed for building production-grade machine learning workflows. It provides a unified programming model that handles both historical batch data and live stream ingestion, enabling the development of real-time ETL pipelines and scalable data transformation workflows. The framework distinguishes itself through differential dataflow execution, which propagates only changes through a pipeline rather than recomputing entire datasets. It supports distributed state management across worker nodes and utilizes incremental stream p
Coordinates consistent application state across multiple worker nodes to facilitate horizontal scaling for complex transformations.
Seata is a distributed transaction coordinator and consistency framework designed to maintain data integrity across multiple microservices. It functions as a manager that synchronizes state across separate databases to ensure atomic commits or rollbacks of global transactions. The project provides a toolkit for implementing distributed transaction patterns, using a two-phase commit protocol and centralized status tracking to prevent data anomalies. It orchestrates eventual consistency through state-machine-based tracking and message-driven coordination to handle timeouts and failures in distr
Synchronizes state across separate databases using centralized status tracking to maintain data integrity.
Redisson is a Java library and Redis client that functions as a distributed Java object mapper, caching provider, and locking framework. It maps Java collections and concurrency primitives to distributed implementations backed by Redis and Valkey, providing synchronous, asynchronous, and reactive APIs for interacting with these data stores. The project distinguishes itself by providing a comprehensive suite of distributed coordination tools, including a locking framework for managing semaphores and countdown latches across multiple application nodes. It also serves as a distributed messaging
Synchronizes Java objects and collections across multiple application nodes in a cluster using Redis or Valkey.
Redisson is a Java client library for Redis and Valkey that provides a distributed data structure library, a distributed lock manager, and a distributed MapReduce framework. It enables application instances in a cluster to share state through thread-safe collections and objects. The project implements a JCache compliant caching layer for standardized data storage and retrieval. It also functions as a probabilistic data store, providing memory-efficient structures such as Bloom filters and HyperLogLog for high-volume data membership testing. The library covers distributed state management usi
Implements shared maps, sets, and queues to maintain consistent application state across a cluster.
This project is a feature-rich Go client library designed for interacting with Redis. It serves as a comprehensive interface for managing remote data stores, enabling developers to execute standard database commands, handle complex data structures, and perform asynchronous operations within Go applications. The library distinguishes itself through its support for advanced Redis capabilities, including connection pooling, pipelining, and transactional integrity. It provides specialized primitives for managing distributed clusters, including automated topology updates and request routing to sha
Maintains persistent user state and authentication tokens across distributed services to ensure seamless and performant login experiences.
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
Provides key-value stores with versioning and time-to-live settings for sharing state between services.
This project provides a comprehensive implementation of the AT Protocol, serving as a framework for building decentralized social networking applications. It enables the creation of distributed data repositories where users maintain cryptographic ownership of their identity and content, allowing for portable accounts that can be migrated between independent servers without central authority intervention. The platform distinguishes itself by decoupling content hosting from discovery through modular algorithmic curation. Users can select third-party services to filter and organize their feeds,
Manages user content and account information across network nodes to maintain shared state.
node-redis is a Node.js client and database driver for interacting with Redis key-value stores. It functions as a connection manager and data iterator, allowing applications to execute database commands and manage atomic transactions on a remote server using asynchronous JavaScript. The project provides specialized capabilities for handling large datasets through an asynchronous interface and supports connection pooling to isolate blocking operations. It includes support for client-side caching and token-based authentication via Entra ID. The driver covers a broad range of operational areas,
Allows maintaining shared application state across multiple server instances via a central Redis store.
This project is a high-performance, distributed API gateway designed to manage, secure, and observe traffic for microservices, serverless functions, and artificial intelligence model providers. It functions as a dynamic service proxy and cloud-native ingress controller, centralizing policy enforcement and traffic routing through a unified configuration interface that synchronizes state across multiple nodes in real time. The platform distinguishes itself through a highly extensible architecture that utilizes a high-performance scripting engine to execute modular logic directly within the requ
Synchronizes configuration and rate-limiting state across multiple nodes to ensure consistent traffic control.
Akka is an actor model framework and distributed systems platform used to build concurrent and distributed applications. It provides a toolkit for managing multi-threaded state and behavior through asynchronous message passing, allowing developers to create concurrent applications without manual locks or synchronization. The system functions as a cluster management and event sourcing framework, automating the scaling and coordination of high-availability clusters. It enables the deployment of elastic services that coordinate workloads across multiple network nodes and ensures fault tolerance
Maintains consistent application state across a cluster by persisting events to durable stores.
Pipecat is a framework and software development kit for building real-time multimodal AI agents and speech-to-speech systems. It utilizes a frame-based data pipeline to route audio, video, and text through a modular sequence of processors, enabling the orchestration of low-latency conversational AI. The project is distinguished by its ability to coordinate complex multimodal services, including speech-to-text, language models, and text-to-speech, within a single pipeline. It features semantic voice activity detection for natural turn-taking, state-machine conversation flows for dialogue manag
Synchronizes agent state and conversation history across distributed environments using Redis or PostgreSQL backends.
EOS is a Layer 1 blockchain infrastructure and high-throughput transaction engine. It serves as a WebAssembly smart contract platform that manages state transitions and network consensus across a peer-to-peer network. The system utilizes a sandboxed virtual machine for executing smart contract logic and employs a Byzantine Fault Tolerant delegated proof-of-stake consensus mechanism to finalize the global ledger state. It features a resource-based stake model for CPU and memory allocation and an asynchronous messaging system for inter-contract communication to prevent recursive call overflows.
Maintains consistent and shared application state across a network of nodes for data integrity.
Orleans is a .NET distributed actor framework designed for building scalable, cloud-native applications. It implements a virtual actor model where entities with stable identities manage their own state and lifecycle across a cluster of servers. The framework provides a distributed state management system with ACID transaction support and a distributed pub/sub streaming engine for real-time data processing. It distinguishes itself through location-transparent routing, automatic actor activation and deactivation, and elastic cluster scaling that redistributes workloads during node failures. Th
Maintains consistent entity-specific state in memory across multiple servers with automatic distribution and persistence.
WeiXinMPSDK is a .NET software development kit designed to integrate WeChat services, official accounts, and mini programs into applications. It provides a multi-platform bot framework and a programmatic interface to interact with official, mini, and corporate accounts across the WeChat ecosystem. The project features interface-based platform abstraction and logic unification, allowing a single codebase to target multiple target platforms. It includes a messaging middleware for routing incoming requests and a distributed caching layer using providers like Redis or Memcached to synchronize ses
Maintains consistent session and application state across multiple server instances.
This project serves as a comprehensive educational repository and technical reference collection, documenting a wide range of software engineering practices and modern development technologies. It provides a structured learning path for developers, curating tutorials and practical examples that cover the full lifecycle of application development, from initial project scaffolding to deployment and maintenance. The repository distinguishes itself by offering deep technical insights into complex architectural patterns, including actor-based concurrency models for managing parallel tasks and cont
Synchronizes configuration data and key-value pairs across cluster nodes to maintain consistent state.
Faust is a Python library for building distributed stream processing applications that integrate with Kafka. It functions as an asynchronous stream processor designed to handle high-throughput event streams and real-time data analysis using asynchronous functions. The system operates as a distributed stream processor and state store, utilizing sharding and partitioned topics to scale processing workloads horizontally across multiple worker nodes. It maintains state through a replicated key-value storage system backed by local databases to ensure high availability and fast recovery. The frame
Maintains consistent application state and replicated key-value data across distributed worker nodes for high availability.
This project is a Substrate-based blockchain protocol implementation and a modular Rust blockchain runtime. It provides a framework for executing a distributed ledger protocol to maintain a synchronized network of nodes. The system features a peer-to-peer node implementation that manages decentralized communication and local key-value database storage. It includes a BFT-based consensus engine for coordinating block authoring and finality, as well as a WebAssembly-based runtime for isolated execution of state transitions. The protocol organizes domain-specific logic through a modular pallet a
Maintains consistent application state and shared data across multiple network nodes.
Rivet ist eine verteilte Infrastruktur zur Verwaltung des Lebenszyklus, der Adressierung und der Persistenz von zustandsbehafteten Akteuren (Actors) und dauerhaften Ausführungs-Engines. Es bietet eine verteilte Prozess-Sandbox, die Anwendungslogik innerhalb leichtgewichtiger Isolates ausführt, was Ressourcenisolierung und schnelle Kaltstarts gewährleistet. Das System ist darauf ausgelegt, mehrstufige Operationen mittels persistenter Queues und Timer zu koordinieren, um eine zuverlässige Aufgabenerledigung in verteilten Umgebungen zu garantieren. Die Plattform ermöglicht spezifisch die Orchestrierung von zustandsbehafteten KI-Agenten, die persistentes Gedächtnis und Status über lang laufende Interaktionen und komplexe Workflows hinweg beibehalten. Sie zeichnet sich durch ein WebSocket-Status-Synchronisations-Framework aus, das Frontend-UI-Komponenten über bidirektionale Echtzeitkommunikation an entfernte zustandsbehaftete Prozesse bindet. Das System deckt ein breites Spektrum an Funktionen ab, einschließlich hierarchischer Akteur-Adressierung, einer Hibernate-on-Idle-Laufzeit zur Ressourcenoptimierung und einer austauschbaren Persistenzschicht für modulare Speicher-Backends. Es enthält zudem Tools für aktives Session-Debugging, Echtzeit-Überwachung des Ausführungsstatus und automatisierte Bereitstellungsoptionen für Edge-, Cloud- oder private Infrastrukturen. Das Projekt ist in Rust implementiert und unterstützt die Akteur-Entwicklung in mehreren Sprachen.
Manages the lifecycle and addressing of stateful processes across distributed systems to ensure data durability.
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
Manages distributed state across a cluster using sharding and dynamic rebalancing for high availability.