build议:放大一个实例或创build两个小实例

先进的服务器configuration有点新,并试图找出如何决定是否应该将我的小实例分成两个独立的小型机器(一个数据库和一个应用程序服务器)或一个更大的机器。 基本上我不知道我应该看什么指标来指导我的决定。

  1. 我可以使用什么工具查看指标(当前正在运行graphite / collectd / statsd)
  2. 哪些指标会告诉我更高效的解决scheme?

我想尽可能具体,如果questipn似乎太宽泛,抱歉。

编辑:关于应用程序的细节

我有4个Django应用程序在一个小实例上运行。 其中之一是根据用户input从数据库中提取大量logging(最多可达6万)

这个应用程序往往会吸收大量的内存,并开始使机器交换,当它处理所有的数据在视图中返回。

我会首先看。 您的应用程序是否花费更多时间等待IO或CPU / RAM有限?

向上扩展与向上扩展是一个棘手的问题,与应用程序有很大的依赖关系,但是对于拥有2倍资源的单个盒子来说,比2盒子的效率更高,因为在第二种情况下,您需要两次支付操作系统开销不必处理ACID的东西(除非你可以处理最终的一致性,但是仍然有任何同步数据的开销)。

但这取决于 – 应用程序的更多细节,以及你期望它的瓶颈将会有所帮助。