【发布时间】:2018-05-29 23:04:39
【问题描述】:
在 Google PubSub 中,可以异步调用来自客户端的发布调用。因此,我认为有可能同时触发多个发布请求并将其发送到服务器,尤其是在批处理阈值太低的情况下。
如果是这样,pubsub 客户端如何控制可以创建的同时发布请求的数量?如果创建了太多请求,是否存在硬限制或可能发生的错误?这是使用异步发布者的预期用途,还是只是为了允许其他非发布活动发生?
虽然这个问题适用于任何客户端,但我们特别遇到了 C# 客户端的问题,并且间歇性地收到以下错误:
Grpc.Core.RpcException: Status(StatusCode=DeadlineExceeded, Detail="Deadline Exceeded")
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Google.Api.Gax.Grpc.ApiCallRetryExtensions.<>c__DisplayClass0_0`2.<<WithRetry>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
我的想法是我们发送了太多发布请求...,但我不确定。
【问题讨论】: