java - 如何为 google pubsub 发布者和订阅者设置超时?

标签 java publish-subscribe google-cloud-pubsub timeoutexception

在我的 java 代码中,我使用 Google -pubsub。

如何设置超时

订阅者 - 等待消息直到超时? (如何设置重试策略?)

发布者 - 等待超时时间发送消息。 (如何设置重试策略?)

我看到了这个post但没能将js帖子翻译成java

这是我如何设置我的子

    final Subscriber subscriber = Subscriber
            .defaultBuilder(subscriptionName, receiver)
            .setChannelProvider(channelProvider)
            .build();

和酒吧

    final Publisher publisher = Publisher.defaultBuilder(topicName)
            .setChannelProvider(channelProvider)
            .build();

最佳答案

最新的Cloud Pub/Sub client library ,您不需要在订阅服务器中设置超时或重试策略。这些都是在后台为您处理的,您只需传递您的 MessageReceiver进入defaultBuilder 。当消息可用时,它们将被发送至 receiveMessage 。如果您的订阅因任何不可重试的原因而停止,则订阅者将被关闭。您可以调用 addListener 收听这些通知在您的订阅者上。

在发布器上,您可以使用setRetrySettings在生成器中。特别是,您想要 setTotalTimeout在 RetrySettings.Builder 上。发布者将在总截止日期之前重试可重试错误的发布调用。

关于java - 如何为 google pubsub 发布者和订阅者设置超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44870981/

相关文章:

javascript - 发布/订阅API设计: Unsubscribe and Update

java - 使用 Guava 中的 Iterables 的 ClassCastException

java - apache tomcat java-web 服务上的 NoEndPointException()

Java XML 验证和 MTOM

c# - 从 Sentinel C# 获取 Redis Master 地址

angular - RxJs:在 subscribe() 中使用 try/catch 是否正确?

c# - 使用 GCloud 模拟器的 Google Cloud PubSub V1

java - 谷歌发布-订阅 setMaxMessages

java - SpinLock 可扩展性和限制

python - 导入错误: cannot import name pubsub_v1