使用Protobuf FieldMask Netflix实用API设计第1部分 (使用PROTEUS软件设计仿真电路图,则电路图的后缀名为)

使用Protobuf FieldMask Netflix实用API设计第1部分 (使用PROTEUS软件设计仿真电路图,则电路图的后缀名为)

在 Netflix,我们大量使用 gRPC 来实现通信。当我们处理请求时,了解调用者对哪些字段感兴趣以及会忽略哪些字段通常是有益的。有些响应字段的计算成本可能会很高,有些字段可能需要对其他服务进行远程调用。远程调用从来都不是免费的;它们造成了额外的延迟,增加了出错的概率,并消耗了网络带宽。我们需要知道哪些字段不需要在响应中提供给调用者,从而避免进行不必要的计算并删除该调用方法。在 GraphQL 中,这可以通过使用字段选择器来实现。在 JSON:API 标准中,一个类似的技术被称为稀疏字段集(Sparse Fieldsets)。在设计 gRPC API 时,我们是如何实现类似功能的呢?我们在 Netflix Studio Engineering 中使用的解决方案是 protobuf FieldMask。

声明:本文来自用户分享和网络收集,仅供学习与参考,测试请备份。