nginx

김효준·2023년 12월 17일
0

nginx 한마디 정의
아파치 서버의 동시커넥션 문제를 해결하귀 위해 나온 소프트웨어.
아파치 서버 앞단에 두어 클라이언트와의 동시커넥션을 담당하고 정적인 소스를 처리한다. 동적인 컨텐츠 요청이 있을때만 서버와의 커넥션을 형성한다.
마스터 프로세스를 통해 워커 프로세스로 클라인터 요청을 처리한다. 커넥션하나만 담당하지않고 형성된 커넥션에 아무런 요청이 없으면 새로운 커넥션을 형성한다. nginx에서는 커넥션형성 커넥션 제거 새로운 요청을 처리하는걸 이벤트라고 부르고 이벤트 드리븐 형식으로 동작한다.
이벤트들은 os커널이 큐 형식으로 워커 프로세스에 전달한다.
워크프로세스는 하나의 스레드로 큐들을 처리한다.
디스크io같은 오래걸리는 작업은 스레드 풀에서 수행한다.
워커프로세스는 cpu의 코어수만큼 생성한다.
cpu의 컨텍스트 스위칭을 사용을 줄여준다.
아파치서버와의 가장큰 차이점.
워커프로세스가 쉬지않고 일을해서 아파치서버의 커넥션 형성후 요청이 없을때 방치되던 프로세스보다 서버자원을 효율적으로 쓰는셈.

0개의 댓글

관련 채용 정보