# 참고 : http://zabbixzone.com/zabbix/making-your-frontend-faster/
http://httpd.apache.org/docs/2.2/ko/mod/mod_deflate.html
=======================================================================
# 테스트 환경
CPU : 2.4Ghz * 1
MEM : 1GB
OS : Linux version 2.6.35.6 (Fedora release 14)
Apache : 2.2.17
Zabbix : 1.8.8
PHP : 5.3.8
ApacheBench : 2.3
=======================================================================
Zabbix 웹 페이지는 많은 양의 HTML 컨텐츠를 포함하고 있으며, 모니터링 대상 호스트 및 아이템 등이 증가할 수록 웹 페이지의 속도나 부하는 증가할 것입니다. 관련하여 Apache의 Gzip 압축 전송 기능을 통해 네트워크 트래픽을 조금이라도 줄여 속도를 개선하고자 다음과 같은 테스트를 하였습니다.
참고로, Apache 2.2 버전 이상에서는 mod_deflate 모듈을 디폴트로 제공하고 있어 간단한 환경 설정을 통해 Gzip 압축 전송 기능을 구현할 수 있습니다.
1. httpd.conf 환경파일 수정
- httpd.conf 의 DSO Support 항목에 아래와 같이 LoadModule 부분에 mod_deflate.so/mod_headers.so 파일이 기술되어 있는지 확인 (혹, 주석 처리된 경우 주석을 제거하고, 코드 자체가 없으면 새로 기술)
# Dynamic Shared Object (DSO) Support
LoadModule deflate_module modules/mod_deflate.soLoadModule headers_module modules/mod_headers.so
~ 생 략 ~
- httpd.conf 파일 하단에 아래 구문 추가 (DEFLATE 출력 필터 설정 부분)
- 각 항목에 대한 자세한 설명은 http://httpd.apache.org/docs/2.2/ko/mod/mod_deflate.html 사이트 참고
<Location /zabbix>
# Insert filter
SetOutputFilter DEFLATE
# Netscape 4.x has some problems
BrowserMatch ^Mozilla/4 gzip-only-text/html
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# Don't compress images
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</Location>
2. Apache, Zabbix 서비스 재시작
[root@zabbix ~]# service httpd restart
[root@zabbix ~]# service zabbix_server restart
3. HttpWatch 프로그램을 통해 Gzip 압축 전송기능(mod_deflate) 반영여부 체크
- mod_deflate 모듈 반영 전
- mod_deflate 모듈 반영 후
: HttpWatch 프로그램 하단의 Headers Received 화면에서 Content-Encoding 항목의 Value 값이 'gzip' 으로 표시됨
4. HttpWatch 와 같은 프로그램 뿐만 아니라, 아래 사이트에서 제공하는 방법으로도 Gzip 압축 전송기능 사용여부를 쉽게 체크 가능
# HTTP Compression Test (http://www.whatsmyip.org/http_compression/)
# Gzip Test for Web Page Compression (http://aruljohn.com/gziptest.php)
5. Apache Benchmark 툴로 작업 전/후 속도 체크
- mod_deflate 모듈 반영 전
[root@zabbix ~]# ab -c 50 -n 500 http://localhost/zabbix/overview.php
Time taken for tests: 106.420 seconds
Requests per second: 4.70 [#/sec] (mean)
Time per request: 10642.015 [ms] (mean)
Time per request: 212.840 [ms] (mean, across all concurrent requests)
Transfer rate: 58.42 [Kbytes/sec] received
- mod_deflate 모듈 반영 후
[root@zabbix ~]# ab -c 50 -n 500 http://localhost/zabbix/overview.php
Time taken for tests: 103.431 seconds
Requests per second: 4.83 [#/sec] (mean)
Time per request: 10343.099 [ms] (mean)
Time per request: 206.862 [ms] (mean, across all concurrent requests)
Transfer rate: 60.27 [Kbytes/sec] received
** 테스트 버전의 Zabbix 서비스라 그런지..
Gzip 압축 전송기능(mod_deflate) 반영 전/후의 속도 차이가 크지 않다.
설치가 다 끝이 아닌가보다. 다시 고민 시작..
'::: 오픈소스 ::: > Zabbix' 카테고리의 다른 글
Zabbix 세미나 (0) | 2018.10.14 |
---|---|
Installing Zabbix 2.0.x on CentOS The Easy Way! (0) | 2012.10.31 |
Zabbix 서버내 관련 서비스 버전 확인 방법 (0) | 2012.10.24 |
Zabbix 서버에 Orabbix 1.2.3 버전 설치 (0) | 2012.10.18 |
Install Precompiled Zabbix Agent on Red Hat Enterprise Linux (1) | 2012.05.03 |