讲解Java中网络编程的高级知识,Java NIO和Netty网络框架等各种异步通信框架,为Java和中间件体系的学习打下坚实基础。
时间2天。
NIO概述
- 网络编程
- IO读写
- 同步调用
- 异步调用
- 常见的4种IO模型
- 经典服务器设计
- Reactor 模式
- Reactor 优缺点
- Proactor
- Proactor 操作图
- Java NIO
- Java 网络编程
- BIO知识体系
- NIO技术发展
- Netty项目
- Netty架构
- Netty架构图
- Netty范例
- 服务器执行过程
Java NIO详解
- Buffer类
- 缓冲区标识
- 缓冲区处理
- 直接缓冲区
- 缓冲区反转
- ByteBuffer
- 缓冲区分片
- 其他操作
- 通道 Channel
- AsynchronousChannel
- 读取通道
- 写入通道
- ByteChannel
- NetworkChannel
- 四种重要通道
- FileChannel
- 高效访问
- 锁定操作
Java NIO网络部分
- 选择器 Selector
- 选择通道 SelectableChannel
- SelectionKey
- 选择器状态变化
- 范例
- JDK Charset
NIO2
- 新增文件相关包
- NIO2新特性
- 文件系统
- FileStore功能
- Paths 文件定位
- 管理文件属性
- 文件属性 View
- BasicFileAttributeView方法
- 随机位置访问文件
- 遍历文件树
- 遍历过程
- 监视目录
- 异步IO
- AsynchronousByteChannel
- AsynchronousFileChannel
- 文件异步操作
- 异步Socket通道
Netty详解
- Channel
- EventLoop
- EventLoop 处理图
- 父子通道
- ChannelHandler
- ChannelHandler典型用途
- ChannelPipeline
- ChannelPipeline
- Bootstrap
- ServerBootstrap 启动流程之一
- ServerBootstrap 启动流程之二
- ServerBootstrap 启动流程之三
- 内置的传输方式
- Epoll
- ByteBuf
- ByteBuf 优点
- ByteBuf工作方式
- 内存模式
- 复合缓冲区
- 缓冲区操作
- 缓冲区视图和复制
- ByteBufAllocator
- 引用计数
- Channel状态
- ChannelHandler 生命周期
- ChannelInboundHandler 接口
- 消息引用技术
- ChannelOutboundHandler 接口
- Pipeline操作
- ChannelHandlerContext
- 头尾上下文
- 编解码器
- Decoder
- 常用内置解码器
- Encoder
- 抽象的编解码器类
- HTTP编解码器
- 半包问题
其他Java网络开发框架
- Apache Mina
- Mina特性
- Mina代码示例一
- Mina代码示例二
- Grizzy项目
- Grizzy 特性
- Grizzy范例
JDK内部Http支持
- Http Client
- Http server
- Http server 示例
NIO总结
- IO知识
- Java NIO
- Netty
- 其他网络框架