type命令实际返回的就是当前键的数据结构类型,它们分别是:string(字符串).hash(哈希). list(列表).set(集合).zset(有序集合),但这些只是Redis对外的数据结构. 实际上每种数据结构都有自己底层的内部编码实现,而且是多种实现,这样Redis会在合适的场景选择合适的内部编码. 可以看到每种数据结构都有两种以上的内部编码实现,例如string数据结构就包含了raw.int和embstr三种内部编码. 同时,有些内部编码可以作为多种外部数据结构的内部实现,例如zipl…
一.Redis  Sentinel架构     二.redis sentinel安装与配置 四.客户端连接Sentinel            四.实现原理—— 故障转移演练(客户端高可用) 五.实现原理—— 故障转移演练(服务端日志分析:数据节点和sentinel节点) 六.三个定时器 七.主观下线和客观下线 八.领导者选举 九.高可用读写分离…
一.单机有什么问题 1.机器故障 2.容量瓶颈 3.QPS瓶颈 二.主从复制 1.数据副本(高可用.分布式基础) 2.拓展读性能(读写分离)  简单总结: 三.主从复制配置 四.主从复制配置-实验演示 五.runid和复制偏移量 主Redis每次向从Redis传播N个字节的数据时,都会在自己的复制偏移量上加N: 同理,从Redis每次接收到N个字节时,也会在自己的复制偏移量上加N. 六.全量复制 redis什么时候会发生全量复制? a) redis slave首启动或者重启后,连接到master…
一.Redis是什么 * 开源 * 基于键值的存储服务系统 * 支持多种数据结构 * 高性能,功能丰富 二.Redis特性 ♦️ 概述 * 速度快 * 支持持久化 * 支持多种数据结构 * 支持多种编辑语言 * 功能丰富 * 简单(代码短小精悍,使用简单) * 主从复制 * 高可用.分布式(主从复制是实现此的基础) ♦️ 特性详解 2.1 速度快 官方数据  10W OPS(operation per second) 为什么这么快? 1)绝大部分请求是纯粹的内存操作(非常快速) 2)采用单线程,…
1. 三种启动方式 ♦️  最简启动 ./redis-server 使用Redis默认配置进行启动; ♦️  动态参数启动 * redis-server --port 6380  更改端口为6380并启动 ♦️  配置文件启动 redis-server  configPath (将需要的配置写在配置文件中) 三种方式对比:    生产环境选择配置文件启动    单机多实例配置文件可以用端口区分开 2. Redis客户端连接 ./redis-cli  -h 127.0.0.1 -p 6379 Re…
1.pom文件 <!--redis--> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> <version>1.0.2.RELEASE</version> </dependency> <dependency> <groupId>…
一.结构和命令 1.字符串键值结构 key是字符串,value可以是字符串.数字.二进制.json等: redis的key和string类型value限制均为512MB. 2.使用场景 ♦️ 缓存 ♦️ 计数器 ♦️ 分布式锁 3.命令 ♦️ get ♦️ set ♦️ del ♦️ incr     ♦️ decr ♦️ incrby  ♦️ decrby       ♦️ mset  ♦️ mget ♦️ getset  ♦️ append  ♦️ strlen 二.快速实战 1. 记录网站…
通用命令  参考 http://redisdoc.com/index.html 1. keys  #查看所有key 时间复杂度:O(N), N 为数据库中 key 的数量. 127.0.0.1:6379> keys *           keys命令一般不在生产环境使用!           原因:生产环境键值对比较多:意义不大           想用keys命令怎么办?           ①热备从节点(从节点一般不在生产环境使用,可以在从节点上执行此命令)           ②使用sc…
一.初步认识 二.API 1.setbit 2.getbit 3.bitcount 4.bitop 5.bitpos 三.位图使用 四. 使用经验…