본문 바로가기

WEB/OHS

[OHS] Web 서버 정적파일 gzip 압축 전송

반응형

 

OHS에서 웹사이트 성능 개선을 위해 image, js, css 등 정적파일을 gzip으로 압축하여 전송하는 방법

(deflate 모듈을 사용 전송 방식을 변경)

 

1. 모듈 로딩 설정

- OHS 12버전 기준 httpd.conf 파일 내 아래 모듈 선언 필요

….
LoadModule deflate_module ${PRODUCT_HOME}/modules/mod_deflate.so
LoadModule filter_module ${PRODUCT_HOME}/modules/mod_filter.so
…

 

2. 가상호스트 별로 deflate 모듈 설정 추가

<IfModule deflate_module>

	AddOutputFilterByType DEFLATE text/plain 
	AddOutputFilterByType DEFLATE text/html
	AddOutputFilterByType DEFLATE text/xml
	AddOutputFilterByType DEFLATE text/css
	AddOutputFilterByType DEFLATE application/xhtml+xml
	AddOutputFilterByType DEFLATE application/xml
	AddOutputFilterByType DEFLATE application/rss+xml
	AddOutputFilterByType DEFLATE application/javascript

	DeflateCompressionLevel 9

	BrowserMatch ^Mozilla/4 gzip-only-text/html
	BrowserMatch ^Mozilla/4\.0[678] no-gzip
	BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

</ifModule>

 

3. 테스트 확인

- 개발자 모드에서 Response Header를 확인해보면 Content_encoding 방식이 gzip 인것을 확인 가능

 

4. 해당 가능의 장단점

- 장점 : 압축을 하여 전송하므로 전송 속도를 향상 시킬 수 있음

- 단점 : 해당 기능을 사용하면 서버에 부하가 생길 수 있음 

 

5. 후기

- DefalateCompressionLevel 옵션을 통한 압축률을 높게 설정할수록 CPU 사용률이 증가하지만 생각보다 사용률이 증가하지는 않았으며 압축을 통해서 속도 개선이 더 되었음

- 압축은 일반적으로 1~2KB 이상 파일을 권장하며 그 이하는 압축으로 인한 효과보다 리소스 사용량을 더 소모함

 

 

[참고]

http://httpd.apache.org/docs/2.4/ko/mod/mod_deflate.html
https://cafe.naver.com/cywelltech/205

반응형