azureservicebus - 故障转移可能存在哪些服务总线异常?
问题描述
我在我的系统中使用服务总线,并希望利用高级层服务总线的故障转移功能https://github.com/Azure/azure-service-bus/tree/master/samples/DotNet/Microsoft.ServiceBus.Messaging/ GeoDR/SBGeoDR2/SBGeoDR2 我看到很少有代码示例可以帮助我执行此操作,但主要问题是何时通过代码执行故障转移,因为我们是自动执行此操作而不是手动执行此操作。
我想到的一种解决方案是使用 Polly ( https://github.com/App-vNext/Polly#retry ) 库并对某些异常使用重试,如果重试不成功,则执行故障转移。
基本上我们的目的是使服务总线在我们的系统中具有高可用性,即使服务总线关闭或限制超过 15-30 分钟,也应该发生故障转移。
但是,对于服务总线而言,哪些故障转移是有意义的所有例外都是可能的。
我在下面列出了一些例外(https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.servicebus.servicebusexception?view=azure-dotnet),但不确定这些是否适合我们的场景。ServerBusyException ServiceBusCommunicationException ServiceBusTimeOutException
简而言之,我会说发生中断或停机时服务总线会引发哪些异常以及如果我们尝试调用“SendAsync”(https://docs.microsoft.com/en-us/dotnet/api/microsoft.servicebus .messaging.topicclient.sendasync?view=azure-dotnet ) 方法。
https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-outages-disasters。
解决方案
这可能会显示ServerBusyException。服务总线中的故障转移和中断将属于服务器级别的问题。当您使用 Azure 监视器警报配置 Azure 服务总线时,它会在出现中断或故障转移时显示服务器错误。所以我可能会显示服务器繁忙异常。谢谢
推荐阅读
- kubernetes - Docker for Mac Kubernetes 负载均衡器 NoHttpResponseException
- c# - Microsoft BotFramework v4 任务计划和状态
- c# - 在更新数据库,实体框架 6 上未调用种子方法
- c# - 从非 xaml.cs 超类调用 InitializeComponent()
- python - 如何在不降级 mkl 和 python 的情况下安装 cvxopt
- python - keras.preprocessing.image imagedatagenerator flow from dataframe read error
- laravel - 如何在 laravel 中编写嵌套查询
- r - 安装包。“有非零退出状态”错误。“S3 方法”错误
- c++ - 如何正确写入多维字符数组未知数量的值但固定数量的字符
- r - 如何在 R 中使用代理 api