我有一个用 Golang 编写的应用程序,可与 MongoDB 配合使用。我还运行了 MongoDB 的 VM 实例,通过 Click-to-deploy 进行部署。

我可以连接到外部 MongoDB 实例,该应用程序在本地运行,并在 GAE 上的 VM 实例上运行,但是当作为 appengine 实例(即通过 goapp deploy)启动时, 不是 。在日志中,我看到“没有可访问的服务器”错误。我已经对所有网络配置进行了双重测试,并在我的“默认”网络中打开了 MongoDB 端口。

我发现一些文章和帖子说您不能将 MongoDB 与 appengine 一起使用,并且需要使用 Datastore,但它们都非常旧(例如 2011/2012),我在 AppEngine 文档中找不到确认。

所以问题是:

  • 我可以将 GAE 托管的 MongoDB 与我的 AppEngine 应用程序一起使用吗?
  • 如果是,我如何使用 appengine 实例调试此连接问题?

  • 提前致谢。

    最佳答案

    由于 appengine 沙箱的限制性质,您似乎无法使用来自 appengine 应用程序的直接 MongoDB 连接。
    来自 https://cloud.google.com/appengine/docs/managed-vms/ :
    网络访问:仅通过 App Engine 服务(包括出站套接字)

    有一些可能性可以通过 HTTP REST 接口(interface)访问 MongoDB,但这不是我的情况。

    关于mongodb - 从 AppEngine 应用程序访问 MongoDB,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27089343/

    10-16 21:23