为了账号安全,请及时绑定邮箱和手机立即绑定

关于接口性能的分析

关于接口性能的分析

PHP
犯罪嫌疑人X 2019-03-09 10:35:25
我用PHP写的接口,在单机版的服务器下,单用户调用,也就是说机器的并发用户数为1的情况下,该接口的响应时间为100ms 但是用压力工具测试,压到并发量为220人的时候,接口响应时间最长长达5s最短是3s 平均下来也有好几秒,这个数据完全和单次调用差距悬殊,这样的结果是不是说明接口代码的性能是很好,但是并发量一旦上来的时间,就性能变的很差,是不是就说明是服务器的性能差,而不是接口程序性能差?问题到底出在那?
查看完整描述

3 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

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

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

查看完整回答
反对 回复 2019-03-18
?
慕妹3146593

TA贡献1820条经验 获得超9个赞

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

查看完整回答
反对 回复 2019-03-18
?
眼眸繁星

TA贡献1873条经验 获得超9个赞

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

查看完整回答
反对 回复 2019-03-18
  • 3 回答
  • 0 关注
  • 490 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信