文章目录
🐯Redis系列🐯:
🐯Twemproxy:
🐯下载
yum -y install git
cd ~/soft
git clone https://github.com/twitter/twemproxy.git
🐯编译构建
yum -y install automake libtool
cd ~/soft/twemproxy/
autoreconf -fvi
./configure
make
🐯配置
cd ~/soft/twemproxy/src
cp nutcracker /usr/bin/
mkdir /etc/nutcracker
cd ~/soft/twemproxy/scripts/
cp nutcracker.init /etc/init.d/twemproxy
chmod +x /etc/init.d/twemproxy
cd ~/soft/twemproxy/conf
cp * /etc/nutcracker
cd /etc/nutcracker
cp nutcracker.yml nutcracker_bak.yml
键名 | 释义 |
---|---|
listen | 该服务器池的监听地址 和端口 (name :port 或ip :port ) |
hash | 哈希算法的名称。 可能的值为: one_at_a_time 、md5 、crc16 、crc32 、crc32a 、fnv1_64 、fnv1a_64 (default) 、fnv1_32 、fnv1a_32 、hsieh 、murmur 、jenkins |
distribution | 根据计算的哈希值选择后端服务器的密钥分配模式。 可能的值为:ketama (默认 )、modula (使用哈希模数服务器来选择后端)、random (为每个请求的每个键选择一个随机后端) |
auto_eject_hosts | 一个布尔值 ,用于控制在服务器连续失败server_failure_limit 次 时是否应临时弹出 服务器, 默认 为false 。 |
redis | 一个布尔值 ,用于控制服务器池是否使用 redis 或memcached 协议。 默认 为false 。 |
server_retry_timeout | 当 auto_eject_hosts 设置为true 时,在临时弹出 的服务器上重试之前 等待的超时值 (以毫秒为单位)。 默认 为 30000毫秒 。 |
server_failure_limit | 当 auto_eject_hosts 设置为true 时,服务器上导致它被临时弹出的连续故障数 。 默认 为2 。 |
servers | 此服务器池的服务器地址 、端口 和权重 (名称:端口:权重或 ip:端口:权重)列表。 |
vi nutcracker.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
- 127.0.0.1:6380:1
- 127.0.0.1:6381:1
🐯服务环境准备
ps -ef | grep redis
#强制杀掉进程
kill -9 PID
redis-server --port 6379
redis-server --port 6380
redis-server --port 6381
service twemproxy start
redis-cli -p 22121
🐯Twemprocy代理实操验证
127.0.0.1:22121> set daa21dwafaf aaa
OK
127.0.0.1:22121> set fqf231dwqdq aaa
OK
127.0.0.1:22121> set k1 aaa
OK
redis-cli -p 6379
redis-cli -p 6380
redis-cli -p 6381
keys *