Google cloud platform 高效的Google PubSub发布

Google cloud platform 高效的Google PubSub发布,google-cloud-platform,google-cloud-pubsub,Google Cloud Platform,Google Cloud Pubsub,PubSub的文档声明解码后的最大有效负载为10MB。我的问题是,在发布之前压缩发布服务器上的有效负载以增加数据吞吐量是否有利 如果有效负载具有像json格式的有效负载那样的高压缩比,这尤其有用。如果您希望在PubSub上提高效率,我将首先集中精力使用最好的API,这就是gRPC API。如果您正在使用客户端库,那么无论如何,使用gRPC的可能性很高。为什么是gRPC gRPC是二进制的,您的有效负载不需要通过环来进行加密 REST需要将有效负载设置为base64,使其更大,并具有额外的编码步

PubSub的文档声明解码后的最大有效负载为10MB。我的问题是,在发布之前压缩发布服务器上的有效负载以增加数据吞吐量是否有利


如果有效负载具有像json格式的有效负载那样的高压缩比,这尤其有用。

如果您希望在PubSub上提高效率,我将首先集中精力使用最好的API,这就是gRPC API。如果您正在使用客户端库,那么无论如何,使用gRPC的可能性很高。为什么是gRPC

  • gRPC是二进制的,您的有效负载不需要通过环来进行加密
  • REST需要将有效负载设置为base64,使其更大,并具有额外的编码步骤
第二,如果可能的话,我会尝试批处理消息,减少呼叫次数,消除一些延迟

最后我会看一下压缩,但这意味着你需要在订阅服务器上专门对其进行反压缩。这意味着您的应用程序代码将变得更加复杂。如果你所有的工作负载都在谷歌云平台上,我就不用担心压缩了。如果你的工作负载在GCP之外,你可以考虑它,但是测试是有意义的。 如果您的模式是稳定的,另一种压缩方法是使用ProtoBuf

最后,我要:

  • 确保您使用gRPC
  • 在可能的情况下批量生产
  • 仅在需要时和基准测试后压缩(意味着应用程序中有额外的逻辑)

  • 我还有一个关于pubsub的悬而未决的问题,如果你碰巧知道答案。。。