January 2012

HAproxy 代理redis

转眼2012 的1 月要过去了。。。还是不要空着一个月吧,随便写点什么记录一下。

1 月实践了一下haproxy  作为redis 的代理,统一了所有的redis 入口,对于应用来说,其实最好还是有一个全局的队列,这个中间层完全接管了mysql 和nosql 的写入读取。大工程啊,这里还是说一下简单的。

直接上配置吧:

global
log 127.0.0.1  local3 notice
ulimit-n 40960
maxconn 10240
user haproxy
group haproxy
nbproc  4
daemon
quiet
defaults
log     global
mode    http
option tcplog
balance roundrobin
stats uri /redis-proxy
stats auth hello:123
contimeout 5000
clitimeout 30000
srvtimeout 30000
listen monitor
mode http
bind 0.0.0.0:2000
listen redis
bind 0.0.0.0:6379
mode   tcp
option tcpka
server redis1 192.168.100.1:6379 check inter 5000 fall 3
server redis2 192.168.100.2:6379 check inter 5000 fall 3 backup

我这里两个redis ,一个是active 状态对外服务,另一个是热备。

用redis-benchmark 来随便打了一下压力,和redis-cli 直连性能上差不多。

timeout 一定要配置,之前就是忘了配置,其中一个down 了以后很久都不切。