[우분투] 아파치 웹서버 (프로세스 모델과 쓰레드 모델) Computer Tip

예전 유닉스 데몬 프로그램을 작성할 당시,
Concurrent Server 모델이 있었는데 쓰레드가 나오고 나서는 쓰레드 모델도 많이 사용되고는 했다.
서로 장단점이 있을 수 있으나 최근에는 멀티 쓰레드 기반의 서버가 대세가 되어가는 듯 하다.

아파치 웹서버도 worker(thread) 모델과 prefork(process) 모델로 구축할 수 있다.

역시 우분투에서 간단히 명령 하나로 설정이 가능하다.

$ sudo apt-get install apache2-mpm-worker
(worker, thread 모델 설정)

또는

$ sudo apt-get install apache2-mpm-prefork
(prefork, process 모델 설정)

확인은,

$ sudo apache2ctl -l
Compiled in modules:
  core.c
  mod_log_config.c
  mod_logio.c
  prefork.c
  http_core.c
  mod_so.c

와 같이 prefork 혹은, worker 모듈이 나오는지로 확인 가능하다.

또한,

apache2-mpm-worker - High speed threaded model for Apache HTTPD
apache2-mpm-prefork - Traditional model for Apache HTTPD

외에도,

apache2-mpm-event - Event driven model for Apache HTTPD
apache2-mpm-perchild - Transitional package - please remove

다음과 같은 서비스 모델이 있으며 각각 DDoS와 같은 외부 공격의 종류에 따라
방어 방법이 달라질 수 있을 것이다.

덧글

댓글 입력 영역

구글애드텍스트