服务器规模确定方法

服务器规模确定方法

我们的开发环境包括 JBoss 5.0.1 DB Server、SQL Server 2008、Oracle IDM。硬件是 Win 2008 32 位,4GB RAM。我们的环境已经无法处理应用程序,导致 JBoss 关闭并抛出内存不足错误,并且 CPU 使用率达到 90%。我正在寻找方法来计算正确的服务器大小,我输入 TPS、最大并发用户数、最大 CPU 利用率等,以便得到服务器数量、RAM 大小、内核数量。我预计应用程序每年将增长 10%。在确定大小时还应考虑负载平衡器和故障转移。

答案1

这确实是很基础的。

您知道当前服务器在崩溃前可以处理什么(并且您可能已经对系统进行了分析以确定限制因素是什么 - RAM、CPU 等...)。
当服务器崩溃时,取限制因素值的 2/3 或 3/4,并将其声明为“单位负载”,或者U

估计一下你认为未来的负荷是多少(这留给读者练习。只有你知道你的成长模式。)并将其称为“目标负荷”,或T
如有疑问,可估计高一点。

您需要的服务器数量等于ceil(T/U)+1
即:

  • 将目标负载除以单位负载,即可确定所需的服务器数量。
    四舍五入为任何需要部分服务器。多一些总比少一些好。
  • 添加一台(或多台)服务器以实现冗余和额外容量。

确定你需要多少 RAM、CPU 功率、磁盘 I/O 带宽等Server Fault 无法为你做到这一点。如果您不知道,则需要进行测试和分析。
根据您在环境中的经验,您可以确定是否需要向服务器添加更多 RAM 或 CPU 以实现平衡(服务器的规格几乎“达到最大”,并且几乎同时饱和 CPU / RAM / 磁盘/等,因此您不会浪费资源)。

相关内容