Netty学习(一:基本介绍)

1、netty是什么?

进入netty官网,可以看到这么一段信息

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

接着下面有一段简述如下

Netty是一个NIO客户端服务器框架,它能够快速、轻松地开发网络应用程序,如协议服务器和客户端。它极大地简化网络编程,如TCP和UDP套接字服务器。

“快速和简单”并不意味着得到的应用程序将受到可维护性或性能问题的影响。Netty是经过精心设计的,使用了从许多协议(如FTP、SMTP、HTTP和各种二进制和基于文本的传统协议)的实现中获得的经验。因此,Netty成功地找到了一种方法,可以在不妥协的情况下实现开发的易用性、性能、稳定性和灵活性。

简单来说:

1.Netty 是一个 基于 NIO 的 client-server(客户端服务器)框架,使用它可以快速简单地开发网络应用程序。

2.它极大地简化并优化了 TCP 和 UDP 套接字服务器等网络编程,并且性能以及安全性等很多方面甚至都要更好

3.支持多种协议 如 FTP,SMTP,HTTP 以及各种二进制和基于文本的传统协议

 

2、netty可以用来做什么(应用场景)?

Netty主要还是用来做网络通信(相比于使用JDK 自带的NIO来说,Netty都可以做的更好)

1.作为RPC(Remote Procedure Call:远程过程调用)框架的网络通信工具

2.实现自己的一个Http服务器

3.即时通讯系统

4.消息推送系统

 

3、为什么要用netty?

1.统一的 API,支持多种传输类型,阻塞和非阻塞的(BIO/NIO)

2.简单而强大的线程模型(EventLoopGroup)

3.自带编解码器解决 TCP 粘包/拆包问题

4.自带各种协议栈(HTTP,FTP,SMTP等)

5.真正的无连接数据包套接字支持

6.比直接使用 Java 核心 API 有更高的吞吐量、更低的延迟、更低的资源消耗和更少的内存复制

7.安全性不错,有完整的 SSL/TLS 以及 StartTLS 支持

8.社区活跃

9.成熟稳定,经历了大型项目的使用和考验,而且很多开源项目都使用到了 Netty, 比如我们经常接触的 Dubbo、RocketMQ 等  等

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值