Netty学习(一):简介

当前版本4.1

Netty是什么?

Netty是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。

Netty是一个NIO客户机-服务器框架,它支持快速、简单地开发网络应用程序,如协议服务器和客户机。它大大简化了网络编程,如TCP和UDP套接字服务器。

“快速和简单”并不意味着生成的应用程序将受到可维护性或性能问题的影响。Netty经过精心设计,并积累了许多协议(如ftp、smtp、http)的实施经验,以及各种二进制和基于文本的遗留协议。因此,Netty成功地找到了一种方法,在不妥协的情况下实现了易于开发、性能、稳定性和灵活性。

Netty的特性

设计

  • 各种传输类型的统一API-阻塞和非阻塞套接字
  • 基于一个灵活的可扩展事件模型,该模型允许清晰的关注点分离
  • 高度可定制的线程模型-单线程、一个或多个线程池(如SEDA)
  • 真正的无连接数据报套接字支持(从3.1开始)

易用性

  • 有据可查的JavaDoc、用户指南和示例
  • 没有其他依赖项,JDK 5(netty 3.x)或6(netty 4.x)就足够了
  • 注意:一些组件(如HTTP/2)可能有更多的要求。有关更多信息,请参阅需求页面。

性能

  • 更好的吞吐量,更低的延迟
  • 减少资源消耗
  • 最小化或不必要的内存复制,零拷贝技术

安全

  • 完整的SSL/TLS和StartTLS支持

社区

  • 提前释放,经常释放
  • 作者自2003年以来一直在写类似的框架,他仍然觉得你的反馈是宝贵的!

Netty架构

Netty学习(一):简介_第1张图片

 

你可能感兴趣的:(Netty)