美团架构师精心整理Netty实战,墙裂推荐Netty实战实践学习文档
前言
Netty 是一款用于快速开发高性能的网络应用程序的 Java 框架。它封装了网络编程的复杂性,使网络编程和 Web 技术的最新进展能够被比以往更广泛的开发人员接触到。
Netty 不只是一个接口和类的集合;它还定义了一种架构模型以及一套丰富的设计模式。但是直到现在,依然缺乏一个全面的、系统性的用户指南,已经成为入门 Netty 的一个障碍,这种情况也是本旨在改变的。除了解释该框架的组件以及 API 的详细信息之外,本书还会展示 Netty如何能够帮助开发人员编写更高效的、可复用的、可维护的代码。
适合人群
本实战文档假定读者熟悉中等级别的Java主题,如泛型和多线程处理。不要求有高级网络编程的经验,但是熟悉基本的Java网络编程API将大有裨益。
Netty使用Apache Maven作为它的构建管理工具。如果读者还未使用过Maven,那么附录将会为读者提供运行本书标例代码所需要的信息。读者也可以复用这些示例的Maven配置,作为自己的基于Netty的项目的起点。
目录
第一部分
第二部分
第三部分
话不多说,下面直入主题:
关于Netty我也有自己独到的见解,下面给大家分享我对Netty的一些运用及看法!
第一部分:Netty 的概念及体系结构
第一部分是对框架的详细介绍,涵盖了它的设计、组件以及编程接口。
第 1 章首先简要概述了阻塞和非阻塞的网络 API,以及它们对应的 JDK 接口。我们引入 Netty
作为构建高度可伸缩的、异步的、事件驱动的网络编程应用的工具包。我们将首先看一下该框架
的基础构件块:Channel、回调、Future、事件及 ChannelHandler。
第 2 章解释了如何配置读者的系统以构建并运行本书中的示例代码。我们将用一个简单的应
用程序来测试它,这是一个回送从连接的客户端接收到的消息的服务器应用程序。我们还介绍了
引导(Bootstrap)——在运行时组装和配置一个应用程序的所有组件的过程。
第 3 章首先讨论了 Netty 的技术以及体系结构方面的内容。介绍了该框架的核心组件:
Channel、EventLoop、ChannelHandler 以及 ChannelPipeline。这一章的最后解释了
引导服务器和客户端之间的差异。
第 4 章讨论了网络传输,并且对比了通过 JDK API 和 Netty 使用阻塞和非阻塞传输的用法。
我们研究了 Netty 的传输 API 的底层接口的层级关系以及它们所支持的传输类型。
第 5 章专门介绍了该框架的数据处理 API——ByteBuf,Netty 的字节容器。我们描述了它
相对于 JDK 的 ByteBuffer 的优势,以及如何分配和访问由 ByteBuf 所使用的内存。我们展
示了如何通过引用计数来管理内存资源。
限于头条篇幅原因,为了不影响大家更好的阅读,小编把整篇文档整理打包好了,有感兴趣的程序员(媛)可以帮忙转发下此文后关注我私信回复【架构书籍】获取完整文档!
限于头条篇幅原因,文档内容较多,我只截取出一部分内容,有感兴趣的程序员(媛)可以帮忙转发下此文后关注我私信回复【架构书籍】获取完整文档!