五、Netty
概述
1、介绍
1)Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、基于事件驱动的网络应用程序框架,用于快速开发高性能、高可靠的网络IO程序。
2)Netty可以帮你快速、简单的开发一个网络应用,相当于简化和流程化NIO的开发过程。
3)Netty是目前最流行的NIO框架。
2、优点
1)设计优雅。
适用于各种传输类型的统一API阻塞和非阻塞Socket;
基于灵活且可扩展的事件模型。可以清晰的分离关注点;
高度可定制的线程模型-单线程,一个或多个线程池。
2)使用方便。
详细的记录javadoc,用户指南和实例
3)高性能、吞吐量更高。
延迟更低;减少资源消耗;最小化不必要的内存复制;
4)安全。
完整的SSL/TLS和StartTLS支持。
5)社区活跃、不断更新。
Reactor
1、基本介绍
1)根据Reactor的数量和处理资源池线程数量不同,有3种典型实现
单Reactor 单线程
单Reactor 多线程
主从Reactor 多线程
2)Netty线程模式
基于主从Reactor 多线程模型做了一定的改进,其中主从Reator多线程模型有多个Reator
3)Netty模型
Netty模型