NodeJS,Nginx和MongoDB的高可用性解决方案

时间:2016-11-17 10:04:03

标签: node.js mongodb nginx high-availability pm2

我需要有更多配置nginx + nodejs + mongodb经验的人的意见和最佳实践。

我正在开发基于MongoDB和NodeJS的自定义构建云应用程序。作为反向代理服务器,我正在使用nginx,而对于管理NodeJS,我正在使用PM2。此时我有单独的服务器,一个用于MongoDB数据库,另一个用于服务API应用程序(Nginx + NodeJS)。现在我正在使用PM2,我设置API在1核VPS上作为集群运行。

将来我需要配置高可用性解决方案。关于数据库,我还没有使用任何复制或集群。我认为未来有很多潜在的优势需要优化,我相信用这种技术实现HA不是很难实现,但是有人可以说出他的观点以及我应该先注意什么?我没有太多配置HA的经验,所以每个建议都是好建议。

由于

1 个答案:

答案 0 :(得分:1)

  

“我相信实现HA并不难......我没有太多配置HA的经验”

有句老话说你应该永远不要说没有经验,但你不认为这很困难。你会在最糟糕的时候找到它是多么困难。

如果您不知道如何操作,那么没有人会在Stack Overflow上回答它,因为需要数年时间才能获得所需的体验。使用工作解决方案而不是重塑自己的解决方案会更好。对于Mongo,您可以使用ComposemLab。对于Node,您可以使用HerokuAWS Elastic Beanstalk。对于静态资产,请使用MaxCDNCloudflare。还有更多服务可供选择。

当然,如果你能自己做得更好,那么Compose和Heroku那么一定要继续做下去。但如果你不这样做,那么如果你选择一个有效的解决方案,那么你将省去很多麻烦。

另外一个好处是,Heroku和mLab都会为你提供免费的计划,让你立即开始开发而不付任何费用,但只要你的应用程序获得一些牵引力,你就可以在必要的时候开始大规模扩展它。

即使您决定推出自己的解决方案,您仍然应该阅读所有这些和类似服务的文档,因为它们很好地解释了您将要实现的功能以及您将要面对的问题。