【问题标题】:"Service is currently unavailable" while connecting to Azure Cosmos DB from the local machine从本地计算机连接到 Azure Cosmos DB 时出现“服务当前不可用”
【发布时间】:2018-12-19 13:29:01
【问题描述】:

在使用 Cosmos DB 触发器本地调试 Azure Function V1 时,我们遇到了一个奇怪的问题。当应用启动时,它会等待几分钟,然后抛出异常“服务当前不可用”:

当我在家运行同一个应用程序时,它运行良好。它在部署到 Azure 时也能完美运行。

此外,使用 Azure Functions V2 实现的类似应用也可以在有问题的机器上运行。

导致问题的计算机位于公司网络中。我们使用真正的连接字符串,而不是模拟器,其中包含https

看起来确实是客户端连接问题...可能是什么以及如何解决?

【问题讨论】:

    标签: azure azure-functions azure-cosmosdb


    【解决方案1】:

    host.json 文件中的以下更改修复了该问题:

    {
      "documentDB": {
        "connectionMode": "Gateway",
        "protocol": "Https"
      }
    }
    

    Azure Functions V1 与 Cosmos DB 的连接默认为直接模式,而 V2(需要在任何平台上运行,因为 Functions V2 是多平台的)默认为网关模式。直接模式有时会在防火墙环境中出现问题。

    阅读更多:

    【讨论】:

    • 对于那些使用带有 Asp Core 的 Azure cosmos db 的用户,在 StartUp.cs 中启动连接时更改 ConnectionMode = ConnectionMode.Gateway
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多