Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Stories in Ready

RedFace

Build Status Coverage Status Go Report Card GoDoc

RedFace means redis interface.

It can be used as a redis server-side api in golang.

Features

  • Suport tcp protocol.
  • Support unix socket protocol.
  • Support net/http like interface.
  • 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

Releases

No releases published

Packages

No packages published

Languages

You can’t perform that action at this time.