https://github.com/patelsmuseum/custom-redis
A lightweight Redis-like server implemented in Go, supporting basic commands like PING, ECHO, SET, GET, SAVE, CONFIG, and KEYS. Includes robust error handling for invalid commands and incorrect argument counts.
https://github.com/patelsmuseum/custom-redis
custom-redis database go golang redis redis-cache
Last synced: 2 months ago
JSON representation
A lightweight Redis-like server implemented in Go, supporting basic commands like PING, ECHO, SET, GET, SAVE, CONFIG, and KEYS. Includes robust error handling for invalid commands and incorrect argument counts.
- Host: GitHub
- URL: https://github.com/patelsmuseum/custom-redis
- Owner: patelsmuseum
- Created: 2025-03-22T11:00:09.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-22T11:17:06.000Z (over 1 year ago)
- Last Synced: 2025-03-22T11:29:19.078Z (over 1 year ago)
- Topics: custom-redis, database, go, golang, redis, redis-cache
- Language: Go
- Homepage:
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
## Custom Redis in Go By Purshotam
This is a simple implementation of a Redis-like server written in Go, supporting a set of basic commands with both uppercase and lowercase variations.
## Supported Commands
- **PING** / **ping**: Test the server connection.
- **ECHO** / **echo**: Echo back the provided message.
- **SET** / **set**: Set a key-value pair.
- **GET** / **get**: Get the value associated with a key.
- **SAVE** / **save**: Save data to disk (example command, may vary in real use).
- **CONFIG** / **config**: Get or set configuration parameters.
- **KEYS** / **keys**: Retrieve all keys stored in the server.
Provide Error handling for wrong commands and wrong number of arguments .
Related Images:



For Setting up the project follow the steps below:
Prerequisites:
- Go installed
Steps:
- Clone the repository
- Run the project using `go run *.go`
- Use `redis-cli` to connect to the server and test the commands
Feel free to contribute to the project pull requests are welcome