Corvus:

   Corvus是基于rediscluster的一个redis-porxy解决方案,由饿了么团队开发并部分开源。corvus封装了redis cluster 协议,提供redis 协议,这样可以用原来成熟的redis client操作redis cluster集群。

 

安装部署:(前提—已安装redis cluster)

1:下载

git clonehttps://github.com/eleme/corvus.git
cd corvus
git submodule update --init

 

2:安装

yum -y instlal autoconf
make deps
make
mkdir -p /usr/local/corvus
cp ./src/corvuscorvus.conf /usr/local/corvus/


 

3:配置文件修改,定义绑定端口,配置集群节点(配置集群的部分节点即可)

vi /usr/local/corvus/corvus.conf
bind 12345
node192.168.1.225:3379


 

4:启动

/usr/local/corvus/corvus/usr/local/corvus/corvus.conf >>/usr/local/corvus/corvus.log 2>&1 &


 


测试:

wKioL1nlcESTKeMFAACStfFbie0184.png

wKiom1nlcwmzChfIAAAmuigf0ws341.png


ccorvus参数详细解析:


参数范例默认值注解
基础配置bind 1234512345绑定端口
node localhost:8000,localhost:8001,localhost:8002
redis cluster节点设置
thread 44线程数设置
loglevel debugdebug日志级别
syslog 00是否开启日志
client_timeout 30
   
0客户端连接超时时间,默认为0,表示永不超时
server_timeout 50后端redis-serveer的连接超时时间,默认为0,表示永不超时
statsd服务配置corvus.default.localhost-12345.connected_clients
   corvus.default.localhost-12345.completed_commands
   corvus.default.localhost-12345.used_cpu_sys
   corvus.default.localhost-12345.used_cpu_user
   corvus.default.localhost-12345.latency
   corvus.default.localhost-12345.redis-node.127-0-0-1-8000.bytes.{send,recv}
关闭这里配置了发送给statsd服务端的数据
statsd localhost:8125关闭statsd服务器地址
metric_interval 10关闭数据发送间隔
缓冲区配置bufsize  1638416KBytes (16384)该值定义了每次避免使用fregments时分配的缓冲区大小,以及用于处理数据接收或发送的缓冲区大小,最小限制为  64 Bytes
验证相关requirepass  password若服务端开启了验证,客户端则需发送AUTH  <PASSWORD>
读写分离设置read-strategy  mastermaster设置redis后端的读写分配:
   master:把所有的读命令全部发送到master;
   read-slave-only:把所有的读命令全部发送到slave;
   both:把所有的读命令全部发送到master和slave;
慢日志slowlog-log-slower-than  10000关闭设置命令的慢日志记录时间,设置成0会记录所有命令
slowlog-max-len 1024关闭慢日志最大长度
slowlog-statsd-enabled 0关闭是否发送慢日志到statsd服务