>  기사  >  백엔드 개발  >  nginx에 대한 기본 소개(공식 문서 기반)

nginx에 대한 기본 소개(공식 문서 기반)

WBOY
WBOY원래의
2016-08-08 09:20:12909검색

nginx에는 하나의 마스터 프로세스와 여러 작업자 프로세스가 있습니다. 마스터 프로세스의 주요 목적은 구성을 읽고 평가하고 작업자 프로세스를 유지하는 것입니다. nginx는 이벤트 기반 모델 및 OS 종속을 사용합니다. 작업자 프로세스 간에 요청을 효율적으로 분배하는 메커니즘 작업자 프로세스 수는 구성 파일에 정의되며 지정된 구성에 대해 고정되거나 사용 가능한 CPU 코어 수에 따라 자동으로 조정될 수 있습니다(worker_processes 참조).

nginx와 해당 모듈의 작동 방식은 구성 파일에서 결정됩니다. 기본적으로 구성 파일의 이름은 nginx.conf이며 /usr/local/nginx/conf, /etc/nginx 또는 /usr 디렉터리에 있습니다. /local/etc/nginx.

nginx는 마스터 프로세스와 여러 작업자 프로세스로 구성됩니다. 마스터 프로세스는 주로 구성 파일을 읽고 작업자 프로세스를 관리하는 데 사용됩니다. nginx는 이벤트 모델을 기반으로 하며 작업자 프로세스를 효율적으로 활용하여 운영 체제 특성에 따라 요청을 처리할 수 있습니다. 작업자 프로세스 수는 구성 파일에 정의되어 있으며 지정된 구성 파일을 통해 정의할 수도 있고 CPU 코어 수에 따라 자동으로 결정될 수도 있습니다.
nginx 및 관련 모듈의 작동 모드는 구성 파일을 통해 지정됩니다. 기본적으로 구성 파일의 이름은 nginx.conf이며 /usr/local/nginx/conf, /etc/nginx 또는 /usr/local/etc/nginx 경로에 있습니다.

다음은 nginx 구성 파일 시작, 종료, 다시 로드와 관련된 작업입니다

구성 시작, 중지, 다시 로드

시작하려면 nginx, 실행 파일을 실행합니다. nginx가 시작되면 -s 매개변수를 사용하여 실행 파일을 호출하여 제어할 수 있습니다.

nginx -s <em>signal</em>

여기서 signal 은 다음 중 하나일 수 있습니다.

  • stop — 빠른 종료
  • quit — 우아한 종료
  • reload — 다시 로드 중 구성 파일
  • reopen — 로그 파일 다시 열기

예를 들어 작업자 프로세스가 현재 요청 처리를 완료할 때까지 기다리면서 nginx 프로세스를 중지하려면 다음 명령을 사용할 수 있습니다. 실행됨:

nginx -s quit
이 명령은 nginx를 시작한 동일한 사용자로 실행되어야 합니다.

구성 파일의 변경 사항은 다음 명령이 실행될 때까지 적용되지 않습니다. 구성 다시 로드는 nginx로 전송되거나 다시 시작됩니다. 구성을 다시 로드하려면 다음을 실행합니다.

nginx -s reload

마스터 프로세스가 구성을 다시 로드하라는 신호를 받으면 구문 유효성을 확인합니다. 새 구성 파일을 작성하고 여기에 제공된 구성을 적용하려고 시도합니다. 이것이 성공하면 마스터 프로세스는 새 작업자 프로세스를 시작하고 전송합니다. 그렇지 않으면 마스터 프로세스가 변경 사항을 롤백하고 이전 구성으로 계속 작업하여 종료하라는 명령을 받고 새 연결 수락을 중지합니다. 해당 요청이 모두 처리될 때까지 현재 요청을 계속 처리합니다. 그 후에는 이전 작업자 프로세스가 종료됩니다.


nginx가 시작되면 nginx -s [signal] 명령을 사용할 수 있습니다. control nginx.[signal]은 다음 명령일 수 있습니다:

  • stop — 빠른 중지
  • quit — 원활한 종료
  • reload — 구성 파일 다시 로드
  • reopen — 로그 파일 다시 열기
예를 들어 작업자 프로세스가 현재 요청 처리를 마칠 때까지 기다립니다. 그런 다음 nginx를 닫으면 사용할 수 있습니다

nginx -s quit

구성 파일이 변경되면 nginx를 다시 시작하거나 다시 로드하라는 명령을 받을 때만 새 파일이 됩니다. 구성 파일을 적용하려면

을 사용하세요.

nginx -s reload

마스터 프로세스는 구성 파일을 다시 로드하라는 신호를 받으면 먼저 새 구성 파일에 구문 오류가 있는지 확인합니다. 오류가 없으면 마스터 프로세스입니다. 새로운 구성을 채택하고 새 작업자 프로세스를 시작하는 동시에 이전 작업자 프로세스에 작업을 중지하도록 알립니다. 그렇지 않고 구성 파일에 오류가 있으면 마스터 프로세스는 계속 이전 구성을 사용하고 이전 작업자 프로세스는 계속 작동합니다. 마스터 프로세스가 작업자 프로세스에 작업 중지를 알리면 작업자 프로세스는 먼저 연결 수신을 중지한 다음 현재 요청을 모두 처리한 다음 종료하여 실행을 종료합니다.

위 내용은 내용의 측면을 포함하여 nginx의 기본 소개(공식 문서 기반)를 소개하고 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.