nginx

Younghwan Cha·2023년 2월 21일
0

nginx

목록 보기
1/7
post-thumbnail

process

  • master process
  • worker process

main directory

/etc/nginx/

nginx 서버가 사용하는 기본 설정이 저장된 root dir

/etc/nginx/nginx.conf

nginx default config file

/etc/nginx/conf.d/

추가적인 .conf 파일들을 저장

/var/log/nginx/

nginx log 가 저장되는 dir( access.log & error.log )

command


# config 파일 경로 직접 지정
nginx -c <filename> ( default: /etc/nginx/nginx.conf )

# nginx help
nginx -h

# nginx 설정을 시험
nginx -t

# nginx 설정을 시험하고 결과를 화면에 보여줌
nginx -T

# send nginx signal to master process
nginx -s <signal>

	nginx -s stop: nginx process 가 즉시 동작을 멈춤
    nginx -s quit: 현재 진행 중인 request 를 모두 처리 후 nginx process 종료
    nginx -s reload: 변경된 nginx conf 를 읽어들임
    nginx -s reopen: 지정된 log file 을 다시 열도록함

Docker

아래는 기본적인 구조이다. daemon off 에서 ; 를 빼먹지 말도록 하자.

FROM nginx:alpine

COPY ./nginx.conf /etc/nginx/nginx.conf
RUN rm -f /etc/nginx/conf.d/*

CMD ["nginx", "-g", "daemon off;"]

[nginx command] https://gongzza.github.io/linux/how-to-control-nginx/

C10K 문제와 nginx 의 등장


apache와 nginx

  • 빠르다

비동기 소켓을 사용하기 때문에 받은 요청 수만큼 자식 프로세스를 생성하지 않는다
코어당 한 프로세스만으로도 수천 개의 연결을 처리하는 데 충분하기 때문에 CPU 부하나 메모리 사용량이 적다.

  • 사용에 용이하다
    다른 웹 서버보다 구성 파일을 읽고 조작하기 쉽다

  • 모듈이라는 강력한 플러그인 시스템을 사용한다


[nginx github] https://github.com/nginx/nginx

profile
개발 기록

0개의 댓글