질문:
PHP 파일의 느린 업로드 속도와 관련하여 최적화 방법이 있습니까?
1. 업로드되는 파일의 평균 크기는 약 10M입니다
2. 현재는 Apache를 사용하고 있는데, nginx로 전환한다고 들었습니다. 속도를 높일 수 있나요?
해결책:
PHP-FPM은 파일 업로드 프로세스 중에 차단되지 않습니다. Nginx는 파일을 수신할 때까지 차단되지 않기 때문입니다. 업로드된 콘텐츠를 한 번에 PHP-FPM에 넘깁니다. Nginx와 PHP-FPM의 작업 프로세스는 각각 하나만 열립니다.
초당 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와 컬만 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)를 주목해주세요!