
获得徽章 0
#青训营 x 字节后端训练营#
DAY4--RPC 1
编解码层
IDL文件,Client和Server依赖同一份IDL文件能够生成不同语言的CodeGen
数据格式
语言特定格式:如Java的java.io.Serializable
文本格式:JSON,XML,CSV
二进制编码:优点是跨语言,高性能,常见的有Thrift的BinaryProtocol,Protobuf等
举例TLV编码(Tag,Length,Value)
选型:
兼容性:支持自动增加新的字段,不影响老的服务,提高系统灵活度,
通用性:跨平台、语言,
性能:时空,编码后数据大小和编码耗费时间
协议层
概念:两种常见类型协议
特殊结束符:一个特殊字符作为每个协议单元结束的提示
变长协议:以定长+不定长部分组成,其中定长部分描述不定长的内容长度
协议构造举例
协议解析
网络通信层 Socket API
网络库考察指标
提供易用API
功能:协议支持,退出,异常处理
性能
DAY4--RPC 1
编解码层
IDL文件,Client和Server依赖同一份IDL文件能够生成不同语言的CodeGen
数据格式
语言特定格式:如Java的java.io.Serializable
文本格式:JSON,XML,CSV
二进制编码:优点是跨语言,高性能,常见的有Thrift的BinaryProtocol,Protobuf等
举例TLV编码(Tag,Length,Value)
选型:
兼容性:支持自动增加新的字段,不影响老的服务,提高系统灵活度,
通用性:跨平台、语言,
性能:时空,编码后数据大小和编码耗费时间
协议层
概念:两种常见类型协议
特殊结束符:一个特殊字符作为每个协议单元结束的提示
变长协议:以定长+不定长部分组成,其中定长部分描述不定长的内容长度
协议构造举例
协议解析
网络通信层 Socket API
网络库考察指标
提供易用API
功能:协议支持,退出,异常处理
性能
展开
评论
点赞
赞了这篇文章