Redis Clone is an educational project to learn and understand the inner workings of Redis, a popular in-memory data structure store. This project is implemented in Go (Golang) and covers various aspects of Redis, including in-memory storage, data persistence, and advanced features like pub/sub and transactions.
Redis Clone aims to mimic the basic functionalities of Redis to provide a learning platform for developers interested in understanding distributed systems, data structures, and high-performance computing.
- In-memory key-value store
- Data persistence using RDB and AOF
- Support for lists, sets, and hash maps
- Publish/Subscribe messaging
- Basic transaction support
- Lua scripting execution
- Master-slave replication (planned)
- Sharding (planned)
To get started with Redis Clone, follow these steps:
-
Clone the repository:
git clone https://github.com/yourusername/redis-clone.git cd redis-clone
-
Install dependencies:
go mod tidy
-
Build the project:
go build -o redis-server ./cmd/redis-server
Run the Redis Clone server:
./redis-server
You can then interact with the server using any Redis client.
This project is licensed under the MIT License.