포럼

https://github.com/xpressengine/xe-core/pull/1598

XE + varnish 캐시서버 + nginx/아파치 웹서버 세팅으로 기존의 XE속도를 100배까지 올리는 패치입니다.

간단한 벤치마크 결과로 100배~200배 성능의 향상이 있지만, 이는 물론 실제 운용의 성능 향상과 거리가 있을 수 있습니다. 다만 위 글에서 밝힌 내용에 따르면 varnish와 같이 사용할 경우에 현실적으로 XE 속도의 몇배의 향상은 가능하리라 생각됩니다. 

  • 서버 부하 최소화. 서버비 절약.
  • 클라우드플레어를 단독 혹은 varnish와 같이 사용 가능하며, DDoS 방어능력 업
  • Dom컨텐츠 로딩 타임 단축. 체감 성능 향상.

많은 관심 부탁드리겠습니다~

 

Varnish 캐시서버 + XE(+패치) + nginx(혹은 아파치) 성능은 위의 링크를 참조하시기 바랍니다. 이어지는 내용은 nginx 리버스 프록시 캐시 성능에 대한 추가적인 내용입니다. (이 글의 덧글로 올라온 질문에 대한 답변)

 

nginx reverse proxy cache + XE + 아파치 성능 테스트

  • nginx 세팅은
proxy_no_cache $cookie_nocache $arg_nocache$arg_comment; # 쿠키가 있으면 캐싱 안함
proxy_cache_valid 200 5s; # 5초간 캐싱. 이 값이 너무 크면 페이지가 제때에 갱신이 안되니 주의

패치 적용하지 않는 경우

Requests per second:    169.03 [#/sec] (mean)
Time per request:       177.487 [ms] (mean)
Time per request:       5.916 [ms] (mean, across all concurrent requests)
Transfer rate:          3503.33 [Kbytes/sec] received

패치를 적용하면

$ ab -n 1000 -c 30 http://localhost/

...

Requests per second:    3488.28 [#/sec] (mean)
Time per request:       8.600 [ms] (mean)
Time per request:       0.287 [ms] (mean, across all concurrent requests)
Transfer rate:          71305.82 [Kbytes/sec] received

...

$ ab -n 10000 -c 100 http://localhost/

Requests per second:    12813.79 [#/sec] (mean)
Time per request:       7.804 [ms] (mean)
Time per request:       0.078 [ms] (mean, across all concurrent requests)
Transfer rate:          261932.47 [Kbytes/sec] received

$ w
 14:43:52 up xx days, 22:07,  x user,  load average: 0.23, 0.25, 0.24