brpc
brpc copied to clipboard
baidu-std协议支持传输任意格式的数据
现状说明 baidu-std协议目前支持传输任意类型的request,但是不支持解析任意类型的response,目前内部版本已经实现了baidu-std协议下支持传输任意类型的数据格式
需求描述 用户可以通过baidu-std协议传输任意格式的数据,比如:string,json等等,用户自己对数据进行打包和解包,rpc框架不需要关心
实现方案
- 新增SerializedResponse类(参考SerializedRequest)
- 在baidu-std协议ProcessRpcResponse函数中判断 cntl->response()->GetDescriptor() == SerializedResponse::descriptor()
Hi @serverglen,如果已经有实现的话,是否可以提交上来呢
Hi @serverglen,如果已经有实现的话,是否可以提交上来呢
嗯,这几天提交上来。
Hi @serverglen,如果已经有实现的话,是否可以提交上来呢
@lorinlee 已提交 #1457
对于brpc网关的场景(A(client) -> B(gateway) -> C(server)),server是一个普通的brpc服务,支持baidu协议。我们期望B发出去的数据格式是json的时候,C也能序列化成pb Message。A可以是多语言client,只要按照B的协议格式设置好路由策略、方法、数据即可。