您的位置:首页 > 数据库 > Redis

redis+twemproxy+socket访问

2017-07-06 18:12 495 查看

redis集群

Twemproxy作为代理,可接受来自多个程序的访问,按照路由规则,转发给后台的各个Redis服务器,再原路返回。该方案很好的解决了单个Redis实例承载能力的问题。当然,Twemproxy本身也是单点,需要用Keepalived做高可用方案。通过Twemproxy可以使用多台服务器来水平扩张redis服务,可以有效的避免单点故障问题。虽然使用Twemproxy需要更多的硬件资源和在redis性能有一定的损失(twitter测试约20%),但是能够提高整个系统的HA也是相当划算的。不熟悉twemproxy的同学,如果玩过nginx反向代理或者MySQL proxy,那么你肯定也懂twemproxy了。其实twemproxy不光实现了redis协议,还实现了memcached协议,什么意思?换句话说,twemproxy不光可以代理redis,还可以代理memcached.

1.nutcracker centos中已有,编辑配置文件,

rw:

#listen: 0.0.0.0:22021

listen: /var/run/nutcracker_rw.sock

hash: crc32

distribution: modula

auto_eject_hosts: true

redis: true

server_retry_timeout: 2000

server_failure_limit: 1

servers:

- serverip1:port1:1

- serverip2:port2:1


2.启动

/usr/sbin/nutcracker -c /etc/nutcracker/conf.top.yml

3.查看启动情况(22222为twemproxy的管理端口)

netstat -nltp |grep 22222

ip和port方式监听,redis-cli访问时:redis-cli -p 22021

本地socket方式监听,redis-cli访问时:redis-cli -s /var/run/nutcracker_rw.sock
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息