robert.log
로그인
robert.log
로그인
Nginx 개요
robert
·
2022년 11월 18일
팔로우
0
Nginx
0
Nginx란?
간단히 말해 경량 웹서버다.
클라이언트로부터 요청을 받고 요청에 맞게 정적 파일을 응답해주는 역할을 한다.
Reverse Proxy Server로 활용하여 요청을 받아 WAS로 전달하는 역할로도 사용이 가능하다.
Nginx를 왜 사용하는가?
높은 동시성 처리 : Event-Driven 방식을 사용하여 Apache 웹서버 대비 적은 리소스를 사용하여 높은 동시성 처리가 가능하다.
로드밸런싱 : 요청이 몰릴 경우 요청을 여러 서버로 분산 시키는 역할로도 사용 가능하다.
보안 : 외부에서 WAS로 직접 붙지 않고 Nginx를 통함으로써 외부와의 직접적인 접촉을 막는다. 이로써 방화벽을 설치하거나 기타 조치를 통해 WAS 서버가 죽는 것을 방지할 수 있다.
캐싱 : 이미지, CSS, JS 파일 같은 정적 컨텐츠를 캐싱하여 빠른 응답이 가능하다.
Nginx, Apache 비교
Apache
Apache는 요청을 받을때 새로운 프로세스 또는 스레드가 생성하여 처리가 된다. 요청마다 스레드가 생성되므로 자원 소모가 크다.
Nginx
Nginx는 Event-Driven 방식으로 동작하기 때문에 한 개 또는 고정된 프로세스만 사용하고 요청은 비동기적으로 처리한다.
Nginx는 새로운 요청이 들어와도 새로운 프로세스와 스레드를 생성하지 않기 때문에 자원 사용이 적다.
Nginx 구조
Nginx는 하나의 Master Process와 다수의 Worker Process로 구성되어 실행된다.
Master Process는 설정 파일을 읽고 유효성 검사를 하며 Worker Process를 관리한다.
실제 요청 처리는 Master Process가 아니라 Worker Process가 요청을 처리한다.
Worker Process의 개수는 설정 파일에서 정의되며, 정의된 프로세스 개수와 사용 가능한 CPU 코어 숫자에 맞게 자동 조정된다.
robert
화이팅!
팔로우
이전 포스트
Jpa 사실과 오해
다음 포스트
NHN Cloud Hands on Lab 첫걸음 교육 수강 후기
0개의 댓글
댓글 작성