3. netty 课程大纲 - mrwang1992/netty_student GitHub Wiki
netty 介绍
- 上节课做过
netty 架构实现
netty 模块分析
netty http tunnel
- netty对http的支持
netty对socket的实现
netty 压缩与解压缩
netty对rpc的支持
-
直接对 google protobuf支持
-
WebSocket
一些介绍
随着 HTTP2.0 一起发布的, 支持长链接的形式
交互模式 客户端会要求服务端升级,如果升级成功,就会建立一个全双工模式,服务端与客户端就对等可以及时发送数据变化
相别与之前请求响应式模型
会有心跳包的概念,不然会超时断开 和tcp的机制差不多
websocket实现与原理分析
websocket连接建立方式与生命周期分析
websocket服务端与客户端开发
RPC框架分析
一些介绍
客户端生成的代码叫做 stub
服务器生成的代码叫做 skeleton
- RPC 其实提供的类型是所支持语言的一个交集
google protobuf 使用方式分析
-
Protocol buffers are a language-neutral, platform-neutral extensible mechanism for serializing structured data.
-
语言中立,平台中立: 无所谓与用什么语言或者平台,因为库实现了其中间转换
-
只是一个google提供的序列化结构化的库,更为小巧更快,只需要定义一个数据结构说明文件,就可以用工具生成代码进行数据交互
Apache Thrift
-
facebook 推出
-
可伸缩,跨语言 的一个RPC框架
netty大文件传输支持
可扩展的事件模型
零拷贝在netty中的实现与支持
TCP黏包与拆包分析
NIO模型在netty中的实现
- 以及 nio 在java中的实现