【问题标题】:Azure workerrole fails to start after swap交换后 Azure 辅助角色无法启动
【发布时间】:2023-04-03 23:50:01
【问题描述】:

当我将项目部署到 Azure 暂存区时。我的工人角色开始并做它应该做的事情。

但是在我按下交换后的那一刻,暂存区被推送到生产区,我的工作人员收到以下错误:

A transport-level error has occurred when receiving results from the server. (provider: Session Provider, error: 19 - Physical connection is not usable)

然后,workerrole 将闲置几个小时,然后才能真正重新开始工作。 如果我要重启 workerrole 所在的实例,它会在重启后立即启动。

有谁知道如何在不每次都重新启动的情况下解决此问题?

【问题讨论】:

  • “做它应该做的” - 你能详细说明它意味着什么不做吗?特别是关于任何网络?
  • 没什么特别的:发送邮件真正的 mandrill API,检查 Azure 数据库中客户的状态,...
  • 我很想看看 SQL 部分。您是否正确关闭了对 SQL 服务器的调用?您是否在 SQL 周围使用“使用”语句?

标签: azure azure-worker-roles


【解决方案1】:

当您执行交换时,公共 IP 地址 (VIP) 将发生变化。这意味着传出 TCP 连接会将源 IP 更改为新的 VIP。如果您保持与 Azure SQL DB 之类的持久连接,则外部资源(在本例中为 SQL)可能会在看到新的源 IP 地址时终止连接。

解决方案与您应该已经实施的最佳实践类型相同 - 重试连接。

如果不了解如何创建 SQL 连接的更多信息,很难更具体,但您可以搜索“sql azure retry connections”,您会看到很多指导。我将从http://social.technet.microsoft.com/wiki/contents/articles/4235.retry-logic-for-transient-failures-in-windows-azure-sql-database.aspx 和http://azure.microsoft.com/blog/2010/05/11/connections-and-sql-azure/ 开始。

【讨论】:

    猜你喜欢
    • 2013-02-15
    • 2013-01-06
    • 1970-01-01
    • 2015-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多