Redis
redis企业级使用,从单体架构到高可用 master的redis cluster集群
叮叮丶
这个作者很懒,什么都没留下…
展开
-
Linux下Redis安装
初始环境:yum install gcc-c++解压:tar -zxvf redis-5.0.5.tar.gz进入解压目录安装:make && make install脚本方式配置redis开机自启进入目录:cd/home/software/redis-5.0.5/utils复制脚本文件至init.d:cp redis_init_script /etc/init.d/创建redis工作目录:mkdir -p /usr/local/redis/work核心配置文件.原创 2020-06-13 16:42:07 · 144 阅读 · 0 评论 -
高并发下缓存数据库数据一致性解决方案及实现代码
一、技术栈springboot+mybatis+redis二、实现原理以商品库存为例:更新商品库存的时候,根据数据(如商品ID )的唯一标识,将操作路由之后,发送到一个jvm内部的队列中读取数据(库存)的时候,如果发现数据不在缓存(redis)中,那么将执行重新读取数据+更新缓存的操作,根据唯一标识路由之后,也发送同一个jvm内部的队列中一个队列对应一个工作线程,每个工作线...原创 2019-12-31 18:03:09 · 778 阅读 · 0 评论 -
Redis企业级架构方案(十)
1、redis的各个知识点redis:持久化、复制(主从架构)、哨兵(高可用,主备切换)、redis cluster(海量数据+横向扩容+高可用/主备切换)持久化:高可用的一部分,在发生redis集群灾难的情况下(比如说部分master+slave全部死掉了),如何快速进行数据恢复,快速实现服务可用,才能实现整个系统的高可用复制:主从架构,master -> slave 复制,读...原创 2019-12-21 11:42:27 · 327 阅读 · 0 评论 -
redis在实践中的一些常见问题以及优化思路(包含linux内核参数优化)(九)
1、fork耗时导致高并发请求延时RDB和AOF的时候,其实会有生成RDB快照,AOF rewrite,耗费磁盘IO的过程,主进程fork子进程fork的时候,子进程是需要拷贝父进程的空间内存页表的,也是会耗费一定的时间的一般来说,如果父进程内存有1个G的数据,那么fork可能会耗费在20ms左右,如果是10G~30G,那么就会耗费20 * 10,甚至20 * 30,也就是几百毫秒的时...原创 2019-12-20 19:21:00 · 165 阅读 · 0 评论 -
redis cluster节点内部通信机制(八)
一、节点间的内部通信机制1、基础通信原理(1)redis cluster节点间采取gossip协议进行通信跟集中式不同,不是将集群元数据(节点信息,故障,等等)集中存储在某个节点上,而是互相之间不断通信,保持整个集群所有节点的数据是完整的维护集群的元数据用得,集中式,一种叫做gossip集中式:好处在于,元数据的更新和读取,时效性非常好,一旦元数据出现了变更,立即就更新到集中式...原创 2019-12-20 19:02:20 · 938 阅读 · 0 评论 -
搭建读写分离+高可用+多master的redis cluster集群(七)
1、redis cluster最最基础的一些知识redis cluster: 自动,master+slave复制和读写分离,master+slave高可用和主备切换,支持多个master的hash slot支持数据分布式存储停止之前所有的实例,包括redis主从和哨兵集群2、redis cluster的重要配置cluster-enabled <yes/no>clus...原创 2019-12-20 16:42:06 · 384 阅读 · 0 评论 -
Redis三节点方式部署哨兵集群(六)
1、哨兵的配置文件sentinel.conf最小的配置每一个哨兵都可以去监控多个maser-slaves的主从架构为不同的项目,部署了多个master-slaves的redis主从集群相同的一套哨兵集群,就可以去监控不同的多个redis主从集群你自己给每个redis主从集群分配一个逻辑的名称sentinel monitor mymaster 127.0.0.1 6379...转载 2019-12-11 17:25:39 · 304 阅读 · 0 评论 -
Redis哨兵原理 (五)
1、sdown和odown转换机制sdown和odown两种失败状态sdown是主观宕机,就一个哨兵如果自己觉得一个master宕机了,那么就是主观宕机odown是客观宕机,如果quorum数量的哨兵都觉得一个master宕机了,那么就是客观宕机sdown达成的条件很简单,如果一个哨兵ping一个master,超过了is-master-down-after-milliseconds...原创 2019-12-10 15:51:01 · 166 阅读 · 0 评论 -
Redis哨兵主备切换的数据丢失问题:异步复制、集群脑裂 (四)
1、哨兵的介绍sentinel,中文名是哨兵哨兵是redis集群架构中非常重要的一个组件,主要功能如下(1)集群监控,负责监控redis master和slave进程是否正常工作(2)消息通知,如果某个redis实例有故障,那么哨兵负责发送消息作为报警通知给管理员(3)故障转移,如果master node挂掉了,会自动转移到slave node上(4)配置中心,如果故障转移发生了...转载 2019-12-09 15:51:11 · 505 阅读 · 0 评论 -
Redis replication和master持久化及redis主从配置 (三)
1、redis replication的核心机制(1)redis采用异步方式复制数据到slave节点,不过redis 2.8开始,slave node会周期性地确认自己每次复制的数据量(2)一个master node是可以配置多个slave node的(3)slave node也可以连接其他的slave node(4)slave node做复制的时候,是不会block master no...原创 2019-12-06 17:38:31 · 328 阅读 · 0 评论 -
redis企业级数据备份方案 (二)
1、企业级的持久化的配置策略在企业中,RDB的生成策略,用默认的也差不多save 60 10000:如果你希望尽可能确保说,RDB最多丢1分钟的数据,那么尽量就是每隔1分钟都生成一个快照,低峰期,数据量很少,也没必要10000->生成RDB,1000->RDB,这个根据你自己的应用和业务的数据量,你自己去决定AOF一定要打开,fsync,everysecauto-a...原创 2019-11-29 11:12:28 · 119 阅读 · 0 评论 -
Redis 的 RDB和AOF (一)
1、RDB和AOF两种持久化机制的介绍RDB持久化机制,对redis中的数据执行周期性的持久化AOF机制对每条写入命令作为日志,以append-only的模式写入一个日志文件中,在redis重启的时候,可以通过回放AOF日志中的写入指令来重新构建整个数据集如果我们想要redis仅仅作为纯内存的缓存来用,那么可以禁止RDB和AOF所有的持久化机制通过RDB或AOF,都可以将redis...原创 2019-11-29 11:02:35 · 172 阅读 · 0 评论