摘要:背景 最近在看设计模式,在单例模式的 Double Check Lock(DCL)中,存在两个关键字:volatile & synchronized。 之前都知道 DCL 怎么写,直接套娃。但是这两关键字在单例里面的作用还没深究过,于是就自言自语一篇文章。 单例模式代码 public class S
阅读全文
摘要:现象 在线上环境排查问题时,某个线程池在某个时间点新建线程达到设定的最大线程数 maximumPoolSize,后续流量降低后当前线程数仍未回落,仍然为最大线程数,阻塞队列中有任务,但是活跃线程数显著减少。 之前的认知 固有的认知中,线程池运行原理:java.util.concurrent.Thre
阅读全文
摘要:NOTICE:本文仅记录本人对 JVM G1 的小小理解,没有详细记录每个点,若有误可指出 内存区域 G1 将堆分为各个 region,大小通过 G1HeapRegionSize 指定 region 分类 按 region 大小分 普通 region,存放大小小于普通 refion 容量的一半的对象
阅读全文
摘要:前言 近段时间在了解分布式时,经常绕不开一个算法: 一致性哈希算法。于是在了解并实践这个算法后,就有了此文章。 算法间的对比 在分布式分片中,存在着几种算法: 取模,分段,一致性 hash。 取模 分段 一致性哈希 上层是否感知 是 是 否 迁移成本 高 高 低,只涉及相邻节点 单点故障影响 高 高
阅读全文
摘要:前言 在前后端交互的选择上,之前一直采用的是模板引擎(因为我只负责后端)。 而这次的一个算是作业吧,前后端都是我,所以就研究了一下JSON交互在java web的应用(主要是前端)。 优缺点 前后端耦合 模板引擎加载只是将jsp的交互方式移植到html上,前端文件格式改变了,但是jsp中前后端耦合的
阅读全文
摘要:前言 在研究java集合源码的时候,发现了一个很少用但是很有趣的点:Queue以及Deque,平常在写leetcode经常用LinkedList向上转型Deque作为栈或者队列使用,但是一直都不知道Queue的作用,于是就直接官方文档好了。 正文 概念 从上图看出,Queue以及Deque都是继
阅读全文
摘要:前序 在看HashMap源码的时候,看到HashMap的hash函数里面有用到 的运算符,之前经常在除2操作用到 运算符,但是还是第一次看到 ,于是就来记录一下。 情景复现 hashMap的hash函数源码 因为里面主要是先获取key的hashCode,这是jvm生成的,所以我单独用1模拟hashC
阅读全文
摘要: 本文首发于 "cartoon的博客" 转载请注明出处:https://cartoonyu.github.io/cartoon blog 这段时间把疯狂JA
阅读全文
摘要: 本文首发于 "cartoon的博客" 转载请注明出处:https://cartoonyu.github.io/cartoon blog 近段时间把自己电脑
阅读全文
摘要: 本文首发于 "cartoon的博客" 转载请注明出处:https://cartoonyu.github.io/cartoon blog 上一篇文章中我在集
阅读全文
摘要: 本文首发于 "cartoon的博客" 转载请注明出处:https://cartoonyu.github.io/cartoon blog 在概述里面也说过:
阅读全文
摘要: 本文首发于 "cartoon的博客" 转载请注明出处:https://cartoonyu.github.io/cartoon blog 近段时间在学习ja
阅读全文
摘要: 本文首发于 "cartoon的博客" 转载请注明出处:https://cartoonyu.github.io/cartoon blog 近段时间在学习ja
阅读全文
摘要: 本文首发于 "cartoon的博客" 转载请注明出处: "https://cartoonyu.github.io/cartoon blog/post/java/java%E9%81%8D%E5%8E%8
阅读全文