我们一直在开发新版本的企业应用程序,我们几乎准备开始升级客户。但是,由于一切都已改变(后端和前端),我们必须重新确定服务器端硬件要求,更重要的是根据每天使用该系统的预期用户数量来重新确定所需的核心数和内存数。 / p>
应用程序后端是用Java编写的,将在Wildfly 8.0.2应用服务器上运行。此应用程序的新版本也是Ajax,每个客户端可能每秒启动5个甚至更多的请求,每个请求都可能打开数据库连接以获取数据。
目前我们没有使用任何Java框架,如ejb或JPA,只是一个简单的基于服务的3层架构。假设同时有200个用户的最大工作负载(例如)需要什么样的资源?作为参考,我认为旧应用程序(经过试验和错误)每20个用户需要大约1个核心和2GB内存。但是这次我们想在测试之前做一个粗略的估计并在之后进行微调。
答案 0 :(得分:6)
自定义软件的容量估算没有规则。你只需要测试它。有很多工具可以帮助你。您可能想要创建一些验收标准,例如;
一旦设定了验收标准,过程通常就是这样;
您现在有一个性能参考点/基准。您可以说在硬件A上我们的软件支持B个并发用户,响应时间在C以下。您可以根据不同的客户需求进行扩展。例如,如果客户估计您测试的流量加倍,那么您可能希望让服务器群集共享负载以保持性能。
一旦您有一些客户在野外使用您的软件,您就可以获得反馈/收集有关其执行情况的信息。这有助于您优化基准。