Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/redis-go/redis

Redis server written in Go / Golang (prototype)
https://github.com/redis-go/redis

go golang implementation redis redis-server server

Last synced: 13 days ago
JSON representation

Redis server written in Go / Golang (prototype)

Awesome Lists containing this project

README

        





Becoming a full Redis implementation in Go

This project started to see how easy it is to implement a full Redis clone in Go.
As one of the side effects, imagine you could write redis modules in Go, that would be awesome!

# Get involved!
This project is in *work-in-progress*, so share ideas, code and have fun.

The goal is to have all features and commands like the actual [redis](https://github.com/antirez/redis) written in C have.
We are searching contributors!

### Documentation

godoc: https://godoc.org/github.com/redis-go/redis

### Getting Started

You can already test out the API.

To install, run:
```bash
go get -u github.com/redis-go/redis
```

### Roadmap
- [x] Client connection / request / respond
- [x] RESP protocol
- [x] able to register commands
- [x] in-mem database
- [x] active key expirer
- [ ] Implementing data structures
- [x] String
- [x] List
- [ ] Set
- [ ] Sorted Set
- [ ] Hash
- [ ] ...
- [ ] Tests
- [x] For existing commands
- [x] For key expirer
- [ ] Alpha Release

### TODO beside Roadmap
- [ ] Persistence
- [ ] Redis config
- [ ] Default redis config format
- [ ] YAML support
- [ ] Json support
- [ ] Pub/Sub
- [ ] Redis modules
- [ ] Benchmarks
- [ ] master slaves
- [ ] cluster
- [ ] ...