【闪电侠学netty】第2章 Netty是什么

【Netty】读书笔记 - 跟闪电侠学

1. 内容概要

2.1 IO编程

1. 什么是IO编程?

  • Input Stream :数据从外面(磁盘、网络)流进内存
  • Output Stream:数据从内存流到外面去
  • IO编程内存和磁盘/网络交互数据的编程

2.2 NIO编程

1. 什么是NIO编程?

  • NIOnew input/output
IONIO
线程一个连接一个线程

两个(均在服务器端

serverSelector:轮询是否有新的连接

clientSelector:轮询连接是否有可读数据

读写面向流Stream面向Buffer
读写效率低:一次性只能从流中读取一个或多个字节:任意读取任何数据
缓存数据需要自己缓存无须缓存,移动指针读写


2.3 Netty编程

1. 什么是Netty?

  • 异步事件驱动网络应用架构
  • 封装JDK的NIO,使用更方便

2. Netty不使用原生NIO的原因?

  • 简易性:原生NIO需要了解概念太多,API反人类,编程复杂,易出错
  • Netty底层NIO和IO模型随意切换
  • 自带拆包/粘包,异常检测等机制,程序员只需关心业务逻辑
  • 解决JDK的BUG,如空轮询
  • Reactor线程模型高效的并发处理
  • 自带各种协议栈:无须自己实现
  • 社区活跃
  • 健壮性:经历各大RPC框架、消息中间件、分布式通讯中间件的广泛验证

3. netty maven依赖 + Java 快速入门

点击进入

2. 心得

  • Netty完美封装NIO,代码优雅
  • Netty几乎不用操心网络通讯性能问题,尽情地让Netty榨干你的CPU吧。这句话不理解,后面再更新这里的心得
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ladymorgana

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值