素材牛VIP会员
关于接口性能的分析
 街***铃  分类:PHP代码  人气:820  回帖:3  发布于6年前 收藏

我用PHP写的接口,在单机版的服务器下,单用户调用,也就是说机器的并发用户数
为1的情况下,该接口的响应时间为100ms

但是用压力工具测试,压到并发量为220人的时候,接口响应时间最长长达5s
最短是3s 平均下来也有好几秒,这个数据完全和单次调用差距悬殊,这样的
结果是不是说明接口代码的性能是很好,但是并发量一旦上来的时间,就性能
变的很差,是不是就说明是服务器的性能差,而不是接口程序性能差?
问题到底出在那?

讨论这个帖子(3)垃圾回帖将一律封号处理……

Lv4 码徒
13***64 软件测试工程师 6年前#1

你想想一下一条马路可以同时过十辆车,现在突然同时要过100辆,而且这个车都争抢着要过去,是不是很容易堵车,一堵车大家都慢了。

很对秒杀系统会有类似的业务场景,引入队列服务排队处理请求是一个通用的方法,这种办法就好像火车站进站口弯来弯去的排队通道。

Lv5 码农
Y2***Y2 JS工程师 6年前#2

一般来说不是程序的问题。检查下服务器的php-fpm配置。
另外。php不适合写接口,同样的配置nodejs比php-fpm并发高很多

Lv3 码奴
ji***ui 软件测试工程师 6年前#3

一般情况下,服务器的瓶颈是不会在220人的时候体现的。接口响应时间长,一个是检查你的php配置,是否支持多连接,第二个就得看你的逻辑代码,是否在并发下存在连接争用的情况

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取