문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
web:performance [2012/11/21 16:44] kwon37xi |
web:performance [2021/10/19 22:51] (현재) kwon37xi [keepalive] |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== Web 성능 향상 ====== | ====== Web 성능 향상 ====== | ||
+ | * [[http:// | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
줄 5: | 줄 6: | ||
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | |||
+ | ===== 성능 향상 기법 ===== | ||
+ | * 이미지 등의 정적 리소스는 4대 정도의 서버에 분할해서 서빙하는 것이 좋다(예: img1.xxx.com, | ||
+ | |||
+ | ===== keepalive ===== | ||
+ | * 기본적으로 keepalive를 켜서 커넥션을 재활용하는 것이 좋다. | ||
+ | * [[aws: | ||
+ | * 이에 따라, HTTP Client Keep Alive X -> ALB Keep Alive Timeout Y -> nginx/was Keep Alive timeout Z 가 있을 때 **'' | ||
+ | * 최근 웹서비스들 중 웹 애플리케이션은 CSS, Image, JS등을 직접 서빙하지 않고 CDN에 맡기고, 웹 애플리케이션 자체는 컨트롤러 역할만 하는 경우가 많다. | ||
+ | * 이 경우 keepalive를 길게 가져가면 웹 브라우저를 통한 사용자 접속이 커넥션 소켓만 점유할 뿐 실질적인 이득이 없다. | ||
+ | * 사용자가 컨트롤러를 호출하는 것은 주로 마우스 클릭등이 발생했을 때인데 이 시간이 길기 때문이다. | ||
+ | * 따라서 웹 애플리케이션 특징에 따라 keepalive를 끄거나 매우 짧게 가져가는 것이 유리할 때도 있다. | ||
+ | * API 처럼 지속적 호출이 거의 확실한 경우에는 keepalive를 켠다. | ||
+ | * 무작정 keepalive 유지 시간을 정하지 말고, 성능 테스트를 해가며 살펴볼 것. |