728x90
기본적으로 아파치의 기능들은 모듈화하여 제공되며, 사용자들은 필요한 모듈을 추가하거나 제거할 수 있다. 이러한 모듈을 관리하는 방법에는 정적 모듈(Static Modules)과 동적 모듈(DSO, Dynamic Shared Object) 두 가지가 있다.

Static 방식
Apache를 컴파일할 때 필요한 모든 모듈을 포함하여 정적으로 빌드하는 방식이다.
이 경우에는 Apache를 시작할 때 모든 모듈이 메모리에 로드된다. Apache를 컴파일할 때 필요한 모든 모듈을 빌드하기 때문에 초기 로딩 속도가 빠르고 의존성을 신경쓰지 않아도 된다는 장점이 있지만, 불필요한 모듈까지 포함되어 메모리가 낭비될 수도 있다는 단점이 있다. 또한 새로운 모듈을 추가하거나 제거할 시에는 Apache 재컴파일이 필요하다.
DSO(Dynamic Shared Object) 방식
Static 방식는 다르게 필요한 모듈만 동적으로 로드하는 방식이다.
Apache 설정 파일인 httpd.conf에서 LoadModule을 사용해 필요한 모듈을 로드할 수 있다. 필요한 모듈만 로드하기 때문에 메모리 사용량을 줄일 수 있고, Apache 재시작 없이도 모듈을 추가하거나 제거할 수 있다는 장점이 있다. 하지만 특정 모듈 로드 시에는 약간의 지연이 발생할 수 있고, 모듈 간 의존성 관리가 필요하다는 단점이 있다.
비교
| 특징 | Static Modules | Dynamic Modules(DSO) |
| 로드 방식 | Apache 컴파일 시 모든 모듈 빌드 | 필요한 모듈만 동적으로 로드 |
| 유연성 | 모듈 추가/제거 시 Apache 재시작 필요 | Apache 재시작 없이도 쉽게 모듈 추가/제거 가능 |
| 메모리 사용률 | 모든 모듈이 항상 메모리 차지 | 필요한 모듈만 메모리에 로드 |
| 성능 | 초기 로딩 속도 빠름 | 특정 모듈 로드 시 지연 발생 |
| 의존성 | 의존성 문제가 적음 | 모듈 간 의존성 관리 필요 |
728x90
'SW > WEB WAS' 카테고리의 다른 글
| Apache JMeter을 통한 성능 테스트 방법 (0) | 2024.09.30 |
|---|---|
| Apache JMeter란? 설치 및 실행 방법 (2) | 2024.09.28 |
| [Apache] Proxy란? Proxy 사용 목적, 종류, 설정 방법까지 (0) | 2024.09.25 |
| [Apache] 아파치 에러 페이지 설정 방법 (0) | 2024.09.24 |
| [Apache] OpenSSL을 사용한 자체 서명된 인증서 발급 및 적용 (0) | 2024.09.21 |