digitalocean上的可扩展meanjs

时间:2015-05-13 23:23:39

标签: mongodb docker meanjs scalable

我正在尝试学习一个部署过程,该过程可以保证meanjs应用程序的无头扩展(不是人们在大公司中执行的级别,但也不是业余级别)。

所以只要我理解,这可能是一个解决方案:

  1. 在Ubuntu上使用mongodb on digitalocean
  2. 在docker中使用meanjs应用程序(除了mongodb之外)
  3. 然后可以扩展!因为mongodb可以单独聚类,而docker可以很容易地缩放应用程序。

    嗯,我知道这听起来微不足道,这就是我在这里问的原因:我只想去学习码头工作,并希望在投入时间之前确定上述假设的解决方案!

    您是否认为这可以轻松扩展,例如meanjs上的简单在线多人游戏?谢谢。

1 个答案:

答案 0 :(得分:1)

更新日期31/07/2018

数字海洋介绍Kubernates执行他们已经发布的所有编排load balancer,我认为这将与kubernates合作

<强> ==============

没有现成的解决方案。

您可以将docker与沼泽一起使用,但对于小型部署,它会带来额外的监控和网络问题。

所以这就是我所做的:

  1. 创建脚本以在启动/停止实例时生成HAProxy配置
  2. 在群集或副本或其他任何地方拥有mongo。数据库通常不需要动态扩展。您只需要单个mongo服务器然后进行扩展,当您无法再垂直扩展它时,可以通过创建副本集来水平扩展它,然后将其扩展直到您无法进行分片。
  3. 所以让HAProxy作为负载均衡器接受端口80上的连接并转发到您的droples烤箱专用网络。 您还可以编写脚本以使用DO API来创建部署映像,并在通过检测响应时间或CPU负载或您拥有或静态的任何其他指标动态获得更多流量时启动它。

    我希望这会有所帮助。