免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4900 | 回复: 1

[Redis] redis-sharding – 一个 Redis Proxy [复制链接]

论坛徽章:
0
发表于 2012-02-16 19:44 |显示全部楼层
redis-sharding – 一个 Redis Proxy






redis-sharding 是一个由perl写的 Redis 的proxy,使用它,你可以将数据分布存储在多个Redis实例上,而在操作数据时却像只操作一个实例一样。利用它相当于透明地解决了 Redis 单线程无法有效利用多核心服务器的问题。当然,我们更期待官方的cluster方案。

项目地址:https://github.com/kni/redis-sharding

架构:
  1.                               /- Redis (node 1)
  2. Client 1 ---                /-- Redis (node 2)
  3.               Redis Sharding --- Redis (node 3)
  4. Client 2 ---                \-- Redis (node 4)
  5.                               \- Redis (node 5)
复制代码
启动redis-sharding,分别为使用默认host,port与指定host,port的方式:

  1. perl redis_sharding.pl                             --nodes=10.1.1.2:6380,10.1.1.3:6380,...
  2. perl redis_sharding.pl                 --port=6379 --nodes=10.1.1.2:6380,10.1.1.3:6380,...
  3. perl redis_sharding.pl --host=10.1.1.1 --port=6379 --nodes=10.1.1.2:6380,10.1.1.3:6380,...redis-sharding
复制代码
还支持重新切分数据,但这需要暂时停掉proxy,下面是将原来的db 9的数据重新sharding到B1-B5五个实例上:

停掉redis-sharding后再执行:
  1. perl resharding.pl --db=9 --from=A1 --nodes=B1,B2,B3,B4,B5
  2. perl resharding.pl --db=9 --from=A2 --nodes=B1,B2,B3,B4,B5
复制代码
然后再启动新的管理B1-B5的redis-sharding实例即可:
  1. perl redis_sharding.pl --nodes=B1,B2,B3,B4,B5
复制代码

论坛徽章:
0
发表于 2012-02-17 22:28 |显示全部楼层
谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP