Maison  >  Article  >  développement back-end  >  关于php文件上传速度太慢,有什么优化的方法?

关于php文件上传速度太慢,有什么优化的方法?

PHP中文网
PHP中文网original
2017-03-25 11:32:427736parcourir

问题:

关于php文件上传速度太慢,有什么优化的方法? 

1、上传文件平均大小10M左右

2、目前暂时用的apache,听说换nginx能加快速度?

解决方案:

在文件上传过程中PHP-FPM并不会被阻塞,因为Nginx接收完上传的内容后才一次性交给PHP-FPM.
Nginx和PHP-FPM的工作进程各自只开1个.
以2KB每秒上传图片:

time trickle -s -u 2 curl \
-F "action=info.php" \
-F "upload_file=@linux.jpeg;type=image/jpeg" \
-F "submit=提交" \http://www.example.com/app/info.phpsudo netstat -antp|egrep "curl|nginx|fpm"

发现只有nginx和curl处于ESTABLISHED状态,nginx和fpm都没有被阻塞.

top -p 4075 可见Nginx单线程.
sudo strace -p 4075 可见Nginx调用recvfrom接收数据并且pwrite保存数据.
sudo strace -p 13751 可见PHP-FPM是在Nginx接收完成用户上传的数据时才获取数据.

上传慢主要还是带宽问题,可能是用户带宽,也可能是服务器带宽不够.

以上就是php文件上传速度太慢,有什么优化的方法? 的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn