>  기사  >  백엔드 개발  >  nginx 인프라

nginx 인프라

WBOY
WBOY원래의
2016-07-29 09:09:12884검색

웹 서버 설계의 주요 제약

  1. 성능
    1. 네트워크 성능
    2. 단일 요청의 지연 시간
    3. 네트워크 효율성
  2. 확장성
  3. 단순성
  4. 수정성
  5. 가시성
  6. 이식성
  7. 신뢰성

Nginx의 아키텍처 디자인

  1. 모듈형 디자인
    높은 수준의 모듈식 설계는 Nginx의 아키텍처 기반입니다. 소수의 핵심 코드를 제외하고 나머지는 모두 모듈입니다.
    특징:
    1. 매우 추상적인 모듈 인터페이스
    2. 모듈 인터페이스는 매우 간단하고 유연성이 높습니다.
    3. 구성 모듈 설계
    4. 모듈의 핵심 단순화 인터페이스
    5. 다단계, 다중 카테고리 모듈 설계
  2. 이벤트 기반 아키텍처
    이벤트는 일부 이벤트 소스에 의해 생성되며, 하나 이상의 이벤트 수집기가 이벤트를 수집하고 배포합니다. 그런 다음 많은 이벤트 프로세서가 관심 있는 이벤트를 등록하고 이러한 이벤트를 "소비"합니다.

  3. 요청의 다단계 비동기 처리
    요청의 다단계 비동기 처리는 이벤트 기반 아키텍처를 기반으로만 구현할 수 있습니다.
    요청 처리는 이벤트 트리거 방식에 따라 여러 단계로 나뉘며, 각 단계는 이벤트 수집자 및 배포자에 의해 트리거될 수 있습니다.

  4. 관리 프로세스, 다중 작업자 프로세스 설계
    Nginx는 하나의 마스터 관리 프로세스와 다중 작업자 프로세스의 설계 방식을 채택합니다.
    이 설계의 장점:
    1. 멀티 코어 시스템의 동시 처리 기능 활용
    2. 로드 밸런싱
    3. 관리 프로세스는 시스템 상태를 모니터링하는 역할을 담당합니다. 작업자 프로세스 및 이를 관리하는 방법
  5. 플랫폼 독립적인 코드 구현
    C언어로 구현되므로 운영체제 플랫폼과 관련된 코드의 사용을 최소화하도록 노력하세요.
    Nginx는 로그, 다양한 기본 데이터 구조, 공통 알고리즘 및 기타 도구 소프트웨어를 다시 캡슐화합니다.
    핵심 코드는 운영체제와 독립적인 코드를 사용하여 구현되며, 운영체제와 관련된 시스템 호출은 운영체제별로 독립적으로 구현된다.

  6. 메모리풀 디자인
    시스템에서 메모리를 요청하는 여러 작업을 하나의 작업으로 통합하면 CPU 리소스 소비가 크게 줄어들고 메모리 조각화가 줄어듭니다.

  7. 통합 파이프 필터 패턴을 사용한 HTTP 필터링 모듈

  8. 다른 사용자 모듈

    Nginx 프레임워크의 핵심 구조 Body ngx_cycle_t

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

위 내용은 다양한 측면을 포함하여 Nginx 인프라를 소개하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

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