【问题标题】:bluemix runtime: auto vertical scalability?bluemix 运行时:自动垂直可伸缩性?
【发布时间】:2015-05-28 15:34:12
【问题描述】:

很明显,自动缩放服务允许自动横向扩展和横向扩展应用程序。而且我也可以通过手动增加/减少内存来手动垂直扩展我的应用程序。

有没有办法根据一些规则自动增加和减少与 node.js 实例关联的内存?

【问题讨论】:

    标签: node.js scalability ibm-cloud


    【解决方案1】:

    注意 Bluemix 根据 GB * 小时对应用程序收费。因此,总的来说,您将在垂直缩放和水平缩放之间收取类似的费用。但是,垂直缩放确实提高了内存使用效率,因为内存开销更少(例如,您只加载一次 node.js 运行时而不是两次以上)。但水平缩放也有其优点:

    • 由于应用实例增加,可用性更高;
    • 分布式进程带来更好的并发性;
    • 可能更好地探索 CPU 资源(因为 CGroup 用于 CPU 分配的方式)。

    因此,如果您的应用程序需要大量内存,则为每个实例分配大内存是有意义的。否则,如果应用程序占用大量 CPU,则水平缩放可能会更好。您可以做一些基准测试来评估这两个选项的响应时间和吞吐量影响。

    【讨论】:

      【解决方案2】:

      Bluemix 中的 Auto-Scaling 插件根据其策略监控所选资源并增加或减少实例数量,而不是垂直扩展(内存)。

      为什么您的节点应用程序的内存需求会增长?您可以通过使用数据库或兑现服务来卸载其中的一部分吗?在需要时依赖增加内存目前是一种不好的做法,因为它会在您的应用程序重新启动时需要短暂的停机时间。

      【讨论】:

      • 是的,我将使用数据缓存,这是一个很好的建议。谢谢。
      【解决方案3】:

      正如拉姆所说。 Auto-Scaling 服务目前不支持垂直扩展。

      您可以按离散的实例数或按实例总数的百分比水平扩展。

      查看docs 每种应用程序类型支持的指标

      编辑:错字!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-02
        • 2019-09-11
        • 2019-05-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多