当前位置: 首页 > 知识库问答 >
问题:

从本地计算机连接到Azure Cosmos DB时“服务当前不可用”

逑衡
2023-03-14

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

当我在家里运行时,同样的应用程序工作得很好。在部署到Azure上时,它也可以完美地运行。

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

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

它看起来真的像是客户端连接问题...会是什么,如何化解?

共有1个答案

楚昀
2023-03-14

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

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

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

阅读更多:

  • Azure Cosmos DB+函数食谱-连接模式
  • Host.json引用Azure函数1.x
 类似资料:
  • 我正在我的机器上运行Ansible。我的机器没有ssh访问远程机器的权限。来自本地计算机的端口22连接被学院防火墙阻止。但是我可以访问一台机器(ssh隧道),通过它我可以登录到远程机器。现在有一种方法可以在远程主机上从本地机器运行ansible playbook。 在某种程度上,可以通过ssh隧道将Ansible/ssh连接到远程机器。但并不完全登录到ssh隧道。连接将通过隧道。 另一种方法是我可

  • 我正试图从本地机器上的Pyspark连接到雪花。 我希望能够连接到雪花和PySpark读取数据。任何帮助都将不胜感激!

  • 问题内容: 我在本地计算机上使用docker设置了Single Node Basic Kafka Deployment,如Confluent Kafka文档中所述(步骤2-3)。 另外,我还公开了zookeeper的端口2181和kafka的端口9092,以便能够从在本地计算机上运行的Java客户端连接到它们: 问题:当我尝试从主机连接到kafka时,连接失败,因为它无法解析地址:kafka:90

  • 我在AWS中设置了一个新的MariaDB RDS实例,并向安全组添加了入站和出站规则,但当我试图通过mysql控制台连接到RDSendpoint时,总是会出现以下错误: 错误2003(HY000):无法连接到'db-xxxxxxx.eu-central-1.rds.amazonaws.com'上的MySQL服务器(10060“未知错误”) 我是AWS的新手。

  • 问题内容: 所以我有一个Nginx在docker容器中运行,我有一个mysql在本地主机上运行,​​我想从我的Nginx内部连接到MySql。MySql在localhost上运行,并且没有将端口暴露给外界,因此它绑定在localhost上,而不绑定在计算机的IP地址上。 有什么方法可以从此Docker容器中连接到此MySql或localhost上的任何其他程序吗? 此问题与“如何从Docker容器

  • 我正在尝试使用host.docker连接到本地计算机上运行的SQL Server实例。内部https://docs.docker.com/docker-for-windows/networking/#use-案例和解决方法) 主机.docker。内部已成功解析为IP,并且可以ping 我在防火墙配置中打开了端口1433 错误消息 连接拒绝192.168.65.2:1433 我的连接字符串 数据源=