【事件中心 Azure Event Hub】关于EventHub中出现Error时候的一些问题(偶发错误,EventHub后台升级,用户端错误,Retry机制的重要性)

请问对偶发的定义是多少频率?

针对偶发的定义,主要是看发生的时间非常短,次数极少( 10次以内),并且发生的时候EventHub其他分区或其他连接都是正常接收和发送数据。所以对于频率是没有明确的定义的,这个需要根据每次发生的情况来分析。由于Event Hub SDK都考虑了这样短暂出现连接性的情况,所以默认都启动了重试机制。这样能解决绝大多数的连接异常问题。

连接问题重连成功的最短间隔是多少?请问有没有经验值?

在查看源码发现默认的Timeout时间设置为60秒,关于最短时间并没有文档明确说明。这里需要从业务上来判断。以防万一,在极端情况下也需要考虑时效过期的情况。

 

(源码地址:https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/eventhub/Azure.Messaging.EventHubs/src/EventHubsRetryOptions.cs

Server Error的详细内容

一般server error并不需要太关注,这个并不意味着service bus会丢失目前处理的情况,客户端SDK会自动重试。

关于server error的介绍github上也有文档说明

 

User Error的详细内容

通常来讲,发生在客户端的异常都归为是User Errors。而关于客户端发生异常的分类,可以参考SDK中对Exception部分的介绍:https://azuresdkdocs.blob.core.windows.net/$web/java/azure-messaging-eventhubs/5.0.0-beta.6/overview-summary.html#common-exceptions

 

posted @ 2020-09-08 20:53  路边两盏灯  阅读(50)  评论(1编辑  收藏