Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
/ reborn Public
forked from reborndb/reborn

Distributed database fully compatible with redis protocol

License

MIT and 2 other licenses found

Licenses found

MIT
LICENSE
BSD-3-Clause
vitess_license
MIT
wandoujia_license
Notifications You must be signed in to change notification settings

yuqing/reborn

#Reborn - yet another fast distributed solution for Redis

Reborn is a proxy based high performance Redis cluster solution written in Go/C, an alternative to Redis.

Reborn supports multiple stateless proxy with multiple redis instances.

Reborn is engineered to elastically scale, Easily add or remove redis or proxy instances on-demand/dynamicly.

Build Status

Features

  • Auto rebalance
  • Extremely simple to use
  • Support both redis or rocksdb transparently
  • Support cold/hot data hybrid management.
  • GUI dashboard & admin tools
  • Supports most of Redis commands, Fully compatible with twemproxy(https://github.com/twitter/twemproxy)
  • Native Redis clients are supported
  • Safe and transparent data migration, Easily add or remove nodes on-demand.
  • Command-line interface is also provided
  • RESTful APIs
  • Monitor and Failover

Design

RebornDB: the Next Generation Distributed Key-Value Store

Build and Install

  • Install go(we recommend go1.3.3, go1.4 has some performance issue) & ZooKeeper
  • Install godep, go get github.com/tools/godep
  • go get github.com/reborndb/reborn
  • cd reborn
  • make
  • make gotest
  • cd sample
  • follow instructions in usage.md

Tutorial

English

简体中文

FAQ

English

简体中文

Performance (Benchmark)

OS: Ubuntu SMP x86_64 GNU/Linux
CPU: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz(8 cores)
Mem: 16G
Disk: 256G SSD
  • twemproxy
version 0.4.1
alpha:
 listen: 127.0.0.1:22121
 hash: crc32a
 hash_tag: "{}"
 distribution: ketama
 auto_eject_hosts: false
 timeout: 400
 redis: true
 servers:
 - 127.0.0.1:6381:1
 - 127.0.0.1:6382:1

####1 twemproxy + 2 reborn-server
redis-benchmark -p 22121 -c 500 -n 5000000 -P 100 -r 10000 -t get,set -q

SET: 209100.03 requests per second
GET: 212404.41 requests per second

####1 reborn-proxy + 2 reborn-server
redis-benchmark -p 19000 -c 500 -n 5000000 -P 100 -r 10000 -t get,set -q

SET: 410273.22 requests per second
GET: 455913.19 requests per second

####1 twemproxy + 2 qdb-server
redis-benchmark -p 22121 -c 500 -n 5000000 -P 100 -r 10000 -t get,set -q

SET: 133212.55 requests per second
GET: 165584.84 requests per second

####1 reborn-proxy + 2 qdb-server
redis-benchmark -p 19000 -c 500 -n 5000000 -P 100 -r 10000 -t get,set -q

SET: 45909.04 requests per second
GET: 77690.41 requests per second

Result:

main

For Java users who want to support HA

Reborn-java (HA Reborn Connection Pool based on Jedis)

Architecture

architecture

Snapshots

Dashboard overview server_group proxy_status

Migrate migrate

Slots slots

Authors

Thanks:

License

Reborn is licensed under MIT, see MIT-LICENSE.txt


You are welcome to use Reborn in your product, and feel free to let us know~ :)

About

Distributed database fully compatible with redis protocol

Resources

License

MIT and 2 other licenses found

Licenses found

MIT
LICENSE
BSD-3-Clause
vitess_license
MIT
wandoujia_license

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 78.4%
  • HTML 10.7%
  • JavaScript 7.7%
  • Shell 2.7%
  • Other 0.5%

AltStyle によって変換されたページ (->オリジナル) /