redis集群理论与实战

理论

ooxx

  

 

代理实战:

使用twitter代理
git学习网址:https://github.com/twitter/twemproxy
下载:git clone https://github.com/twitter/twemproxy.git
如果:Http request failed
yum update nss
cd twemproxy

autoreconf -fvi
需要安装高版本,解决办法:https://www.cnblogs.com/fnlingnzb-learner/p/5831443.html
./configure --enable-debug=full
make

配置:

cp tmp/twemproxy/scripts/nutcracker.init /etc/init.d/
cd /etc/init.d
chmod +x twemproxy 变绿
查看twemproxy文件需要两个配置:
redis集群理论与实战

 

1.将conf目录下所有文件移动到/etc/nutcracker
cp ./*  /etc/nutcracker/

2.配置全局环境path  比如放到:根目录下/bin、/sbin、 /usr/bin

    cp /tmp/twemproxy/src/nutcracker /usr/bin

3. 备份并编辑 vi nutcracker.yml

4. 只留下alpha、删除其他 命令: d G

5. 在增加服务6380

redis集群理论与实战

 

 

启动:

1.启动redis 6379
redis-server --port 6379

1.启动redis 6380

redis-server --port 6380

1.启动代理默认端口22122

service twemproxy start

测试代理:

redis-cli -p 22121

127.0.0.1:22121> set a a
OK
127.0.0.1:22121> set b b
OK
127.0.0.1:22121> set ooxx a
OK
127.0.0.1:22121> set ooaa b
OK
127.0.0.1:22121> lpush list1 a b c d e f g h i g k l
(integer) 12

 

127.0.0.1:22121> keys *
Error: Server closed the connection
127.0.0.1:22121> watch a
Error: Server closed the connection
127.0.0.1:22121> multi
Error: Server closed the connection

  

测试redis6380

[root@redis2 ~]# redis-cli -p  6380
127.0.0.1:6380> keys *
1) "list1"
2) "ooaa"
3) "ooxx"
127.0.0.1:6380> get ooxx
"a"

  

测试redis6379

[root@redis2 ~]# redis-cli -p 6379
127.0.0.1:6379> get a
"a"
127.0.0.1:6379> keys *
1) "b"
2) "a"

  

结论:

  • 对于客户端只需要直到代理即可。
  • 代理将不同的key发送到不同的redis服务上
  • 代理不能获取全量key、不能watch、不能开启事务

 

上一篇:[POJ 3744] Scout YYF I 题解


下一篇:Python2.x与3.x对比