Nginx Apache 차이
Nginx Apache 차이
Nginx Apache 차이
- Apache 서버는 클라이언트의 connection 요청이 들어오면 프로세스를 생성
- 다만 프로세스를 만드는 시간이 오래 걸리므로, 미리 프로세스를 생성해 두는 prefork 방식 사용
- 그러나 이 방법은 동시에 연결된 커넥션이 만 개 이상으로 많아지는 경우 메모리 고갈 문제 발생
- 기하급수적인 context switching이 발생하며 더 이상 커넥션이 생성되지 않는 C10K 문제가 생김
- Apache 서버의 확장성은 좋음
- NGINX는 아파치 서버의 부족한 부분을 보완하기 위해 등장한 웹 서버
- 아파치 서버 앞에서 동시 커넥션을 nginx가 담당
- 마스터 프로세스 밑에 여러 자식 프로세스를 만들어
비동기 논블로킹 방식
으로 처리 - Event가 발생할 때 마다 처리하는 event-driven 구조의 웹 서버
- 확장성은 apache보다 안 좋지만, 성능이 좋음
References
- https://blog.hojaelee.com/262
- https://velog.io/@jay13jeong/Nginx%EC%99%80-Apache
- https://ariels1996.github.io/til/til22/