it-swarm-ko.tech

nginx 작업자 프로세스 수

Drupal 설치를 제공하기 위해 nginx를 설정하고 있는데 nginx 작업자 프로세스 설정에서 상충되는 정보를 찾은 것 같습니다. 한 사이트에는 두 개가 필요하고 하나는 다섯 개가 필요하고 다른 하나는 프로세서 당 하나 ...

Nginx 작업자 프로세스 수를 어떻게 선택해야합니까? 차이가 있다면 VMWare 클러스터에서 게스트 VM)이며 가상 프로세서 하나를 제공했습니다.

23
ceejayoz

Nginx는 Apache 및 연결 웹 서버 당 다른 프로세스와 달리 하나의 마스터 프로세스를 사용하여 실제로 연결을 처리하는 소수의 작업자 프로세스를 시작하고 모니터링합니다. 내 권장 사항은 기본 작업자 수인 1로 시작하는 것입니다.

worker_processes  1;

Nginx 작업자가 IO에 너무 많은 시간을 소비하고 있음을 발견 한 경우에만이를 늘리면됩니다. 초당 수백 건의 요청을 처리 할 때까지는 그렇지 않습니다.

이 설정이 유용 할 수도 있습니다.

worker_rlimit_nofile 8192;

events {
    worker_connections  2048;
    use epoll;
}
16
Dave Cheney

SMP 시스템에서는 최소 nCPU 작업자 프로세스를 시작해야합니다. 쿼드 코어-4 개 등.

정적 콘텐츠가 많은 일부 사이트를 서비스하려는 경우 디스크 당 하나씩 더 많은 작업자를 추가하는 것이 좋습니다.

디스크 하위 시스템의 성능이 저하되거나 너무 높은 경우 nginx 작업자 프로세스가 I/O 작업에서 잠기고 다른 요청을 처리하지 못할 수 있습니다. 이 경우 작업자 프로세스 수를 적절한 값 (수십)으로 늘리거나 디스크 캐시 용 메모리를 추가해야합니다.

"ps ax"인쇄물을 살펴보십시오. "D"상태 인 작업자는 잠겨 있습니다. 최소한 nCPU 작업자 프로세스가 차단되지 않을 때까지 늘리십시오.

15
Vadim