awesome-repositories.com
Blog
MCP
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
·
tokio-rs avatar

tokio-rs/mini-redis

0
View on GitHub↗
4,711 Stars·575 Forks·Rust·MIT·2 Aufrufe

Mini Redis

Dieses Projekt ist eine pädagogische Codebasis und eine asynchrone Netzwerkimplementierung eines Redis-kompatiblen Servers und Clients. Es dient als Demonstration der asynchronen Tokio-Runtime und bietet einen vernetzten Key-Value-Store sowie ein Messaging-System.

Das Projekt implementiert das Redis Serialization Protocol, um zwischen Clients und Servern mittels Byte-Streams zu kommunizieren. Es verfügt über ein Pub-Sub-Messaging-System, das es Clients ermöglicht, benannte Kanäle zu abonnieren und Echtzeit-Updates zu empfangen.

Die Implementierung deckt asynchrone Netzwerkprogrammierung ab, einschließlich der Handhabung gleichzeitiger TCP-Verbindungen und des Byte-Stream-Frame-Parsings. Zudem beinhaltet es Traffic-Management durch Verbindungsbegrenzung und einen Prozess für das geordnete Herunterfahren des Servers.

Features

  • Key-Value - Provides a networked key-value store for sharing data across multiple connected clients.
  • Protocol Implementations - Implements the Redis Serialization Protocol (RESP) for encoding and decoding network messages.
  • Database Wire Protocol Implementations - Implements the Redis wire protocol to enable communication between compatible clients and the server.
  • Key-Value Stores - Provides an asynchronous networked data store for concurrent key-value operations.
  • Shared State Stores - Maintains a central key-value map protected by synchronization primitives for concurrent access.
  • Asynchronous Runtime Demonstrations - Serves as an educational codebase demonstrating concurrent network connection handling using the Tokio runtime.
  • Asynchronous Task Spawning - Handles multiple concurrent TCP connections by spawning individual asynchronous tasks for each incoming request.
  • Redis-Compatible Implementations - Provides a basic implementation of a Redis-compatible server and client for educational purposes.
  • Network Frame Parsing - Parses raw byte streams from network sockets into structured protocol frames.
  • Async Task Spawning - Uses Tokio to spawn asynchronous tasks for handling each incoming network connection concurrently.
  • Asynchronous Network Programming - Demonstrates asynchronous network programming by handling multiple concurrent TCP streams using Tokio.
  • Pub-Sub Subscriptions - Manages pub-sub subscriptions and delivers messages to all clients subscribed to named channels.
  • Pub-Sub Messaging - Provides a pub-sub system that routes messages from publishers to all subscribed clients via named channels.
  • Pub-Sub Systems - Ships a pub-sub messaging system allowing real-time updates via named channel subscriptions.

Star-Verlauf

Star-Verlauf für tokio-rs/mini-redisStar-Verlauf für tokio-rs/mini-redis

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Open-Source-Alternativen zu Mini Redis

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Mini Redis.
  • olric-data/olricAvatar von olric-data

    olric-data/olric

    3,469Auf GitHub ansehen↗

    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

    Gocachedatabasedistributed-cache
    Auf GitHub ansehen↗3,469
  • tporadowski/redisAvatar von tporadowski

    tporadowski/redis

    9,987Auf GitHub ansehen↗

    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

    Credisredis-for-windowsredis-msi-installer
    Auf GitHub ansehen↗9,987
  • microsoft/garnetAvatar von microsoft

    microsoft/garnet

    11,885Auf GitHub ansehen↗

    Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance remote cache store that implements the RESP wire protocol to maintain compatibility with existing Redis clients and libraries. The project is distinguished by a shared-memory architecture that enables parallel request processing across multiple cores for sub-millisecond latency. It features a tiered storage system that automatically offloads colder data from system memory to SSD or cloud storage layers, and includes a specialized vector search database for high-dimensional similar

    C#cachecache-storagecluster
    Auf GitHub ansehen↗11,885
  • redis/redis-pyAvatar von redis

    redis/redis-py

    13,566Auf GitHub ansehen↗

    redis-py is a Python client library for interacting with Redis databases to execute commands and manage key-value data. It serves as a driver for programmatic data manipulation, providing interfaces for Redis command execution and key-value storage. The project includes a dedicated cluster client that handles topology discovery, slot mapping, and request routing across distributed nodes. It further supports high availability through active-active deployment coordination, utilizing health checks and failure detection to trigger automatic failover between instances. The library incorporates ne

    Pythonpythonredisredis-client
    Auf GitHub ansehen↗13,566
Alle 30 Alternativen zu Mini Redis anzeigen→

Häufig gestellte Fragen

Was macht tokio-rs/mini-redis?

Dieses Projekt ist eine pädagogische Codebasis und eine asynchrone Netzwerkimplementierung eines Redis-kompatiblen Servers und Clients. Es dient als Demonstration der asynchronen Tokio-Runtime und bietet einen vernetzten Key-Value-Store sowie ein Messaging-System.

Was sind die Hauptfunktionen von tokio-rs/mini-redis?

Die Hauptfunktionen von tokio-rs/mini-redis sind: Key-Value, Protocol Implementations, Database Wire Protocol Implementations, Key-Value Stores, Shared State Stores, Asynchronous Runtime Demonstrations, Asynchronous Task Spawning, Redis-Compatible Implementations.

Welche Open-Source-Alternativen gibt es zu tokio-rs/mini-redis?

Open-Source-Alternativen zu tokio-rs/mini-redis sind unter anderem: olric-data/olric — Olric is a distributed data grid and in-memory key-value store that partitions and replicates data across a cluster of… tporadowski/redis — Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL… microsoft/garnet — Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance… redis/redis-py — redis-py is a Python client library for interacting with Redis databases to execute commands and manage key-value… hazelcast/hazelcast — Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to… gevent/gevent — Gevent is a Python coroutine concurrency library and asynchronous task manager designed for high-concurrency I/O…