728x90
php-fpm 기반의 웹 서비스에서 응답속도가 저하되는 현상이 발생 하는 경우
- DBMS의 SQL 응답속도 저하 (Slow Query)
- 네트워크 지연
- 서버 리소스 점유율 (CPU, RAM 등)
- Disk 입출력 문제
등이 있다.
서버 리소스나 네트워크에 별 다른 문제가 없고, Slow Query 로그에도 별다른 이상징후가 없다면, 로직 상의 문제일 가능성이 크다.
개발환경이라면 debug를 활용 수 있겠지만, 실 서비스 중인 서버에는 적용할 수 없는 방법이다.
이 때는 php-fpm의 slowlog를 찍어서 확인하는 방법이 있다.
php-fpm.conf 파일을 열어보면 아래와 같은 설정을 확인할 수 있다.
보통 etc/php/ fpm폴더에 있음.
request_slowlog_timeout = 30s
slowlog = /var/log/php-fpm/slow.log
여기서 request_slowlog_timeout을 3~5s 정도로 낮추고, php-fpm 서비스를 재시작한다.
그 후 tail 명령으로 /var/log/php-fpm/slow.log 를 확인 후 응답속도가 느린 페이지에 접속을 계속 시도해보면 다음과 같은 로그가 찍힌다.
728x90
'php' 카테고리의 다른 글
php break, return, exit 구분 (0) | 2020.09.03 |
---|---|
php array_multisort (0) | 2020.08.31 |