gpt4 book ai didi

google-cloud-platform - Google PubSub Pull 与 Streaming Pull 的区别

转载 作者:行者123 更新时间:2023-12-03 22:48:24 24 4
gpt4 key购买 nike

我正在阅读 documentation来自谷歌关于拉与流拉,但不能完全理解。有人可以向我解释差异,如果有人实现了它并且可以向我指出资源,这也会有所帮助。
非常感谢。

最佳答案

使用 Cloud Pub/Sub pull 时,发送 PullRequest 并收到一个 PullResponse 最多包含请求中指定的消息数(如果在获取消息时出现问题,则会出现错误)。每个请求都有一个对应的响应。通过流式拉取,发送 StreamingPullRequest ,它打开一个流,沿着它接收数据。当流打开时,Cloud Pub/Sub 将发送 StreamingPullResponse 只要消息可用于传送,就会有更多消息。单个请求可能导致多个响应。

一般来说,为了获得最高的吞吐量和最低的延迟,流式拉取是正确的选择。流式拉取会保持与 Cloud Pub/Sub 的连接打开,因此消息一可用就可以发送到该连接。仅使用 pull 来实现这些属性可能很困难。如果没有流,消息只能在显式请求进来时传送。这些消息可能已经准备好传送一段时间了。为了通过拉取实现高吞吐量和低延迟,必须同时拥有许多未完成的请求,一旦旧请求收到响应,就会创建新请求。当订阅者需要对消息到达的时间进行更多控制并且延迟/吞吐量不是问题时,使用拉取是有意义的。

Cloud Pub/Sub client libraries建立在流式拉取之上,因此如果您可以使用其中之一,则可以避免直接实现流式拉取调用。所有客户端库都是开源的,因此如果您想查看直接进行流式拉取调用的示例,您可以查看代码。例如,Java 有 StreamingSubscriberConnection .

关于google-cloud-platform - Google PubSub Pull 与 Streaming Pull 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56191518/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com