您的位置:首页 > 理论基础 > 计算机网络

netty学习01

2016-08-18 15:42 375 查看
Netty介绍

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

Netty是一个NIO的客户端服务器框架,可以快速和简单开发网络应用(比如开发协议的服务器和客户端),大大简化并提高了网络编程的效率(比如开发TCP和UDP socket 服务器)。“快和简单”并不意味着基于Netty所开发的应用会有性能和维护性的问题。Netty从实现很多的协议中获得很多的经验,比如FTP、SMTP、HTTP、许多二进制和text-based遗留(legacy)协议。因此,Netty已经成功的找到了一条道路,达到了开发的简单性、性能、稳定性和扩展性的平衡,不需要任何一方面的妥协。

特性

Netty为了提供最好的网络应用开发经验,从头开始进行了设计和编写:

设计

对于多样的传输类型拥有统一的API - 阻塞的和非阻塞的socket。
基于灵活和易于扩展的事件驱动模型
高度自定义的线程模型-单线程,一个或者多个线程池,例如SEDA
真正的无连接 datagram socket支持。(从3.1开始)


易用性

完善的文档支持:Javadoc、用户指南和实例。

除了依赖JDK1.5(或者以上)包之外,不依赖额外的包。


性能

低延迟、更好的吞吐率
更少的资源消耗
最小化不必要的内存拷贝


健壮性

不再有 由于快速、慢或者过载连接导致的OutOfMemoryError。
不再有高速网络下的NIO应用存在的不公平读/写比问题。


安全

完善的SSL/TLS和StartTLS支持。
在限制的环境中比如Applet可以很好的运行。


文章转自:http://ryanflyer.iteye.com/blog/1670039
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息