Netty 是基于 Java NIO 的异步事件驱动的网络应用框架,使用 Netty 可以快速开发网络应用,Netty 提供了高层次的抽象来简化 TCP 和 UDP 服务器的编程。
Netty的作用于哪方面?
Netty 是一个广泛使用的 Java 网络编程框架,像大型公司 Facebook 和 Instagram 以及流行 开源项目如 Infinispan, HornetQ, Vert.x, Apache Cassandra 和 Elasticsearch 等,都利用其强大的对于网络抽象的核心代码。反过来,Netty 也从这些开源项目中获益。随着这些项目的作用,Netty 也不断提高了其应用的范围和灵活性,比如已经实现了的协议就有 FTP, SMTP, HTTP, WebSocket 和 SPDY 以及其他二进制和基于文本的协议。
(图片来自网络侵删)很多同学们都苦于没有一份好的Netty学习资料而发愁,今天小轩特意给大家来解决这个问题。一份阿里大佬珍藏的PDF学习笔记带给大家,整整8W字。希望对大家有所帮助,那么接下来就和小轩一起来看看这份Netty实战笔记吧。
由于文章篇幅受限,部分内容只能以截图的方式展示出来,需要完整版PDF的小伙伴可以后台私信【笔记】获取。
Netty的概念及体系结构Netty是一款用于创建高性能网络应用程序的高级框架。在第一部分,我们将深入地探究它的能力,并且在3个主要的方面进行示例:
使用Netty构建应用程序,你不必是一名网络编程专家;
使用Netty 比直接使用底层的JavaAPI容易得多;
Netty推崇良好的设计实践,例如,将你的应用程序逻辑和网络层解耦。
Netty——异步和事件驱动你的第一款Netty应用程序
Netty 的组件和设计
传输
ByteBuf
ChannelHandler和 ChannelPipeline
EventLoop和线程模型
引导
单元测试
编解码器
在第二部分我们将研究Netty所提供的解码器类,并提供关于何时以及如何使用它们的具体示例。这些类覆盖了两个不同的用例
编解码器框架网络协议
WrebSocket是一种为了提高Web 应用程序的性能以及响应性而开发的先进的网络协议。我们将通过编写一个简单的示例应用程序来探索Netty 对它们的支持。
WebSocket使用UDP广播事件
案例研究
案例研究。第14章是关于Droplr、Firebase和 Urban Airship 的项目。第15章讨论了在 Facebook 和 Twitter所完成的工作。
这些项目所描述的范围从核心的基础架构组件到移动服务以及新的网络协议,同时还包括了两个用于执行远程过程调用(RPC)的项目。在所有的这些案例中,你都将会看到这些组织已经通过Netty实现。学到的相同的性能以及架构方面的优势。
案例研究,第一部分案例研究,第二部分
好啦,今天的分享就到这里啦。希望对大家有所帮助。
由于文章篇幅受限,部分内容只能以截图的方式展示出来,需要完整版PDF的小伙伴可以点赞+收藏。关注小轩后台私信【笔记】获取。@马小轩QAQ