【发布时间】:2015-05-28 15:34:12
【问题描述】:
很明显,自动缩放服务允许自动横向扩展和横向扩展应用程序。而且我也可以通过手动增加/减少内存来手动垂直扩展我的应用程序。
有没有办法根据一些规则自动增加和减少与 node.js 实例关联的内存?
【问题讨论】:
标签: node.js scalability ibm-cloud
很明显,自动缩放服务允许自动横向扩展和横向扩展应用程序。而且我也可以通过手动增加/减少内存来手动垂直扩展我的应用程序。
有没有办法根据一些规则自动增加和减少与 node.js 实例关联的内存?
【问题讨论】:
标签: node.js scalability ibm-cloud
注意 Bluemix 根据 GB * 小时对应用程序收费。因此,总的来说,您将在垂直缩放和水平缩放之间收取类似的费用。但是,垂直缩放确实提高了内存使用效率,因为内存开销更少(例如,您只加载一次 node.js 运行时而不是两次以上)。但水平缩放也有其优点:
因此,如果您的应用程序需要大量内存,则为每个实例分配大内存是有意义的。否则,如果应用程序占用大量 CPU,则水平缩放可能会更好。您可以做一些基准测试来评估这两个选项的响应时间和吞吐量影响。
【讨论】:
Bluemix 中的 Auto-Scaling 插件根据其策略监控所选资源并增加或减少实例数量,而不是垂直扩展(内存)。
为什么您的节点应用程序的内存需求会增长?您可以通过使用数据库或兑现服务来卸载其中的一部分吗?在需要时依赖增加内存目前是一种不好的做法,因为它会在您的应用程序重新启动时需要短暂的停机时间。
【讨论】:
【讨论】: