Nginx, MySQL, PHP0FPM, PHP 8 환경에서 child-process 가 부족하여 lock 발생 에러 확인될 경우 php-fpm conf 파일을 수정하여 최대 요청과 프로세스 수를 수정합니다.
[21-Feb-2022 05:14:17] WARNING: [pool www] server reached pm.max_children setting (5), consider raising it
php7.4-fpm 평균 프로세스 메모리 추적
ps --no-headers -o "rss,cmd" -C php7.4-fpm | awk '{ sum+=$1 } END { printf ("%d%s\n", sum/NR/1024,"Mb") }'
서버 메모리 확인
free -h
pm.max_children 계산
서버 메모리 8GB일 경우, 8000MB / 20MB = 400
pm.max_children = 400 // 동시 최대 프로세스 수
pm.start_servers = 120 // 처음 시작할 때 max_children 30%
pm.min_spare_servers = 80// 최소 사용값 max_children 20%
pm.max_spare_servers = 200// 최대 사용값 max_children 50% (이 수가 넘어가면 프로세스 삭제)
pm.max_requests = 500 // 최대 요청값
반응형
'개발' 카테고리의 다른 글
OAuth 1.0, OAuth 2.0 (0) | 2022.10.14 |
---|---|
JMeter 을 활용한 웹 부하 테스트 (0) | 2021.02.14 |
Linux 작업 예약 스케줄러 (Cron) (2) | 2020.12.25 |
gitignore.io (0) | 2020.12.14 |
Shield IO (0) | 2020.12.04 |