如何确定大致的最大请求数?

如何确定大致的最大请求数?

我正在构建一个非常简单的 Web 应用程序,需要粗略地了解我的服务器可以承受多少负载。

当然,这取决于很多因素,但我只需要大致了解一下我们谈论的是十个还是一万个用户,因为目前我还不知道。

标准 LAMP 设置,具有相当小的数据库和相当简单且快速的 PHP。每个非静态请求大约需要 20 个简单的 SQL 查询。在没有负载的情况下,此类请求的运行时间约为 50 毫秒。没有显式缓存。

当前托管在具有 1GB RAM 和未知 CPU 的 VPS 上。

鉴于此,是否可以给出一个粗略的估计?瓶颈是什么?CPU、RAM?50 毫秒/请求是否意味着每秒 20 个请求?缓存能有多大帮助(倍数 10?100?1000?)?缓存在哪里最有意义?如何进行负载测试?

呃,问题很多,不指望得到详细的答复,但非常感激能指点一下我可以从哪里了解系统要求/测试/可能的扩展方式!

答案1

用户数量几乎不相关 - 重要的是点击次数和点击速度。“相当小的数据库” - 这实际上不是一个非常有用的指标。

当前托管

那么你已经设置并运行它了?那么你在估计容量方面比我们更有能力。开始在你的 apache 日志中记录 %D(如果你还没有这样做的话)并以阈值 0 记录 mysql 慢查询。

每个非静态请求需要大约 20 个简单的 SQL 查询

呃!这需要很多数据库往返。考虑过使用连接(即使对于返回单行的查询,使用笛卡尔连接也可以大大提高性能)或服务器端缓存吗?

50 毫秒/请求是否意味着每秒 20 个请求?

不 - 这可能意味着它可以在 50 毫秒内处理 500 个请求,或者可能意味着它每 50 毫秒只能处理一个请求。

去读一些史蒂夫苏德的东西。

您当前系统的限制因素可能是内存(您的整个数据库和网站文件是否适合缓存到可用的内存中?我怀疑不是)。

答案2

使用Apache Benchab)。

以下是随机例子其他

相关内容