Redis
文章平均质量分 89
捕若审若判若
爱若信若盼若
展开
-
Redis缓存异常
Redis缓存异常 缓存和数据库不一致情况 一致性的含义 缓存中有数据,缓存的数据值需要和数据库中的值相同 缓存中没有数据,数据库中的值必须是最新值 根据是否接受写请求,可以将缓存分成写缓存和只读缓存 对于读写缓存,修改数据时,对缓存和数据库都需要修改,因此需要指定写回策略 同步直写策略:写缓存时,也同步写数据库,缓存和数据库中的数据一致; 异步写回策略:写缓存时不同步写数据库,等到数据从缓存中淘汰时,再写回数据库。使用这种策略时,如果数据还没有写回数据库,缓存就发生了故障,那么,此时,数据库就没有最原创 2021-05-10 20:43:50 · 903 阅读 · 3 评论 -
Redis切片集群
Redis切片集群 当Redis实例保存的键值对数量过大时,使用一次RDB进行持久化时,Redis会fork子进程来完成该操作,fork操作的时间开销与实例数据量大小呈正相关关系,fork操作会阻塞主进程。数据量越大,fork操作造成的主线程阻塞时间越长,Redis相应因此变慢 考虑更为合理的方案解决Redis存储大容量数据 切片集群,也称分片集群,启动多个Redis实例组成一个集群,将受到的数据划分成多份,每一份都用一个实例存储 数据切片何实例的对应分布关系 Redis Cluster方案采用哈希槽(H原创 2021-05-08 23:20:08 · 224 阅读 · 1 评论 -
Redis数据结构
Redis数据结构 Redis底层数据结构 Redis底层数据结构一共有6种:简单动态字符串、双向链表、压缩列表、哈希表、跳表、整型数据 除了String类型以外,List、Hash、Sorted Set、Set这四种集合类型,底层都有两种实现结构 键和值的结构组织 Redis使用哈希表保存所有键值对,称为全局哈希表 哈希表是一个数组,数组的每一个元素称为哈希桶,哈希桶中元素保存的是指向具体值的指针,如图所示,哈希桶中的entry元素保存了*key指针和*value指针,分别指向了实际的键和值 哈希冲突原创 2021-04-16 16:34:59 · 175 阅读 · 0 评论