A lightweight Redis implementation written in Go, featuring core Redis functionality including key-value storage and sorted sets. This project demonstrates modern Go programming practices with concurrent client handling, Redis-compatible protocol parsing, and efficient in-memory data structures.
Built from the ground up to understand Redis internals, this server supports essential Redis commands and provides a solid foundation for learning distributed systems concepts.
- Basic Redis protocol support
- Key-value operations (GET, SET, DEL)
- Sorted Sets (ZADD, ZRANGE, ZREM)
- TCP server implementation
- Concurrent client handling
# Start the server
go run cmd/server/main.go
# Run the client
go run cmd/client/main.go- Server: TCP server handling Redis protocol commands
- Storage: In-memory data structures with thread-safe operations
- Protocol: Redis-compatible command parsing and response formatting