Netty是基于Java NIO client-server的网络应用框架,使用Netty可以快速开发网络应用,例如服务器和客户端协议。Netty提供了一种新的方式来开发网络应用程序,这种新的方式使它很容易使用和具有很强的扩展性。Netty的内部实现是很复杂的,但是Netty提供了简单易用的API从网络处理代码中解耦业务逻辑。Netty是完全基于NIO实现的,所以整个Netty都是异步的。
Netty的应用场景
互联网行业
1)互联网行业: 在分布式系统中, 各个节点之间需要远程服务调用, 高性能的RPC框架必不可少,Netty作为
异步高性能的通信框架, 往往作为基础通信组件被这些RPC框架使用。
2)典型的应用有: 阿里分布式服务框架Dubbo的RPC框架使用Dubbo协议进行节点间通信,Dubbo协议默
认使用Netty作为基础通信组件, 用于实现各进程节点之间的内部通信
游戏行业
1)无论是手游服务端还是大型的网络游戏,Java语言得到了越来越广泛的应用
2) Netty作为高性能的基础通信组件, 提供了TCP/UDP和HTTP协议栈, 方便定制和开发私有协议栈, 账号登
录服务器
地图服务器之间可以方便的通过Netty进行高性能的通信
大数据领域
1)经典的Hadoop的高性能通信和序列化组件Avro的RPC框架, 默认采用Netty进行跨界点通信
2)它的Netty Service基于Netty框架二次封装实现。