Google Pub/Sub 性能(低负载下的延迟)?

Google Pub/Sub performance (latency under low load)?

我们即将选择 Google Cloud Pub/Sub 作为我们的消息总线。一些消息需要在低延迟持续时间内发送,例如小于 100-200 毫秒。

我在某处读到,在大量消息中,它表现良好,但对于较小的数量(例如每秒数百条消息),Pub/Sub 可能会产生高延迟。

而且在上一个问题中,主题也不清楚。 what's google cloud pub/sub latency 从 2016 年开始。

关于Pub/Sub延迟以及与消息量的关系是否有任何定义的指标?

Cloud Pub/Sub was designed 考虑到大量消息,因此如果消息吞吐量太低,预计它有时会遇到困难。这与 Pub/Sub 如何平衡侦听器之间的拉取请求有关。

回到你的问题,没有关于此行为的定义指标,也没有最小延迟或你可以说它被视为 "high load" 的神奇消息数。实际上它取决于工作人员的数量、批量大小、每条消息的处理时间等因素

我发现另一个 更详细地讨论了 Pub/Sub 的有效用例(每秒数千条消息)以及为什么建议云使用高负载Pub/Sub.

编辑:

扩展此主题,向 Pub/Sub 实现添加异步层有助于提高其性能,包括低消息量场景中的延迟。 Spotify 在与 Pub/Sub 合作时意识到了这一点并创建了 their own Async Cloud Pub/Sub Client. They now recommend using Google's java client,但值得将此信息考虑在内