High-performance data structures for managing application caching, session state, and real-time data storage requirements.
Dragonfly is a high-performance, multi-model in-memory data store designed to serve as a drop-in replacement for existing database infrastructures. By utilizing a multi-threaded, shared-nothing architecture and a fiber-based concurrency model, it maximizes CPU utilization and minimizes latency for read and write operations. The system supports a wide range of data structures, including strings, hashes, lists, sets, sorted sets, and JSON documents, while maintaining full compatibility with standard industry wire protocols and client libraries. What distinguishes Dragonfly is its focus on efficiency and scalability through advanced memory management and request processing. It employs a lock-free, cache-friendly hash table structure and zero-copy serialization to reduce overhead during high-throughput operations. For durability, the system utilizes asynchronous, snapshot-based persistence that captures the state of the dataset without blocking active requests. Furthermore, it provides built-in support for horizontal scaling and cluster management, allowing for the distribution of large datasets across multiple nodes to ensure high availability. Beyond core storage, the platform includes a comprehensive suite of operational and analytical capabilities. It features integrated support for geospatial data management, real-time message brokering via publish-subscribe patterns, and full-text search. To handle massive datasets efficiently, the engine incorporates probabilistic data structures for cardinality estimation, frequency tracking, and membership testing. These features are complemented by robust administrative tools, including access control, request rate limiting, and detailed server monitoring.
Dragonfly is a high-performance, multi-threaded in-memory data store that provides native support for complex data structures, pub/sub messaging, persistence, and clustering, making it a comprehensive solution for your caching and real-time data needs.
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—alongside hierarchical JSON documents and high-dimensional vector embeddings. It supports advanced operational patterns such as active-active database deployment for global distribution, real-time data streaming, and probabilistic statistics for large-scale data analysis. These capabilities are complemented by a pluggable indexing engine that enables semantic similarity matching and full-text retrieval. The platform offers a comprehensive ecosystem for managing distributed state, including master-replica replication, automated cluster management, and granular security controls like access control lists and TLS encryption. Developers can interact with the database through language-specific client libraries that support connection multiplexing and object mapping, or via a command-line interface for direct administrative tasks and scripting. Redis is deployed through standard package managers and supports both self-managed clusters and managed cloud instances. Observability is provided through integrated tools for performance analysis, slow log monitoring, and bulk data management.
Redis is the industry-standard in-memory key-value store that natively supports all requested features, including persistence, pub/sub, complex data structures, and robust clustering for high availability.
Olric is a distributed data grid and in-memory key-value store that partitions and replicates data across a cluster of servers. It serves as a shared memory system for managing distributed maps, performing atomic operations, and acting as an in-memory data cache. The system provides a distributed locking mechanism for concurrency control and a pub-sub messaging system that broadcasts and routes messages over named channels across the cluster. The platform covers wide-ranging capabilities including cluster management and orchestration, data replication with configurable quorums, and automated memory eviction using time-to-live policies. It also includes tools for monitoring cluster health, auditing data distribution, and password-based client authentication. Olric can be deployed as a standalone independent service, as a container, or integrated directly into an application as an embedded library.
Olric is a distributed, in-memory key-value store that provides the requested features including clustering, pub/sub messaging, data persistence, and TTL-based expiration.
Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL database. It provides sub-millisecond read and write access to data stored in RAM and can operate as a vector database for indexing high-dimensional embeddings. The system supports a wide range of data storage and synchronization primitives, including the management of strings, hashes, lists, sets, and JSON documents. It enables real-time data operations through atomic transactions, hybrid persistence using snapshots and append-only logs, and high-availability configurations such as automated failover and geographic data distribution. Capabilities extend to asynchronous messaging via publish-subscribe frameworks and event streams with consumer group coordination. The platform also includes advanced search and indexing for full-text, geospatial, and vector similarity queries, as well as tools for AI memory management and machine learning feature serving. The software can be deployed natively on Windows as a process or service, or within containerized environments like Kubernetes.
This repository provides a native Windows implementation of the industry-standard Redis engine, offering the full suite of in-memory data structures, persistence, pub/sub, and clustering capabilities required for high-performance caching and real-time processing.
KeyDB is a multithreaded in-memory key-value store and distributed cache. It functions as a NoSQL database utilizing multi-version concurrency control to execute non-blocking queries and scans. The project is a multithreaded fork of Redis that maintains protocol compatibility while utilizing a multithreaded architecture to scale across multi-core hardware. It distinguishes itself with flash-tiered storage, allowing the system to offload data from primary RAM to SSD or flash storage to increase total capacity. The system supports high availability through active-active mesh replication and multi-master synchronization. Additional capabilities include cloud-native snapshotting for backups, Transport Layer Security for encrypted communication, and subkey-level expiration for nested data structures. The server can be operated as a background daemon with configuration managed via startup arguments or files, and it includes a dedicated command-line interface for data management.
KeyDB is a high-performance, multithreaded in-memory key-value store that provides full support for persistence, pub/sub, clustering, and TTL expiration while maintaining compatibility with the Redis ecosystem.
DiceDB is a distributed cache manager and hierarchical storage engine based on a Valkey key-value store. It functions as a high-availability key-value cluster that balances performance and cost by distributing data across memory and disk tiers. The system supports working sets larger than available RAM by persisting evicted keys to disk and restoring them on demand. It also includes a real-time query subscription system that notifies clients when data matching specific criteria is updated. The project provides distributed cache coordination through master node health monitoring and quorum-based failover. Additional capabilities include gossip-based network discovery, a module extension system for loading shared objects, and tools for managing process logging and network interface binding.
DiceDB is a distributed, high-availability key-value store that provides essential features like data persistence, pub/sub messaging, and clustering, making it a direct fit for high-performance caching and real-time data processing needs.
Valkey is an in-memory, NoSQL database server designed for high-performance data storage and real-time state management. It operates as a distributed key-value store, maintaining datasets entirely within system memory to facilitate sub-millisecond response times for read and write operations. The system distinguishes itself through a single-threaded event loop that utilizes asynchronous I/O multiplexing to ensure high throughput. It supports high availability via master-replica replication and provides a decoupled communication model through a built-in publish-subscribe messaging pattern. To ensure data durability, the engine employs a copy-on-write mechanism to generate point-in-time snapshots of the dataset on disk. The platform offers extensive infrastructure customization, allowing users to compile binaries from source with specialized memory allocators and hardware-level configurations. These capabilities enable the deployment of scalable, distributed storage clusters tailored to specific performance and hardware requirements.
Valkey is a high-performance, in-memory key-value store that provides the requested features including data persistence, pub/sub messaging, clustering, and TTL support, making it a direct and comprehensive solution for your caching and real-time data needs.
ioredis is a performance-focused Redis client for Node.js applications. It provides a comprehensive interface for interacting with Redis servers, including specialized clients for sharded clusters and Sentinel-based high availability environments. The project distinguishes itself through advanced networking and execution capabilities, such as automatic event-loop pipelining to reduce overhead and a system for routing read-write traffic between primary and replica nodes. It also features a dedicated Lua scripting interface that allows server-side scripts to be registered as custom client commands. The library covers a broad range of data management and communication patterns, including stream processing with consumer groups, real-time pub/sub messaging, and geospatial querying. It provides integrated support for atomic transactions, binary data handling, and vector similarity search, alongside security features like TLS encryption and ACL permission management. Operational stability is supported through a retry-strategy state machine, offline command queuing, and incremental collection scanning to prevent server blocking.
This is a client library for interacting with Redis rather than the in-memory data store itself, making it a tool you would use to connect to the service rather than the service you are looking to deploy.
Dice is a low-latency key-value store based on Valkey that functions as a hierarchical storage engine. It combines a high-speed memory store with a tiered cache system to manage data across multiple storage levels. The system extends memory capacity by implementing a disk-backed cache that automatically persists evicted items to disk and restores them during cache misses. This storage tiering balances retrieval speed and operational cost by distributing data between fast memory and slower disk storage. The engine includes a query subscription service that monitors specific data patterns and provides real-time notifications whenever matching information changes.
Dice is a high-performance, Redis-compatible key-value store that provides essential features like data persistence, pub/sub messaging, and tiered storage for efficient memory management.
phpredis is a C-based native extension that bridges PHP applications with Redis servers for high-performance data storage and retrieval. It serves as an interface for manipulating strings, hashes, lists, sets, and sorted sets while providing a direct path for executing Redis commands and server-side scripts. The extension provides comprehensive support for distributed environments and high availability. It interfaces with Redis Cluster to distribute data across multiple nodes using hash slots and manages Redis Sentinel for service discovery and automatic failover. It also enables shared state across application servers by storing PHP session data in a remote Redis backend. Broad capabilities cover low-latency operations through command pipelining and binary serialization, as well as real-time messaging via pub-sub and streams. The toolset includes security features such as TLS encryption and access control lists, along with utilities for geospatial queries and server performance analysis.
This repository is a PHP client extension used to interface with Redis servers, rather than being an in-memory data structure store itself.
Bigcache is a thread-safe, in-memory key-value store for Go designed to minimize garbage collection pauses. It functions as a memory-optimized cache capable of storing gigabytes of data while maintaining low latency during high-volume operations. The system avoids garbage collection overhead by managing memory through large byte arrays and manual allocation. It utilizes a circular-buffer layout to reuse space and lock-striped sharding to reduce contention during concurrent read and write access. The project provides capabilities for high-volume in-memory caching and low-latency data retrieval, specifically targeting the management of massive datasets within distributed system environments.
Bigcache is a specialized in-memory key-value store designed for high-performance caching in Go, though it lacks the broader features like pub/sub, clustering, and persistence found in general-purpose data structure stores.