整合谷歌应用引擎和计算MongoDB,可能吗?

整合谷歌应用引擎和计算MongoDB,可能吗?,mongodb,google-app-engine,google-compute-engine,Mongodb,Google App Engine,Google Compute Engine,在过去的几周里,我一直在围绕谷歌应用程序引擎(GAE)和谷歌计算引擎(GCE)攀爬,所以我觉得我对这两个相关但不同的平台有了相当的了解。但我被卡住了,我想确保自己朝着正确的方向前进 我正在创建一个拥有有限客户的小型私人企业网站。我们讨论的是20个并发用户 因此,这个问题可能更多的是架构性的,而不是技术性的 由于模式的灵活性,我想尝试使用MongoDB,所以这里是我遇到的问题 我最初的尝试是通过以下方式连接: 选项1: GAE(Java)-->MongoDB Java驱动程序-->GCE(Mon

在过去的几周里,我一直在围绕谷歌应用程序引擎(GAE)和谷歌计算引擎(GCE)攀爬,所以我觉得我对这两个相关但不同的平台有了相当的了解。但我被卡住了,我想确保自己朝着正确的方向前进

我正在创建一个拥有有限客户的小型私人企业网站。我们讨论的是20个并发用户

因此,这个问题可能更多的是架构性的,而不是技术性的

由于模式的灵活性,我想尝试使用MongoDB,所以这里是我遇到的问题

我最初的尝试是通过以下方式连接:

选项1:

  • GAE(Java)-->MongoDB Java驱动程序-->GCE(MongoDB)

  • 这是一个完全的失败,因为GAE沙箱不允许这样做

选项2:

  • GAE(Java)-->RESTFul MongoDB调用-->GCE(MongoDB/RESTFul前端)

  • 我还没有完全探讨过这一点,但这似乎很有希望,但我真的不想使用RESTful连接到我的数据库

这让我知道我要去哪里

选项3:

  • GCE(Java/Tomcat)-->MongoDB驱动程序-->GCE(MongoDB)

  • 放弃GAE,在GCE中全力以赴:|

我想要一些反馈。以下是我在研究此问题时大量引用的其他stackoverflow答案:

  • 这是一个老问题,但有几个回答是新的和有用的, 具体来自用户@eloone,但仍不清楚管道系统是如何工作的 行得通
  • 下面两种说法基本相同,都是“不”,所以 这促使我选择了第二种或第三种选择
我的具体问题:
  • 既然我不需要缩放,我真的需要GAE吗?(只是试着快速…和懒惰:D)
  • 放弃GAE我要放弃什么?我之所以使用它,是因为它看起来简单快捷,(只要你使用mysql)
不用说,这是我在stackoverflow上的第一个问题,我每天都会读到这个问题,所以如果这个问题看起来有点离谱,那就好了。我想,如果我在挣扎,可能很多其他人也在挣扎D


答案摘要: 提出了3个非常好的答案:

  • 用户谷歌数据存储(我误解了这是什么)
  • 使用新的(ish)Java托管虚拟机
  • 只要使用GCE虚拟机,做我想做的 我研究了所有这些,并决定对我来说,1是目前最好的选择,因为它是阻力最小的路径,但如果需要的话,我将为将来转向2或3敞开大门


    谢谢大家。我将标记关于使用GCE作为公认答案的回答,因为它确实回答了问题,尽管我的方向不同

    在我看来,即使你必须扩展,你也不需要GAE

    • 你可以使用,这样你就可以在GCE中变得懒惰和快速
    • GCE与MongoDB配合得很好,尤其是当您希望复制数据中心之间的高速连接时
    为什么不直接使用数据存储?我的印象是(错误地?)数据存储只连接到谷歌提供的mysql数据库。我是不是误解了这个平台的各个部分?(打开google…)Datastore是google的专有数据库,可以在GAE中开箱即用,与mySQL或mongoDB无关。我认为您的选项1应该可以使用a,但您也应该研究一下,因为它是无模式的。我还将补充一点,托管虚拟机将允许您在GCE实例上使用App Engine运行时,如果你想:我正在学习这个方法,但是我有一个问题,可能是一个新手问题,但是如果我要使用计算虚拟机作为Web服务器,我是否只需要使用sudo apt获取tomcat7 apache2并像以前一样连接在一起,然后在防火墙上打开80/443就可以了?