Redis
文章平均质量分 87
Redis学习笔记以及问题记录
Byron丶
被逼成全栈Java、Python开发
展开
-
Redis_分片集群
在使用redis cluster方案中,一个分片集群有16384个哈希槽。根据键值对的key,按照CRC16算法计算一个16bit的值。再用这个值对16384取模运算,得到的数代表对应编号的hash slot。原创 2023-08-11 16:46:40 · 650 阅读 · 0 评论 -
Redis_亿级访问量数据处理
List、Set 、Hash 、ZSet四种集合中,List和Zset是属于有序的集合。统计疫苗接种人数(没有接种0 接种1)、打卡(没有打卡0 打卡1)、签到。存在的问题:如果数据量非常大,且页面多,访问人数非常多,造成内存紧张。统计一下,2023年1月前10天上班打卡情况 0为未打卡,1为打卡。四种统计模式:聚合统计、排序统计、二值状态统计、基数统计。set集合,来存储所有登录系统的用户 user:id。统计一个集合中不重复的元素个数,例如统计网页的UV。统计第一天登录,第二天流失的用户。原创 2023-08-13 10:45:14 · 527 阅读 · 0 评论 -
Redis_五种数据类型及操作命令
Redis列表是简单的字符串列表,单键多值,按照插入顺序排序。可以添加一个元素到列表的头部(左边)或者尾部(右边)一个列表最多可以包含2^31-1个元素底层是一个双向链表,对两端的操作新能很高,通过下标的操作中间节点性能较弱是一个String类型的键和value(对象),特别适合于储存对象,类似于Java中的,有以下几种处理方式用key存储学生id,用value存储序列化之后用户对象(如果用户属性数据需要修改,操作较复杂,开销较大)原创 2023-08-09 19:42:54 · 917 阅读 · 0 评论 -
Redis_Geospatial(基于位置信息的应用)
基于位置信息服务(Location-Based Service,LBS)的应用。Redis3.2版本后增加了对GEO类型的支持。主要来维护元素的经纬度。redis基于这种类型,提供了经纬度设置、查询、范围查询、距离查询、经纬度hash等一些相关操作。原创 2023-08-13 15:04:50 · 478 阅读 · 0 评论 -
Redis_缓存1_缓存类型
redis是旁路型缓存。原创 2023-08-14 10:43:54 · 849 阅读 · 0 评论 -
Redis_概述
截止到2021年12月 数据库排名。原创 2023-08-09 15:21:56 · 482 阅读 · 0 评论 -
Redis_主从复制
主从库采用读写分离的方式实现读写分离,性能扩展容灾快速恢复。原创 2023-08-10 18:01:31 · 1815 阅读 · 0 评论 -
Redis_缓存2_缓存删除和淘汰策略
一般情况,建议设置为总数据的15%到30%,在实际生产环境下,可以设置50%。redis中每一个value对应一个内存地址,在expires,一个内存地址,对应一个时间截,如果达到指定时间,就完成删除处理。记录数据最后一次访问的时间截,第一次会随机选出N个数据,作为一个候选集合,作一个排序,再把lru最小的数据进行淘汰。在redis默认情况下,不进行数据淘汰noevction,一旦缓存被写满了,再有写请求,redis直接返回错误。惰性删除:数据到达过期时间,先不做删除,直到下次访问该数据时,再做删除(原创 2023-08-14 10:44:27 · 946 阅读 · 0 评论 -
Redis_事务操作
原子性(Atomicity)一致性(Consistency)隔离性(isolation)持久性(durabiliby)ACID。原创 2023-08-13 15:56:57 · 454 阅读 · 0 评论 -
Redis_持久化(AOF、RDB)
Redis根据数据库现有数据,创建一个新的AOF文件,读取数据库中所有键值对,重新对应一条命令写入。可以使用命令bgrewriteaof重写主要是对多余的命令进行简化,修改,例如对list的lpush和rpop进行简化RDB(Redis DataBase):内存快照,记录内存中某一时刻数据的状态。RDB和AOF相比记录的数据,不是操作指令redis提供了两个指令生成RDB文件save:再主线程中执行,会阻塞主线程bgsave:创建一个子线程,专门用来写RDB,避免主线程阻塞,默认配置。原创 2023-08-10 15:34:33 · 789 阅读 · 0 评论 -
Redis_哨兵模式
采用多个哨兵,组成一个集群,以少数服从多数的原则,来判断主库是否客观下线。假如有s个哨兵,那么如果有s/2+1个哨兵确定主库宕机,则判断主库为客观下线如果集群中,有哨兵实例掉线,其他的哨兵还可以继续协作,来完成主从库监控和切换的工作。原创 2023-08-11 11:29:49 · 845 阅读 · 0 评论 -
Redis_安装、启动以及基本命令
redis-benchmark:性能测试工具redis-check-aof:修复aof持久化文件redis-check-rdb:修复rdb持久化文件redis-cli:redis命令行工具redis-sentinel:redis集群哨兵使用redis-server:启动redis。原创 2023-08-09 15:22:58 · 2379 阅读 · 0 评论 -
Redis_缓存3_缓存异常(数据不一致、雪崩、击穿、穿透)
大量的应用请求无法在redis中完成处理。缓存中读取不到数据,直接进入到数据库服务器。数据库压力激增,数据库崩溃,请求堆积在redis,导致redis服务器崩溃,导致redis集群崩溃,应用服务器崩溃,称为雪崩。要访问的数据在redis中不存在,在数据库中也不存在。对某个访问频繁热点数据的请求。主要发生在热点数据失效。如果不符合以上两种情况,则出现数据不一致的问题。不同的数据采取不同的处理方式。:缓存中有大量数据同时过期。解决数据不一致的方案。:redis实例故障。原创 2023-08-14 10:44:53 · 1109 阅读 · 0 评论