![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 96
柠檬楠
这个作者很懒,什么都没留下…
展开
-
Netty源码分析-服务端启动流程
作者: LemonNan原文地址: https://juejin.im/post/6890768117803253768/前言距离上一次写 Netty 源码解析已经过去了一年多时间了, 最近这段时间回顾 Netty 的源码,目前看的版本是 4.1.31, 跟最开始看的版本不太一样, 没记错应该是4.1.16(吧), 不过这并不妨碍我们阅读源码, 小版本的源码在主流程上的差别不会太大. 这次分析的源码是用 Netty 启动一个服务端的过程.流程说明从 Netty 官方给的 demo 中入手, 下.原创 2020-11-03 13:45:19 · 321 阅读 · 0 评论 -
初探JVM字节码
作者: LemonNan原文地址: https://juejin.im/post/6885658003811827725代码地址: https://github.com/LemonLmNan/ByteCode字节码概述本篇要介绍的是能 "一次编译,到处运行的 JVM 字节码"为什么能到处运行?是因为在 任意平台下所编译出来的 class文件都遵循相同的字节码规范, 运行期间 不同平台的 JVM 解析相同的 class文件 能解析出特定于该平台的机器码以供使用.本文大致介绍1.字节码文.原创 2020-10-20 19:24:18 · 206 阅读 · 0 评论 -
Netty使用及事件传递
本文地址: https://juejin.im/post/6844903985720229902Netty 使用首先到官网看一下Netty Server 和 Client的demo, https://netty.io/wiki/user-guide-for-4.x.html, 我用的是4.1.xx,一般来说不是大版本变更, 变化不会很大.下面是 Netty Server 的demo,跟官网的是一样的.public class Main { // 下面是一个接收线程, 3个worker线程.原创 2020-09-03 23:01:24 · 841 阅读 · 0 评论 -
Netty异步Future源码解读
作者: LemonNan本文地址: https://juejin.im/post/6844904021887565831说在前面本文的 Netty源码使用的是 4.1.31.Final 版本,不同版本会有一些差异.JDK Future在说Netty的异步Future之前,先简单介绍一下JDK自带的Future机制.首先先上一段代码public class JDKFuture { static ExecutorService executors = new ThreadPoolEx.原创 2020-09-03 22:58:03 · 480 阅读 · 0 评论 -
Netty ByteBuf源码解析
作者: LemonNan原文链接: https://juejin.im/post/6844903983530655751Netty 的 ByteBuf 类型Pooled(池化)、Unpooled(非池化)Direct(直接缓冲区/堆外)、Heap(jvm堆内)unsafe(unsafe 调用的本地方法)、safe(一般也不会这么说, 这是相对于 unsafe, 指的jvm 堆内的操作)Netty 默认都会优先使用 unsafe 的实现池化/非池化(Pooled/Unpo.原创 2020-08-31 00:22:20 · 1351 阅读 · 0 评论 -
Zookeeper 分布式锁
基于Zookeeper的分布式锁(干干干货)原文地址: https://juejin.im/post/5df883d96fb9a0163514d97f介绍为什么使用锁锁的出现是为了解决资源争用问题,在单进程环境下的资源争夺可以使用 JDK里的锁实现.为什么使用分布式锁?顾名思义,分布式锁是为了分布式环境下的资源争用问题.Zookeeper是如何实现分布式锁的?基于Zookeeper的分布式锁都是依赖于zk节点路径唯一的机制来实现的.什么意思呢?就是在zk中,在分布式锁的场景下 对于原创 2020-08-18 08:31:27 · 111 阅读 · 0 评论