【问题标题】:scalable meanjs on digitaloceandigitalocean 上的可扩展 meanjs
【发布时间】:2018-07-31 13:48:56
【问题描述】:

我正在尝试学习一种部署过程,该过程可以保证meanjs 应用程序的无懈可击扩展(不是人们在大公司这样做的水平,也不是在爱好水平)。

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

  1. 在 Ubuntu 上的 digitalocean 上安装 mongodb
  2. 在 docker 中拥有 meanjs 应用程序(除了 mongodb)

然后可以扩展!因为 mongodb 可以单独集群,而 docker 可以轻松扩展应用程序。

好吧,我知道这听起来微不足道,这就是我在这里问的原因:我只是想去学习 docker,并想在花时间在上述假设的解决方案上之前确定一下!

你认为这能保证一个简单的扩展,比如meanjs 上的简单在线多人游戏吗?谢谢。

【问题讨论】:

    标签: mongodb docker meanjs scalable


    【解决方案1】:

    2018 年 7 月 31 日更新

    Digital Ocean 引入了Kubernates,它完成了他们所有的编排,他们还发布了load balancer,我认为它可以很好地与 kubernates 配合使用

    ===============

    没有现成的解决方案。

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

    这就是我所做的:

    1. 创建脚本以在您启动/停止实例时生成 HAProxy 配置
    2. 在集群或副本或其他任何地方有 mongo。数据库通常不需要动态扩展。你只有一个 mongo 服务器,然后你扩大它,当你不能垂直扩大它时,你通过创建副本集水平扩大它,然后扩大它直到你不能然后你做分片。

    因此,将 HAProxy 作为负载平衡器,接受端口 80 上的连接并转发到您的 droples 烤箱专用网络。 您还可以编写脚本以使用 DO API 在您的部署中创建映像,并在您有更多流量时通过检测响应时间或 CPU 负载或您拥有的任何其他指标动态或静态地启动它。

    我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2018-01-28
      • 1970-01-01
      • 1970-01-01
      • 2010-09-23
      • 2016-01-03
      • 1970-01-01
      • 2010-09-18
      • 2012-12-08
      • 2013-04-02
      相关资源
      最近更新 更多