A Redis clone written in Rust for learning purposes. Implements core Redis functionality with a focus on performance and simplicity.
- Learn network programming and TCP protocols
- Implement fundamental data structures & algorithms
- Understand memory management through Rust's ownership model
- Practice concurrent programming with multiple client connections
- ⚡ Single-threaded architecture with event loop
- 🔌 TCP connection support with multiple clients
- 📦 Core data types (Strings, Lists)
- 🔍 RESP (Redis Serialization Protocol) parser
- 🧮 Memory management and eviction
- TCP Server
- Client Connection Management
- RESP Protocol Support (partial)
- Memory Limits & Eviction
- DEL
- EXISTS
- EXPIRE
- TTL
- SET
- GET
- INCR/DECR
- APPEND
- LPUSH/RPUSH
- LPOP/RPOP
- LLEN
- LRANGE
src/
├── config/ # Server configuration
├── engine/ # Command processing
├── network/ # TCP & event handling
├── protocol/ # RESP implementation
├── storage/ # Core Storage Engine
└── utils/ # Helpers & error handling
The diagram above illustrates the components and their interactions within Rudist.
[Coming Soon]