Redis集群之twemproxy
Contents
安装
git clone https://github.com/twitter/twemproxy.git
cd twemproxy
autoreconf -fvi
./configure --enable-debug=full --prefix=/ihome/db/redis/twemproxy
make -j8
make install
安装完毕的结构:
╭─sky@sky-linux /ihome/db/redis/twemproxy
╰─➤ tree .
.
├── sbin
│ └── nutcracker
└── share
└── man
└── man8
└── nutcracker.8
4 directories, 2 files
启动
创建一个配置文件在安装目录的conf
下,假设为: twemproxy.yml
,内容如下:
alpha:
listen: 127.0.0.1:22121
hash: fnv1a_64
distribution: ketama
auto_eject_hosts: true
redis: true
server_retry_timeout: 2000
server_failure_limit: 1
servers:
- 127.0.0.1:6379:1 server1
- 127.0.0.1:6479:1 server2
测试配置文件的语法:
╭─sky@sky-linux /ihome/db/redis/twemproxy
╰─➤ ./sbin/nutcracker -t -c conf/twemproxy.yml
nutcracker: configuration file 'conf/twemproxy.yml' syntax is ok
╭─sky@sky-linux /ihome/db/redis/twemproxy
╰─➤
启动:
╭─sky@sky-linux /ihome/db/redis/twemproxy
╰─➤ ./sbin/nutcracker -d -c conf/twemproxy.yml -p twemproxy.pid -o twemproxy.log
然后直接连接到代理:
╭─sky@sky-linux /ihome/db/redis/redis-current/bin
╰─➤ ./redis-cli -p 22121
127.0.0.1:22121> get hello1
"1"
即可.
支持和不支持的命令说明
说明
如果集群的redis中有一台挂了,会导致使用不了.