热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

PHP的curl造成性能瓶颈,如何优化?

最近在对项目进行压力测试,我发现所有使用curl的业务场景的性能严重不达标,此时查看服务器情况,和其他性能良好的业务比较起来,发现这些curl页面的cpu使用率一直很低(30%左右,而其他都是100%)!请问大家,...
最近在对项目进行压力测试,我发现所有使用curl的业务场景的性能严重不达标,此时查看服务器情况,和其他性能良好的业务比较起来,发现这些curl页面的cpu使用率一直很低(30%左右,而其他都是100%)!

请问大家,这方面有没有好的方案?

补充:
项目A会通过curl调用项目B提供的rest接口获取相关业务数据。

回复内容:

最近在对项目进行压力测试,我发现所有使用curl的业务场景的性能严重不达标,此时查看服务器情况,和其他性能良好的业务比较起来,发现这些curl页面的cpu使用率一直很低(30%左右,而其他都是100%)!

请问大家,这方面有没有好的方案?

补充:
项目A会通过curl调用项目B提供的rest接口获取相关业务数据。

cpu低,说明你的cpu很可能在等接口IO……如果cpu 的iowait高的话,那就必须是了……

  1. 用curl_multi_exec 把curl做并发
  2. curl访问的内容(B的rest接口)太慢了,想办法提升一下,你可以

  • 缓存接口内容
  • 提升B接口的运算速度
  • 优化网络环境

除了楼上几位的答案,我再补充个:
如果一次请求过程中调用curl的次数太多(我就见过一次请求调上百次接口的),可以考虑修改项目B的接口,提供一次调用就搞定的接口。

在命令行下, curl -vI http://rest.url
看看慢在哪一步。
另外,ping 一下 rest 服务器的IP,看看timeout多少

“性能严重不达标”

具体指的是什么?是指的响应时间太长吗

推荐阅读
author-avatar
材女貝蒂_673_576
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有