我正在开发一个 API,并且希望(当然)在并发用户数量方面优化性能。
根据这些测试,我使用 Blitz 运行了一些测试(我的应用程序在 Appfog、PHP、512MB、1 个实例上),我的 API 可以在响应时间变得太高(>1000 毫秒)之前处理 11 个并发用户。
对我来说,它是惊人的低。我可以添加更多 RAM 和实例来改善结果,但我怀疑我的代码可能更智能。
我做了一些测试,总是使用相同的硬件配置。结果是响应时间超过 1000 毫秒之前的并发用户数。
- 使用我的实际 API(带有 db-queries)--> 11 个用户
- 使用仅输出文本的脚本(最少处理)-> 40 个用户
- 使用带有 sleep(2) 函数的脚本来模拟较长的响应时间 --> 52 个用户(超过 (2000 + 1000 ms) 之前)
- 使用内存密集型脚本(使用 for 循环构建数据):95 个用户
我真的看不出结果中有任何相关性(每个测试都运行了很多次,结果相似)。脚本的处理越多 - 并发用户越多?
是什么影响了并发用户的数量(除了硬件配置)?