Redis + Twemproxy 分片存储实现

栏目: 数据库 · Redis · 发布时间: 6年前

内容简介:from unsplash为提高Redis存储能力的提升,以及对外提供服务可用性提升,有时候有必要针对Redis进行集群式搭建,比较常用的有Twemproxy分片存储以及官方提供的Cluster方式。

Redis + Twemproxy 分片存储实现

from unsplash

为提高 Redis 存储能力的提升,以及对外提供服务可用性提升,有时候有必要针对Redis进行集群式搭建,比较常用的有Twemproxy分片存储以及官方提供的Cluster方式。

Redis实例安装

Redis的安装这里不再多讲,相关步骤可从官网或其它渠道得到。为安装redis多实例,这里简单提前创建完相关文件夹。其中redis存放应用程序,redis1/redis2/redis3仅存储配置文件。

各实例简单配置如下: redis1

redis2

redis3

分别启动,运行成功如下:

Twemproxy应用

以上三个实例各为独自运行,并没有启动集群存储、存储能力提升的功能。为实现redis的集群存储,本例结合 早先出现 的Twemproxy技术(由twitter开源)进行redis分片存储,而非在Twemproxy之后出现的官方提供的cluster功能。

下面开启Twemproxy的应用,源码安装

安装完成后,配置nutcracker.yml,采用 ketama (一致性hash算法)分片方式。其余还有Modula和Random两种方式。取模算法有明细的缺陷:在分片增加的情况下,数据的命中率直线下降。随机算法更是无法保证数据的均衡读写。

保存后,进行简单的测试,保证配置文件的正确性,若出现如下响应,证明配置文件运行正常。

[root@host1 conf]# ../src/nutcracker -c nutcracker.yml -t
nutcracker: configuration file 'nutcracker.yml' syntax is ok

启动Twemproxy,此时的redis的分片集群搭建已完成。可以通过22122直接访问redis服务【 twemproxy并不支持所有redis/memcache的命令 ,具体请参考https://github.com/twitter/twemproxy/blob/master/notes/redis.md】

简单测试

采用redis-cli客户端登陆22122端口,随机写入一批数据,再通过redis-cli连接具体的redis实例端口,如63791/63792/63793,查看数据是真实的存储在哪一个实例中。

至此,我们已经搭建好一个分片存储的Redis集群应用,为前端提供强劲数据缓存服务

扩展阅读:

Redis + Twemproxy 分片存储实现

长按2秒,识别二维码,关注我。

关注程序员成长


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

小白学运营

小白学运营

刘异、伍斌、赵强 / 电子工业出版社 / 2015-9-1 / 49.00元

《小白学运营》是针对网络游戏行业,产品运营及数据分析工作的入门读物,主要为了帮助刚入行或有意从事游戏产品运营和数据分析的朋友。 《小白学运营》没有烦琐的理论阐述,更接地气。基础运营部分可以理解为入门新人的to do list;用户营销部分则是对用户管理的概述,从用户需求及体验出发,说明产品运营与用户管理的依附关系;数据分析实战中,侧重业务分析,着重阐述的是分析框架,以虚拟案例的方式进行陈述,......一起来看看 《小白学运营》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

html转js在线工具
html转js在线工具

html转js在线工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具