事务在执行时,会提供专门的属性保证,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),也就是 ...
事务在执行时,会提供专门的属性保证,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),也就是 ...
三个常见的缓存异常,分别是缓存雪崩、缓存击穿和缓存穿透。 缓存雪崩缓存雪崩造成的结果是:数据库压力大原因有两点:原因一:缓存中有大量数据同时过期,且次数大量并发请求方案:发生...
MySQL 中有 1TB 的数据,如果我们使用 Redis 把这 1TB 的数据都缓存起来,虽然应用都能在内存中访问数据了,但是,这样配置并不合理,因为性价比很低。一方面,1...
如果数据同时存在redis和数据库,此时要更新数据。不管删除缓存和更新数据库的先后顺序如何,都可能出现数据不一致的情况。 如何解决数据不一致问题?(不能百分百保证一致性) 采...
排查和解决 Redis 变慢这个问题的方法:https://mp.weixin.qq.com/s/Qc4t_-_pL4w8VlSoJhRDcg[https://mp.weix...
Sorted Set 只支持范围查询,无法直接进行聚合计算(聚合计算是CPU密集型任务)。Set 类型可以进行聚合计算。不过,Set 的差集、并集和交集的计算复杂度较高,在数...
Redis 有一种底层数据结构,叫压缩列表(ziplist),这是一种非常节省内存的结构。使用到压缩列表的数据类型有(List,Hash,Sorted Set) 压缩列表的构...
小茵:聊聊你对【去重】和【幂等】的理解吧 小奥:我认为【幂等】和【去重】他们很像,我也说不出他们的严格区别 小奥:我说下我个人的理解,我也不知道对不对 小奥:【去重】是对请求...
String 类型可以保存二进制字节流,就像“万金油”一样,只要把数据转成二进制字节数组,就可以保存了。但String 类型并不是适用于所有场合的,它有一个明显的短板,就是它...
redis无法像mysql、mongodb那样基于同步的点位在主库发生变化后从新的主库继续同步数据。 在redis集群中一旦从库换主,redis的做法是将更换主库的从库清空然...
从上篇文章可知,从库与客户端的交互只负责读数据,而写数据由主库进行,并进行主从同步(生成 RDB 文件和传输 RDB 文件,注意生成 RDB 需要在主线程fork子进程会阻塞...
Redis 高可靠性体现于:数据尽量少丢失,服务尽量少中断。AOF 和 RDB 保证了前者,而后者,Redis 采用副本冗余量,即从库。Redis主从库之间采用的是读写分离的...
正因为AOF记录的是操作命令,而不是实际的数据,所以,用 AOF 方法进行故障恢复的时候,需要逐一把操作日志都执行一遍。而RDB(Redis DataBase)内存快照能在宕...
持久化对于任何数据库来说都是重要的知识点。很久前写过mongo和mysql的日志。今天记录下redis的日志设计。 Redis把后端数据库中的数据存储在内存中,然后直接从内存...
最近二刷了极客时间的《Redis 核心技术与实战》和《Redis源码剖析与实战》。记录下知识点。方便忘记时回顾。 redis提供了完善的功能:丰富的数据类型、支持数据压缩、过...
解释器与编译器 解释器与编译器两者各有优势:当程序需要迅速启动和执行的时候,解释器可以首先发挥作用,省去编译的时间,立即运行。当程序启动后,随着时间的推移,编译器逐渐发挥作用...
final 观察这两段代码编译出来的字节码,会发现它们是没有任何一点区别的,每条指令,甚至每个字节都一模一样。可以肯定地推断出把局部变量声明为final,对运行期是完全没有影...
这里的方法调用并不等同于方法中的代码被执行,方法调用阶段唯一的任务就是确定被调用方法的版本(即调用哪一个方法),暂时还未涉及方法内部的具体运行过程。 由于Class文件的编译...