我已经构建了一个移动应用程序,需要连接到我的SpringBoot-WebApp,而后者又有一个MongoDB和其他一些东西。
我想在亚马逊AWS上部署此WebApp,但我对所有可能性感到不知所措。到目前为止,我刚刚将它创建为.jar,并以这种方式运行,并且它在我的其他服务器上运行良好。 现在,出于流量等原因,我们希望将其移至AWS。我发现,我需要创建.war而不是.jar,这不是问题。然后我学会了将此.war上传到Elastic Beanstalk。但是,我的应用程序需要连接到MongoDB。我已经通过SSH登录AWS并在那里安装了MongoDB并创建了数据库,但似乎这不是正确的方法。
如果有人能给我一些关于如何做到这一点的提示,我会非常感激。因为我很困惑。
谢谢和最诚挚的问候!
答案 0 :(得分:2)
如果您这样做,并不清楚,但不要在Elastic Beanstalk上运行MongoDB。您安装它的Elastic Beanstalk服务器可能会被AWS自动删除。通常,您不希望在Elastic Beanstalk上手动安装任何内容,因为它是一个托管环境,可以根据服务器负载自动创建或删除服务器。
亚马逊没有直接提供MongoDB服务,因此您需要自己在EC2实例(或实例组)上安装和管理MongoDB,或者使用在AWS上运行的第三方MongoDB服务。您可以使用MongoLab之类的东西,它提供在AWS上运行的MongoDB服务。这样,您的Web服务器和数据库服务器之间的网络流量就可以保留在AWS网络中,出于性能和安全原因,您需要这些网络。
如果您使用MongoLab,请确保选择在部署应用程序的同一AWS区域中创建数据库。此外,我不推荐他们的免费沙箱数据库用于任何类型的关键生产应用程序。