h2c/grpc 遗留问题
作者: jamesge创建于 2018年9月29日更新于 2026年9月13日
标签official
- 明确一些边缘header的设置规则,比如[grpc-]accept-encoding, grpc-timeout
- 改进服务器端判断客户端是否支持gzip的方法,客户端不一定要设置accept-encoding
- grpc不支持application/grpc+json
- 考虑移除x-bd-error-code x-bd-log-id等字段的可行性。
- http/h2c支持snappy压缩。(deflate就没必要支持了)
- http_verbose排版不对,且不是原子写出,多线程下可能交叉
- protocol支持传递协议参数
- 支持ProgressiveAttachment和ProgressiveReader
- http2协议名从h2c改为h2,根据ssl状态动态显示为h2c或h2
- http2/grpc文档
- 当h2response的包体长度大于remote window size时,当前的做法是直接返回RST_STREAM,更好的做法是等到收到window_update再发,just like tcp。
- (Bug)由于连接建立完成后,H2的setting和req是一起发送的,此时客户端发送一个包体大于默认值的包,会发送失败,那么setting也发不出去,服务器也不会发送任何Setting,相当与不会收到任何消息
- grpc支持streaming rpc
- 文档说明http2未实现的功能。
- 支持rpc dump和rpc replay
内容来源: apache/brpc