我有一个用 Golang 编写的应用程序,可与 MongoDB 配合使用。我还运行了 MongoDB 的 VM 实例,通过 Click-to-deploy 进行部署。
我可以连接到外部 MongoDB 实例,该应用程序在本地运行,并在 GAE 上的 VM 实例上运行,但是当作为 appengine 实例(即通过 goapp deploy)启动时, 不是 。在日志中,我看到“没有可访问的服务器”错误。我已经对所有网络配置进行了双重测试,并在我的“默认”网络中打开了 MongoDB 端口。
我发现一些文章和帖子说您不能将 MongoDB 与 appengine 一起使用,并且需要使用 Datastore,但它们都非常旧(例如 2011/2012),我在 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/