随笔分类 - 【6.3】Redis
摘要:一、背景 Redis 哨兵模式在一定程度上解决的系统的高可用问题,但单 master 节点的写入也成为了系统处理高并发请求时的瓶颈。 二、方案原理 采用多个 master 节点集群模式实现 Redis 水平扩容,提供并发请求处理能力; cluster 自带 sentinel 故障转移机制,无需再使用
阅读全文
摘要:一、经典面试篇 1.1、Redis 线程架构 1.1.1、Redis是单线程还是多线程? 不同版本,不同架构,不同情况。 Redis 3.x ,单线程; Redis 4.x,引入多线程备份、异步删除等功能,但仍使用单线程处理客户端请求; Redis 6.x+,引入多IO线程处理网络请求,后台异步线程
阅读全文
摘要:Redis 命令不区分大小,但 key 区分。 一、管理 及 通用命令 系统命令 ## 帮助命令 help @类型 help @string DB 管理命令 ## 切换数据库【0-15】,默认为0 select dbindex ## 查看当前数据库key的数量 dbsize ## 清空当前库 flu
阅读全文
摘要:官网说明:https://redis.io/docs/management/sentinel/ 一、背景 Redis 主从复制模型在一定程度上解决了读写分离、容灾恢复、数据备份、水平扩容支撑高并发的问题,但仍存在单点故障问题,即 Mater 宕机后,集群将无法提供写服务。 二、方案原理 主从复制的问
阅读全文
摘要:官网说明:https://redis.io/docs/management/replication/ 一. 背景 单机部署存在单点故障及数据丢失问题,为了实现 读写分离 容灾恢复 数据备份 水平扩容支撑高并发 等功能,Redis可基于 主从复制 的特性搭建集群。 二. 方案原理 2.1. 读写分离
阅读全文
摘要:卸载 ## 查看当前服务器是否安装redis及其版本 redis-server -v ## 停止服务 ### 停止单机上的单实例 redis-cli -a 9527 shutdown ### 停止单机上的多实例的某一个实例 redis-cli -a 9527 -p 6379 shutdown ###
阅读全文
摘要:布式锁实现的三个核心要素:加锁、解锁、锁超时。 一、Redis实现分布式锁基本原理 1.1、Redis具体实现 情景:存在多台JVM需要同时对某一商品(id)进行操作。 + 加锁:使用setnx命令,伪代码:setnx(id,value) 返回1,说明key不存在,线程抢锁成
阅读全文
摘要:概念: 主从复制就是主机数据更新后,根据配置和策略,自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主。 配置: (1)“一主二仆”策略 准备三台redis服务器:主服务器A,从服务器B1、从服务器B2。服务器B1、B2同步A数据,A1负责写操作,B1、B2负责
阅读全文
摘要:概念: Redis消息订阅发布是进程间的一种消息通信模式,发送者pub发送消息,订阅者sub接收消息。 使用须知: 需要先订阅后发布,才能接收到消息。在订阅时,相当于创建了可供发布的频道。 案例: (1)订阅频道 订阅单个: subscribe new 订阅多个: subscribe game vi
阅读全文
摘要:一、概念 Redis 事务是 将一组命令集合 一次性、顺序性、排他性的执行。 一次性:一次提交执行多个命令 顺序性:按照命令的顺序依次执行 排他性:其他客户端提交的命令 不会插对到事务执行命令序列中。 二、相关命令 ## 标记事务块的开始 multi ## 提交执行事务块内的所有命令( 执行后,加的
阅读全文
摘要:一、概述 Redis(Remote Dictionary Server)是一个可持久化的内存、Key-Value数据库。 Redis自带持久化功能,用于将内存中的数据同步到磁盘,防止服务器断电或宕机导致数据丢失。 Redis支持两种持久化方式: RDB(redis database) AOF(app
阅读全文
摘要:解读下 redis.conf 配置文件中常用的配置项,为不显得过于臃长,已选择性删除原配置文件中部分注释。
阅读全文
摘要:各版本下载地址:http://download.redis.io/releases,本教程使用版本为redis-5.0.4。 ##进入应用安装目录cd /usr/local ##下载安装包wget http://download.redis.io/releases/redis-5.0.4.tar.g
阅读全文