>  기사  >  운영 및 유지보수  >  nginx와 아파치의 차이점

nginx와 아파치의 차이점

(*-*)浩
(*-*)浩원래의
2019-06-04 16:29:273342검색

Nginx 기능

경량, C로 작성, 동일한 웹 서비스가 더 적은 메모리와 리소스를 차지합니다.

nginx와 아파치의 차이점

동시성 방지, nginx는 epoll 및 kqueue를 개발 모델로 사용하고 요청을 비동기식으로 처리합니다. 로드 용량은 아파치보다 훨씬 높지만 아파치는 차단됩니다. 높은 동시성에서 nginx는 낮은 리소스 소비와 높은 성능을 유지할 수 있는 반면, apache는 PHP 처리가 느리거나 프런트 엔드 압력이 높을 때 프로세스 수가 급증하고 서비스 거부가 발생하기 쉽습니다.

nginx는 정적 파일을 잘 처리하고 정적 처리 성능이 Apache보다 3배 이상 높습니다.

nginx의 디자인은 고도로 모듈화되어 있으며 모듈 작성이 비교적 간단합니다.

nginx는 구성이 간단합니다. -t 구성에 문제가 있는지 테스트합니다. 다시 시작할 때 구성이 잘못된 것으로 확인되면

nginx가 충돌합니다. 7레이어 로드 밸런싱을 지원하는 로드 밸런싱 서버입니다.

nginx 자체가 리버스 프록시 서버이며 리버스 프록시 서버로 사용할 수 있습니다. 매우 우수한 메일 ​​프록시 서버입니다.

시작하기가 매우 쉽고 실행할 수 있습니다. 거의 24시간 중단 없이 몇 달 동안 실행하더라도 다시 시작할 필요가 없으며 서비스 중단 없이 소프트웨어 버전도 업그레이드할 수 있습니다

커뮤니티가 활성화되어 있으며 다양한 고성능 모듈이 빠르게 생산됩니다.

Apache 기능

pache의 rewrite는 nginx보다 강력합니다. rewrite가 잦을 때는 apache를 사용하세요

Apache는 지금까지 기본적으로 생각해볼 수 있을 만큼 많은 모듈을 개발해 왔습니다. nginx는 상대적으로 더 많은 버그를 가지고 있습니다.

apache는 PHP에 대한 지원이 상대적으로 간단합니다.

apache는 동적 요청을 처리하는 데 장점이 있습니다. , nginx에는 이 측면이 쓸모가 없습니다. 일반적으로 동적 요청은 Apache에서 수행해야 하지만 nginx는 정적 및 역방향 요청에 적합합니다.

apache는 풍부한 기능, 성숙한 기술 및 개발 커뮤니티를 갖춘 여전히 주류입니다

요약

둘 사이의 핵심 차이점은 apache가 동기식 다중 프로세스 모델이고 하나의 연결이 하나의 프로세스에 해당하는 반면 nginx는 비동기식이라는 것입니다. , 여러 연결(10,000 레벨)이 하나의 프로세스에 해당할 수 있습니다

일반적으로 성능이 필요한 웹 서비스의 경우 nginx를 사용합니다. 성능이 필요하지 않고 안정성만 원하는 경우 후자의 다양한 기능 모듈이 전자보다 더 잘 구현되어 있습니다. 예를 들어 SSL 모듈은 전자보다 낫고 구성 가능한 항목이 더 많습니다. epoll(freebsd의 kqueue) 네트워크 IO 모델은 nginx의 높은 처리 성능의 근본적인 이유이지만 epoll 자체가 정적 서비스를 제공하는 경우 파일 수가 적고 Apache의 선택 모델이 될 수 있습니다. epoll보다 성능이 좋습니다. 물론 이는 네트워크 IO 모델의 원리를 기반으로 한 가정일 뿐입니다. 실제 애플리케이션은 여전히 ​​실제로 테스트해야 합니다.

더 일반적인 해결책은 동시성 방지를 위해 프런트 엔드에 nginx를 사용하고 백엔드에 Apache 클러스터를 사용하는 것인데, 이는 함께 더 잘 작동합니다.

더 많은 Nginx 관련 기술 기사를 보려면

Nginx 사용법 튜토리얼

칼럼을 방문하세요!

위 내용은 nginx와 아파치의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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