使用 Azure KeyVault 突然 System.Net.Http.HttpRequestException

Sudden System.Net.Http.HttpRequestException with Azure KeyVault

几周以来我们一直在使用 Azure KeyVault,上周我们突然有一些服务失败并显示此错误消息:

System.Net.Http.HttpRequestException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
 ---> System.Net.Sockets.SocketException (10060): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
   at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)

奇怪的是我们在同一台服务器上有多个网络应用程序 运行。对某些人有效,对某些人无效。此外,它为所有人工作了一段时间。有些回来了,有些没有。

知道这是什么吗?我不认为我们的 IP 被阻止或未配置 WebSockets,否则它不适用于所有应用程序。唯一的区别是当前工作的应用程序是 .NET 而非工作的应用程序是 .NET Core。但正如我所说,即使是 .NET Core 也要工作到周五。所有服务都获得相同的秘密(例如,相同的数据库登录数据)并且每个服务都在 Azure 上运行。

我看过其他一些关于这个问题的帖子,但唯一的解决办法是他们在它之上构建了一个缓存层。这看起来更像是创可贴而不是解决方案。

对于那个问题,我已经在 Microsoft 支持部门开了一张票。 他们给我的最后建议是将库 Microsoft.Extensions.Configuration.AzureKeyVault 降级到版本 2.2.0。在我们使用 3.1.3.

之前

到目前为止效果很好。我们再也没有那个例外了。

如果有人可以分享 her/his 经验,请问该库的较新版本是否也能正常工作,我将不胜感激。

库 Microsoft.Extensions.Configuration.AzureKeyVault 的最新版本 3.1.8 仍然存在该问题。降级到 2.2.0 对我也有效。