随笔分类 - redis
redis相关
摘要:一、redis可以用来做消息队列么 redis可以做消息队列,可以利用list 和 streams 两个方案比较如下图所示 BRPOP:堵塞读取,不需要一直轮询获取数据 BRPOPLPUSH:是让消费者程序从一个 List 中读取消息,同时,Redis 会把这个消息再插入到另一个 List(可以叫作
阅读全文
摘要:当redis缓存的数据量越来越大,有限的缓存空间不可避免地会被写满,这个时候就涉及到缓存数据的淘汰策略 一、8种淘汰策略 默认情况下,Redis 在使用的内存空间超过 maxmemory 值时,并不会淘汰数据,也就是设定的 noeviction 策略。对应到 Redis 缓存,也就是指,一旦缓存被写
阅读全文
摘要:一、数据一致性(无法做到绝对一致) 缓存分成读写缓存和只读缓存 读写缓存写回策略有两种 1、同步直写策略:写缓存时,也同步写数据库,缓存和数据库中的数据一致;(要在业务应用中使用事务机制,来保证缓存和数据库的更新具有原子性) 2、异步写回策略:写缓存时不同步写数据库,等到数据从缓存中淘汰时,再写回数
阅读全文
摘要:1、为什么 String 类型内存开销大? String 类型具体是怎么保存数据的呢?当你保存 64 位有符号整数时,String 类型会把它保存为一个 8 字节的 Long 类型整数,这种保存方式通常也叫作 int 编码方式。但是,当你保存的数据中包含字符时,String 类型就会用简单动态字符串
阅读全文
摘要:一、主从复制 1、主从怎么保持数据一致 Redis 的主从库同步有三种模式:全量复制、基于长连接的命令传播,以及增量复制。 1.第一次主从库同步 它们相互之间就可以通过 replicaof命令形成主库和从库的关系,之后会按照如下图所示三个阶段完成数据的第一次同步 FULLRESYNC 响应表示第一次
阅读全文
摘要:Redis 的持久化主要有两大机制,即 AOF(Append Only File)日志和 RDB 快照 一、AOF日志(主线程执行) AOF日志记录了redis所有增删改的操作,保存在磁盘上,当redis宕机,需要恢复内存中的数据时,可以通过读取AOF日志恢复数据,从而避免因redis异常导致的数据
阅读全文
摘要:1.Redis 真的只有单线程吗? 通常说,Redis 是单线程,主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的,这也是 Redis 对外提供键值存储服务的主要流程。但 Redis 的其他功能,比如持久化、异步删除、集群数据同步等,其实是由额外的线程执行的。 2.Redis 为
阅读全文
摘要:一、redis快速的原因:1、在内存中进行操作 2、高效的数据结构 底层数据结构一共有 6 种,分别是简单动态字符串、双向链表、压缩列表、哈希表、跳表和整数数组。它们和数据类型的对应关系如下图所示: 1.Redis使用一个哈希表保存所有键值对,2.哈希桶中的元素保存的不是值的本身,而是指向具体元素的
阅读全文
摘要:1.什么是分布式 分布式不是指必须把应用程序部署到不同的服务器 只要存在应用程序跨JVM就是分布式 2.什么时候使用分布式锁 应用之间存在共享资源的竞争就要使用分布式锁 3.什么时候使用分布式事务 需要保证数据库中的数据的一致性的时候,就需要使用分布式事务 4.都有哪些分布式锁 4.1. 数据库-乐
阅读全文

浙公网安备 33010602011771号