240 发简信
IP属地:广东
  • redis(十四:事务)

    事务在执行时,会提供专门的属性保证,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),也就是 ...

  • redis(十三:缓存异常)

    三个常见的缓存异常,分别是缓存雪崩、缓存击穿和缓存穿透。 缓存雪崩缓存雪崩造成的结果是:数据库压力大原因有两点:原因一:缓存中有大量数据同时过期,且次数大量并发请求方案:发生...

  • 120
    redis(十二:淘汰机制)

    MySQL 中有 1TB 的数据,如果我们使用 Redis 把这 1TB 的数据都缓存起来,虽然应用都能在内存中访问数据了,但是,这样配置并不合理,因为性价比很低。一方面,1...

  • 120
    redis(十一:数据不一致)

    如果数据同时存在redis和数据库,此时要更新数据。不管删除缓存和更新数据库的先后顺序如何,都可能出现数据不一致的情况。 如何解决数据不一致问题?(不能百分百保证一致性) 采...

  • 120
    redis(十:概念)

    排查和解决 Redis 变慢这个问题的方法:https://mp.weixin.qq.com/s/Qc4t_-_pL4w8VlSoJhRDcg[https://mp.weix...

  • 120
    redis(九:数据结构-集合)

    Sorted Set 只支持范围查询,无法直接进行聚合计算(聚合计算是CPU密集型任务)。Set 类型可以进行聚合计算。不过,Set 的差集、并集和交集的计算复杂度较高,在数...

  • 120
    redis(八:数据结构-压缩列表)

    Redis 有一种底层数据结构,叫压缩列表(ziplist),这是一种非常节省内存的结构。使用到压缩列表的数据类型有(List,Hash,Sorted Set) 压缩列表的构...

  • 120
    【面试系列】接口幂等本质就是去重吗?

    小茵:聊聊你对【去重】和【幂等】的理解吧 小奥:我认为【幂等】和【去重】他们很像,我也说不出他们的严格区别 小奥:我说下我个人的理解,我也不知道对不对 小奥:【去重】是对请求...

  • 120
    redis(七:数据结构-String)

    String 类型可以保存二进制字节流,就像“万金油”一样,只要把数据转成二进制字节数组,就可以保存了。但String 类型并不是适用于所有场合的,它有一个明显的短板,就是它...

  • 120
    redis(六:分片)

    redis无法像mysql、mongodb那样基于同步的点位在主库发生变化后从新的主库继续同步数据。 在redis集群中一旦从库换主,redis的做法是将更换主库的从库清空然...

  • 120
    redis(五:哨兵)

    从上篇文章可知,从库与客户端的交互只负责读数据,而写数据由主库进行,并进行主从同步(生成 RDB 文件和传输 RDB 文件,注意生成 RDB 需要在主线程fork子进程会阻塞...

  • 120
    redis(四:主从同步)

    Redis 高可靠性体现于:数据尽量少丢失,服务尽量少中断。AOF 和 RDB 保证了前者,而后者,Redis 采用副本冗余量,即从库。Redis主从库之间采用的是读写分离的...

  • 120
    redis(三:日志二)

    正因为AOF记录的是操作命令,而不是实际的数据,所以,用 AOF 方法进行故障恢复的时候,需要逐一把操作日志都执行一遍。而RDB(Redis DataBase)内存快照能在宕...

  • 120
    redis(二:日志)

    持久化对于任何数据库来说都是重要的知识点。很久前写过mongo和mysql的日志。今天记录下redis的日志设计。 Redis把后端数据库中的数据存储在内存中,然后直接从内存...

  • 120
    redis(一:数据结构)

    最近二刷了极客时间的《Redis 核心技术与实战》和《Redis源码剖析与实战》。记录下知识点。方便忘记时回顾。 redis提供了完善的功能:丰富的数据类型、支持数据压缩、过...

  • 120
    JVM(十六:编译器优化)

    解释器与编译器 解释器与编译器两者各有优势:当程序需要迅速启动和执行的时候,解释器可以首先发挥作用,省去编译的时间,立即运行。当程序启动后,随着时间的推移,编译器逐渐发挥作用...

  • JVM(十五:语法糖)

    final 观察这两段代码编译出来的字节码,会发现它们是没有任何一点区别的,每条指令,甚至每个字节都一模一样。可以肯定地推断出把局部变量声明为final,对运行期是完全没有影...

  • 120
    JVM(十四:方法调用)

    这里的方法调用并不等同于方法中的代码被执行,方法调用阶段唯一的任务就是确定被调用方法的版本(即调用哪一个方法),暂时还未涉及方法内部的具体运行过程。 由于Class文件的编译...