原文:曹工说JDK源码(4)--抄了一小段ConcurrentHashMap的代码,我解决了部分场景下的Redis缓存雪崩问题

曹工说JDK源码 ConcurrentHashMap,扩容前大家同在一个哈希桶,为啥扩容后,你去新数组的高位,我只能去低位 曹工说JDK源码 ConcurrentHashMap的多线程扩容,说白了,就是分段取任务 曹工说JDK源码 ConcurrentHashMap,Hash算法优化 位运算揭秘 什么是缓存雪崩 基本概念梳理 这个基本也是redis 面试的经典题目了,然而,网上不少博客对这个词的定 ...

2020-06-11 15:08 1 824 推荐指数:

查看详情

JDK源码(2)--ConcurrentHashMap的多线程扩容,说白了,就是分段取任务

前言 先预先说明,我这边jdk代码版本为1.8.0_11,同时,因为我直接在本地jdk源码上进行了部分修改、调试,所以,导致大家看到的我这边贴的代码,和大家的不太一样。 不过,我对源码进行修改、重构时,会保证和原始代码的功能、逻辑严格一致,更多时候,可能只是修改变量名,方便理解 ...

Mon Jun 08 06:45:00 CST 2020 0 979
JDK源码(1)--ConcurrentHashMap,扩容前大家同在一个哈希桶,为啥扩容后,你去新数组的高位,我只能去低位?

如何计算,一对key/value应该放在哪个哈希桶 大家都知道,hashmap底层是数组+链表(不讨论红黑树的情况),其中,这个数组,我们一般叫做哈希桶,大家如果去看jdk源码,会发现里面有一些变量,叫做bin,这个bin,就是桶的意思,结合语境,就是哈希桶。 这里举个例子,假设一个 ...

Sun Jun 07 07:08:00 CST 2020 0 691
Redis源码(4)-- 通过redis server源码来理解 listen 函数中的 backlog 参数

文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读。由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出。 Redis源码 ...

Tue Apr 14 16:26:00 CST 2020 2 724
Redis源码(3)-- redis server 启动过程完整解析(中)

文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读。由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出。 Redis源码 ...

Mon Apr 13 16:33:00 CST 2020 0 1198
Redis源码(7)-- redis server 的周期执行任务,到底要做些啥

文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读。由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出。 Redis源码 ...

Wed Apr 22 06:25:00 CST 2020 0 793
Redis源码(1)-- redis debug环境搭建,使用clion,达到和调试java一样的效果

概要 最近写了spring系列,这个系列还在进行中,然后有些同学开始叫我大神,然后以为我各方面都比较厉害,当然了,我是有自知之明的,大佬大神什么的,当作一个称呼就好,如果真的以为自己就是大神,那可能就走偏了。 其实我不少方面都比较薄弱,比如redis、mysql、jvm这些c语言写的东西 ...

Mon Apr 06 00:28:00 CST 2020 2 4275
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM