Nginx 서버(engine-X)는 웹 서버입니다. 오픈 소스, 고성능 HTTP 및 역방향 프록시 서버입니다. 또한 IMAP/POP3/SMTP 프록시 서비스와 같은 기능을 제공할 수도 있습니다. > (권장 학습: nginx, 사용)
**Nginx는 다중 프로세스 방식으로 작동합니다. **멀티스레딩도 지원하지만 주류 방식은 여전히 Nginx의 기본 방식인 멀티 프로세스 방식입니다.
Nginx가 시작되면 Unix 시스템의 데몬으로 백그라운드에서 실행됩니다. 백그라운드 프로세스에는 마스터 프로세스와 여러 작업자 프로세스가 포함됩니다.
마스터 프로세스는 주로 외부 세계로부터 신호 수신, 각 작업자 프로세스에 신호 보내기, 작업자 프로세스의 실행 상태 모니터링, 작업자 프로세스가 실행될 때 등 작업자 프로세스를 관리하는 데 사용됩니다. (비정상적인 상황에서) 종료되면 새 작업자 프로세스가 자동으로 다시 시작됩니다.
기본 네트워크 이벤트는 작업자 프로세스에서 처리됩니다. 여러 작업자 프로세스는 P2P 방식으로 클라이언트의 요청을 놓고 동등하게 경쟁하며 각 프로세스는 서로 독립적입니다.
요청은 하나의 작업자 프로세스에서만 처리할 수 있습니다. 작업자 프로세스는 다른 프로세스의 요청을 처리할 수 없습니다. 작업자 프로세스 수는 설정할 수 있습니다. 일반적으로 머신의 CPU 코어 수와 일치하도록 설정합니다.
Advantages
높은 동시 연결
공식 테스트에서는 50,000을 지원할 수 있습니다. 동시 연결 수는 실제 프로덕션 환경에서 동시 연결 수는 20,000~30,000에 이릅니다. Nginx 서버는 성능 최적화를 위해 특별히 개발되었습니다. 커널 Poll 모델을 지원하며 고부하 테스트를 견딜 수 있습니다.
낮은 메모리 소비
Nginx 서버는 단계적 리소스 할당 기술을 채택하여 CPU 및 메모리 사용량이 매우 낮습니다.
간단한 구성 파일
저렴한 비용: Nginx 서버는 오픈 소스 소프트웨어입니다.
Rewrite 재작성 규칙 지원
HTTP 요청을 다양한 도메인 이름과 URL을 기반으로 다양한 백엔드 서버 그룹으로 나눌 수 있습니다.
헬스체크 기능 내장.
Nginx 서버 Proxy 백엔드의 웹서버가 다운되면 프런트엔드 접속 영향을 받지 않습니다.
대역폭 절약
GZIP 압축을 지원하고 브라우저의 로컬 캐시 헤더를 추가할 수 있습니다.
높은 안정성.
Nginx 서버의 안정성은 매우 높습니다. 다른 HTTP 서버에 액세스 피크가 발생하거나 누군가 악의적으로 느린 연결을 시작하면 서버의 물리적 메모리가 고갈되고 빈번한 교환이 발생하며 서버가 응답을 잃을 가능성이 있습니다(서버는 다시 시작만 가능함).
또한 Nginx 서버는 마스터-슬레이브 모델을 채택하여 SMP의 장점을 최대한 활용하고 디스크 I/O에서 작업 프로세스의 차단 지연을 줄일 수 있습니다.
Nginx 서버 코드는 품질이 좋고 표준화되어 있으며 모듈 확장도 쉽습니다. Nginx 서버는 sendfile(Linux2.2+), accept-filter(FreeBSD4.1+) 및 TCP_DEFER_ACCEPT(Linux 2.4+) 지원과 같은 OS에서 제공하는 일부 최신 기능을 채택하여 성능을 크게 향상시킵니다.
위 내용은 nginx를 사용하면 어떤 이점이 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!