购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.2 初识Netty

Netty是一个高性能的、异步事件驱动的、基于Java NIO实现的网络通信框架,是由JBoss所提供支持的Java开源网络编程框架。

1.2.1 Netty特点

Netty对Java NIO API进行了高效的封装,提供了对TCP、UDP和文件传输的良好支持,尤其适用于互联网中的大数据和分布式的应用开发。Netty在业内广受好评,主要源于以下特点:

· 高并发:Netty自身具有吞吐量大、延迟时间短、传输速度快和资源消耗低的高并发处理性能。

· 封装好:Netty很好地封装了Java NIO各种细节,尤其是针对阻塞和非阻塞进行了优化,提供了简单易用的API。

· 安全性:Netty提供了完整的SSL/TLS和StartTLS支持。

· 文档丰富:Netty具有详细完整的Javadoc、用户指南及实用案例,便于开发人员学习使用。

· 社区支持:Netty的相关社区活跃度高、版本迭代周期短,新发现的Bug会被及时修复,新功能会被及时更新。

1.2.2 搭建Netty开发环境

Netty开源框架是基于Apache License v2.0标准发布的,读者可以在其官方网站(https://netty.io)上找到最新版本的Netty开发包(Netty 4.x),以及一些旧版本开发包,如图1.3所示。

图1.3 下载Netty最新版开发包

从图1.3中可以看到,当前最新的Netty版本号为“4.1.48.Final - 17-Mar-2020”。当然,读者也可以选择一些旧版本进行下载。

仅仅下载了Netty开发包是什么也做不成的,如果打算开发Netty应用还需要JDK的支持,因为Netty就是基于JDK所开发的。另外,Netty对于JDK版本没有强依赖关系,一般Netty 3.x对应JDK 1.5版本,而Netty 4.x对应JDK 1.6+版本即可。不过笔者还是建议使用最新的JDK 1.8版本。

关于JDK的安装与配置这里就不过多介绍了,相信大多数读者应该有这方面的基础。我们需要先配置好JDK开发环境后,才可以继续安装Netty开发包。

(1)选择当前最新版的Netty开发包文件(名称为netty-4.1.48.Final.tar.bz2),先直接解压到本地目录,如图1.4所示。

图1.4 解压Netty开发包

(2)如图1.4中的箭头所示,继续进入解压后的文件夹(名称为netty-4.1.48.Final)内找到名称为“jar”的文件夹,如图1.5所示。

图1.5 Netty目录下“jar”文件夹

(3)如图1.5中的箭头所示,继续进入解压后的文件夹(名称为netty-4.1.48.Final)内找到名称为“all-in-one”的文件夹,如图1.6所示。

图1.6 Netty目录下“all-in-one”文件夹

(4)如图1.6中的箭头所示,继续进入“all-in-one”文件夹内找到我们最终需要的jar文件(名称为netty-all-4.1.48.Final.jar),如图1.7所示。

图1.7 netty-all-4.9.2.Final.jar

(5)如图1.7中的箭头所示,netty-all-4.1.48.Final.jar文件是Netty框架开发所需要的核心文件,后面会介绍如何使用该文件。

1.2.3 Netty开发工具——IntelliJ IDEA

下面介绍Netty开发工具的选择。原则上,Netty属于Java应用程序一类,目前开发Java应用的平台工具主要就是IntelliJ IDEA或Eclipse。这里,我们以IntelliJ IDEA开发工具为例进行介绍,如图1.8所示。

图1.8 IntelliJ IDEA开发工具平台

图1.8中展示的就是IntelliJ IDEA开发工具的主界面。在下一小节中,我们通过一个简单的Netty会话应用介绍如何使用Netty开发环境。

注意: IntelliJ IDEA是一款付费软件,但可以免费使用30天。 h3iYuVNIZFyQ77NFU5Kk13KDYykqcK9H88h0cK+oKPRrCwLZMRDPwM629fPLIwdF

点击中间区域
呼出菜单
上一章
目录
下一章
×