【Netty】读书笔记 - 跟闪电侠学
1. 内容概要
2.1 IO编程
1. 什么是IO编程?
- Input Stream :数据从外面(磁盘、网络)流进内存
- Output Stream:数据从内存流到外面去
- IO编程:内存和磁盘/网络交互数据的编程
2.2 NIO编程
1. 什么是NIO编程?
| IO | NIO |
线程 | 一个连接一个线程 | 两个(均在服务器端) 网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了衡阳县免费建站欢迎大家使用!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吧。这句话不理解,后面再更新这里的心得
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
网站栏目:【闪电侠学netty】第2章Netty是什么-创新互联
文章分享:
http://cdweb.net/article/dehcoo.html