0

我正在创建 .net core 2.1 MVC 应用程序并使用 Azure 数据库 for MySQL DB 5.7。

我已阅读以下链接,但似乎它们适用于 MS SQL DB。
https://docs.microsoft.com/en-us/azure/mysql/concepts-high-availability

https://docs.microsoft.com/en-us/azure/architecture/best-practices/retry-service-specific

无法对 MySQL 进行瞬态处理?帮我链接到 MYSQL 相关的类似页面。

4

1 回答 1

0

瞬态错误,也称为瞬态故障,是可以自行解决的错误。大多数情况下,这些错误表现为与正在删除的数据库服务器的连接。也无法打开与服务器的新连接。例如,当硬件或网络故障发生时,可能会发生瞬态错误。

应使用重试逻辑处理瞬时错误。必须考虑的情况:

  • 尝试打开连接时发生错误
  • 在服务器端断开空闲连接。当您尝试发出命令时,它无法执行
  • 当前正在执行命令的活动连接将被删除。

第一种和第二种情况处理起来相当简单。尝试再次打开连接。当您成功时,系统会缓解瞬态错误。你可以再次使用 Azure Database for MySQL。我们建议在重试连接之前等待。如果初始重试失败,请退出。这样,系统可以使用所有可用资源来克服错误情况。一个很好的模式是:

  • 在第一次重试之前等待 5 秒钟。
  • 对于随后的每次重试,等待时间呈指数增长,最长可达 60 秒。
  • 设置您的应用程序认为操作失败的最大重试次数。

在这里阅读更多。

您可以在此处阅读有关如何解决连接问题的详细信息,以解决与 Azure Database for MySQL 的连接问题。

于 2019-02-27T06:52:25.280 回答