前言
Netty 是一款基于 NIO(非阻塞 I/O)开发的网络框架,与传统 BIO 相比,它的并发性能得到了很大的提高,而且更加节省资源。Netty 不仅封装了 NIO 操作的很多细节;在设计上还基于灵活、可扩展的事件驱动模型与高度可定制的线程模型,让 Netty 的应用更加灵活。作为一个被广泛使用的 Java 网络编程框架,Netty 在互联网领域、大数据分布式计算领域、游戏行业、物联网行业等都得到了广泛的应用。很多流行的大数据框架的核心通信模块也都使用的是 Netty,如 Elasticsearch、HBase、Flink 等。
本文将带领大家深入解读 Netty 底层核心源码及架构设计;全面分析 Netty 特性,掌握多线程实战技巧!
目录
主要内容
本文包含大量的分布式底层架构的编写,涉及多线程、负载均衡算法、性能调优、线上问题紧急处理等内容。本文通过非常简易的代码来讲解 Netty 在企业中的实际用法,通过对实例进行调试的方式对 Netty 源码进行了详细的剖析,力图使读者通过实际操作快速入门,并深入了解 Netty 底层的各个组件。
第 1 章 Netty 基础篇;本章虽然是 Netty 的基础应用部分,但是涉及 Java 多线程交互、Netty 客户端与服务端的长连接通信,为编写分布式 RPC 打好了基础。在进行后续的 Netty 多线程编程时,会遇到各种问题。例如,从表面上看,Netty 客户端只用一条线程就能完成与服务端的数据交互,为何要使用线程组?然而在实际应用中,