UDP 协议详解

传输层最重要的协议为TCP协议和UDP协议。这两者使用“网”的方式走了两个极端。两个协议的对比非常有趣。TCP协议复杂,但传输可靠。UDP协议简单,但传输不可靠。其他的各个传输层协议在某种程度上都是这两个协议的折中。我们先来看传输层协议中比较简单的UDP...

Read More


源码阅读:全方位讲解 LongAdder

高并发下计数功能最好的数据结构就是 LongAdder 与 DoubleAdder,低并发下效率也非常优秀,这是我见过的 java 并发包中设计的最为巧妙的类,从软硬件方面将 java 并发累加操作优化到了极致,所以应该我们应该弄清楚它的每一行代码为什么...

Read More


参数验证 @Validated 和 @Valid 的区别

Spring Validation 验证框架对参数的验证机制提供了 @Validated(Spring's JSR-303规范,是标准JSR-303 的一个变种),java x提供了 @Valid(标准JSR-303规范),配合 BindingResul...

Read More


Java 并发包基石 - AQS 详解

Java 并发包(JUC)中提供了很多并发工具,这其中,很多我们耳熟能详的并发工具,譬如 ReentrangLock、Semaphore,它们的实现都用到了一个共同的基类--AbstractQueuedSynchronizer,简称 AQS。AQS 是一...

Read More


Java 对象结构

对象结构在 HotSpot 虚拟机中,对象在内存中存储的布局可以分为3块区域:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)。下图是普通对象实例与数组对象实例的数据结构: title=HotSpot虚拟机的对象...

Read More