상현에 하루하루
개발자의 하루

워드프레스 웹서버 선택 nginx or Apache

( 업데이트: )

Nginx, Apache 웹 서버중에 워드프레스 서비스를 운영할때 어떤 것을 선택하는 것이 더 좋을까?

이 두 웹 서버는 둘다 다양한 워크로드를 처리할 수 있고 다른 소프트웨어와 함께 작동하며 LAMP, LEMU 스택으로 구성할 수 있습니다. 그러나 이러한 웹 서버를 정확하게 비교하려면 차이점을 이해해야 한다.

Apache

Apache는 다음과 같은 다양한 이점을 제공

  • Apache는 주요 리눅스 배포버전에 사전 설치되어 제공된다.
  • Apache에는 서로 도움을 제공하는 대규모 사용자 커뮤니티가 있다.
  • 동적 모듈 로딩 시스템으로 서버를 업데이트할 때 메인 패키지를 건드리지 않도록 한다.
  • .htaccess의 URL 재작성 기능: Apache2는 깨끗한 재작성을 위해 mode_rewrite를 사용한다.
  • 모듈식 설계로 더 큰 사용자 정의와 유연성을 제공
  • httpd.conf 파일을 사용한 서버 구성으로 기본 apache2.conf 파일에 액세스 할 필요가 없으므로 구성이 쉽다.

Nginx

  • 경량 설계: nginx는 최소 하드웨어에서 실행할 수 있으며 Apache 보다 적은 메모리를 사용
  • 정적 콘텐츠 처리: 올바르게 구성된 경우 더 나은 정적 콘테츠 처리를 제공한다.
  • 과부하 응답성: nginx는 트래픽이 많을 때 높은 응답성을 유지한다.
  • 사용자 친화적 디자인: 학습 곡성이 더 쉽고 nginx는 초보자 친화적
  • 모듈식 설정: 이 서버의 설계는 유연한 빌드와 다양한 타바 모듈을 허용

nginx는 많은 부하를 처리할 수 있기 때문에 트래픽이 많은 웹사이트에 더 나은 옵션으로 간주되는 경우가 많다. 또한 정적 콘텐츠가 많은 사이트에서 최고의 성능을 유지한다.

Apache와 Nginx의 차이점

둘 사이에는 많은 차이점이 있지만 가장 큰 차이점은 이러한 웹 서버가 요청을 처리하는 방식이다.

Apache는 분기된 솔루션을 사용 nginx는 비차단 이벤트 루프를 사용

Apache는 요청 처리 작동 방식을 지시하는 MPM(다중 처리 모듈)을 제공한다. 분기 접근 방식을 사용하면 연결 처리 아키텍처를 더 쉽게 교체할 수 있다. 각 모듈은 서버 요청을 처리하기 위해 서로 다른 프로세스를 시작한다.

  • 다중 스레드를 처리하는 프로세스를 생성하는 모듈인 mpm-worker
  • 각 스레드는 서버에 대한 단일 연결.
  • 이 모듈을 추가하면 서버를 확장할 수 있고 많은 양의 트래픽은 관리할 수 있다.

Nginx는 다르며 동시 요청 처리를 위해 작업자 프로세스만 생성.

이러한 프로세스는 요청을 지속적으로 확인하고 처리하는 비차단 이벤트이다.

이 지속적인 검사는 루프를 만듭니다. 루프의 모든 이벤트는 비동기식이며 연결이 닫힐 때 루프에서 제거됩니다.

WordPress에서 최고의 성능을 낼 수 있는 웹 서버는?

Apache와 nginx 모두 wordpress와 잘 작동한다. 그러나 향샹된 성능을 원한다면 nginx가 더 좋은 선택일 수 있다.