可以通过部署2台Redis服务器, 一台主,一台从。然后写的 *** 作在主库,读的 *** 作可以在从库。进行主从同步即可。
这样就可以,一台写,多台从,所有读的请求全部在从库那边 *** 作。增强Redis的并发能力。
主从配置,比较简单。
直接去 从服务器 那边,修改配置文件redis.conf。
修改salveof 指向 主服务器
如果主服务器有配置访问密码,则还需要配置masterauth 属性。
主服务器不用做什么修改。
主从都启动好后, 可以使用redis客户端来查看redis的主从情况。
进行读写分离的话, 还需要使用哨兵来管理Redis的集群。 让哨兵来判断读写是从哪台服务器。
对哨兵配置文件进行配置,参考配置解释如下
以下是比较常用的配置信息,使用这些配置可以启动起来, 再根据实际的情况,去增加配置。
3台哨兵,使用同样的配置就可以了,哨兵们就会自动互相发现哨兵和slave了。 基本上就是配置了master的信息。 哨兵可以同时监控多个master,那是另外的Redis集群的架构了。
配置完成后,启动各个哨兵后, 可以使用redis的客户端链接哨兵来查看各个结点和哨兵的信息。
下面是多个哨兵的信息,但是不包含自己当前 *** 作的哨兵信息。
在项目配置里面,配置连接去哨兵集群即可。
1、通过上面的配置,写的时候,我们自己控制写到除第一个replica的其他replica上;在通过分布式表读的时候,就会自动把读请求分发到第一个replica上,再利用复制特性把数据同步到自己replica上。通过这样子的设计,使得读请求与写请求分开。2、优点
(1)相比之前的普通集群配置,等于把空闲的资源利用起来,提供了集群资源利用率。
(2)读写互不干扰,单并发的写、读性能提升。
3、缺点
(1)相比普通的集群配置,当并发多查请求时,性能下降更厉害。假设集群有N台,则在多个请求过来的时候,可以理解集群有N台服务器能提供读服务;当使用这种架构的时候,则只有N/2台能提供服务,单台负载的请求数翻倍。
4、all
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)