我正在开发一个API,并希望(当然)根据并发用户数量来优化性能。
我根据那些测试使用Blitz(我的应用程序在Appfog,PHP,512MB,1个实例上)进行了一些测试,我的API可以在响应时间过高(> 1000毫秒)之前处理11个并发用户。
对我而言,这是惊人的低。我可以添加更多RAM和实例来改善结果,但我怀疑我的代码可以更聪明。
我做了一些测试,总是使用相同的硬件配置。结果是响应时间超过1000毫秒之前的并发用户数。
我真的没有看到结果中的任何相关性(每个测试已运行多次,结果相似)。脚本的处理越多 - 并发用户越多?
这会影响并发用户的数量(除了硬件配置)?
答案 0 :(得分:0)
一般来说,您应该考虑两个方面:
数据库或外部API等瓶颈。你和最慢的组件一样慢
查找将并发代码转换为顺序的锁。请参阅:Amdahl's law
第二点与第一点有关。数据库或您在代码中使用的任何内容可能在内部同步,或者可能无法很好地处理并发。