【发布时间】:2020-12-30 16:23:13
【问题描述】:
我想知道对于 REST API 使用不同的序列化方法的一般意见是什么。 JSON 和 XML 是最流行的,但我想知道 Flatbuffers 中的序列化是否可能是一种可能的替代方案。
服务器端的反序列化在技术上比 JSON 便宜(最大的优势是“零拷贝”读取和大型服务器上的快速序列化响应)。在客户端浏览器上,FB 序列化会比 JSON 慢(JSON 序列/反序列是本机实现的),但我认为这是次要的,因为数据集非常小,用户无论如何都不会注意到差异。
我想 REST 纯粹主义者会说这是禁忌。缺点是:
- 在 REST 中读取 FB 的工具还不存在
- 具有较大数据集的客户端性能不如性能
- 发送的 MIME 类型将是 application/octet,因为 FB 还没有自己的 MIME
这个想法源于我在 gRPC 中使用 FB,现在必须通过浏览器接受请求。从 REST 转换会增加一个额外的序列化步骤(如果我采用类似的方法来使用 gRPC-Web)。
【问题讨论】:
标签: rest flatbuffers