Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/akagi201/redface
RedFace means redis interface.
https://github.com/akagi201/redface
golang redis redis-api redis-interface redis-server
Last synced: 3 months ago
JSON representation
RedFace means redis interface.
- Host: GitHub
- URL: https://github.com/akagi201/redface
- Owner: Akagi201
- License: mit
- Created: 2016-08-11T07:16:00.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-11-02T09:42:41.000Z (about 3 years ago)
- Last Synced: 2024-06-21T04:40:24.040Z (7 months ago)
- Topics: golang, redis, redis-api, redis-interface, redis-server
- Language: Go
- Homepage: https://godoc.org/github.com/Akagi201/redface
- Size: 20.5 KB
- Stars: 23
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Stories in Ready](https://badge.waffle.io/Akagi201/redface.png?label=ready&title=Ready)](https://waffle.io/Akagi201/redface)
# RedFace[![Build Status](https://travis-ci.org/Akagi201/redface.svg)](https://travis-ci.org/Akagi201/redface) [![Coverage Status](https://coveralls.io/repos/github/Akagi201/redface/badge.svg?branch=master)](https://coveralls.io/github/Akagi201/redface?branch=master) [![Go Report Card](https://goreportcard.com/badge/github.com/Akagi201/redface)](https://goreportcard.com/report/github.com/Akagi201/redface) [![GoDoc](https://godoc.org/github.com/Akagi201/redface?status.svg)](https://godoc.org/github.com/Akagi201/redface)
RedFace means redis interface.
It can be used as a redis server-side api in golang.
## Features
- [x] Suport tcp protocol.
- [x] Support unix socket protocol.
- [x] Support net/http like interface.
- [x] Add benchmarks.
- [ ] Support pipelining.
- [ ] Support telnet commands.
- [ ] Support redis lua script.
- [ ] Support TLS.
- [ ] Support net/context.## Install
* `go get github.com/Akagi201/redface`
## Import
* `import "github.com/Akagi201/redface/resp"`
* `import "github.com/Akagi201/redface/server"`## Benchmarks
### redis-benchmark
Redis: Single-threaded, no disk persistence.
```
❯ redis-server --port 6379 --appendonly no
``````
❯ redis-benchmark -p 6379 -t set,get -n 1000000 -q -P 512 -c 512
SET: 767459.75 requests per second
GET: 941619.56 requests per second
```RedFace: Single-threaded, no disk persistence.
```
GOMAXPROCS=1 go run example/clone/main.go
``````
❯ redis-benchmark -p 6389 -t set,get -n 1000000 -q -P 512 -c 512
SET: 68861.04 requests per second
GET: 65261.37 requests per second
```RedFace: Multi-threaded, no disk persistence.
```
GOMAXPROCS=0 go run example/clone/main.go
``````
❯ redis-benchmark -p 6389 -t set,get -n 1000000 -q -P 512 -c 512
SET: 30049.88 requests per second
GET: 30422.88 requests per second
```Hardward info
```
❯ system_profiler SPHardwareDataType
Hardware:Hardware Overview:
Model Name: MacBook Pro
Model Identifier: MacBookPro11,3
Processor Name: Intel Core i7
Processor Speed: 2.3 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 6 MB
Memory: 16 GB
Boot ROM Version: MBP112.0138.B17
SMC Version (system): 2.19f12
Serial Number (system): C02MG6L8FD57
Hardware UUID: EB84A5CF-F1BA-5604-B1A6-534E30EA95C1
```