
Netty
张伯毅
某厂技术,Apache DolphinScheduler Committer.
专注于调度&实时&大数据体系~
展开
-
深入探秘 Netty、Kafka 中的零拷贝技术!
Table of Contents I/O 概念 缓冲区 虚拟内存 mmap+write 方式 Sendfile方式 Java 零拷贝 MappedByteBuffer DirectByteBuffer Channel-to-Channel 传输 Netty 零拷贝 其他零拷贝 总结 零拷贝,从字面意思理解就是数据不需要来回的拷贝,大大提升了系统的性能。我们也经常...翻译 2020-03-24 15:53:48 · 370 阅读 · 0 评论 -
Netty 源码解析 : EventLoop 之 Reactor 模型
Reactor 模型的核心思想: 将关注的 I/O 事件注册到多路复用器上,一旦有 I/O 事件触发,将事件分发到事件处理器中,执行就绪 I/O 事件对应的处理函数中。模型中有三个重要的组件: 多路复用器:由操作系统提供接口,Linux 提供的 I/O 复用接口有select、poll、epoll 。 事件分离器:将多路复用器返回的就绪事件分发到事件处理器中。 事件处理器:处理就绪事件处...原创 2019-07-25 13:52:35 · 711 阅读 · 0 评论 -
Netty 源码解析 : 内存自定义管理实现图解
Java 基本上是自动对内存进行管理,然后内存采用堆外进行管理的案例还是比较少见的. 在 Netty 中,IO 读写必定是非常频繁的操作,而考虑到更高效的网络传输性能,Direct ByteBuffer 必然是最合适的选择。但是 Direct ByteBuffer 的申请和释放是高成本的操作,那么进行池化管理,多次重用是比较有效的方式。但是,不同于一般于我们常见的对象池、连接池等池化的案例...原创 2019-08-06 21:37:00 · 539 阅读 · 0 评论