Server&DevOps

NGINX HTTP/2 적용

킨글 2025. 3. 18. 22:38

단순히 HTTP2만 적용했을 뿐인데

카카오 로그인 속도가 엄청나게 빨라졌다.

listen 443 ssl; --> listen 443 ssl http2;

이전

17초 소요

worker_processes auto;

events {
    worker_connections 1024;
}

http {
    ...
    server {
        listen 443 ssl;
        ...
    }
}

이후

0.1초 소요 (이게 가능한가?)

worker_processes auto;

events {
    worker_connections 1024;
}

http {
    ...
    server {
        listen 443 ssl http2;
        ...
    }
}

 

HTTP/2는 웹의 성능을 개선하기 위해 설계된 프로토콜로, 여러 가지 주요 기능과 이점을 제공합니다. HTTP/2의 주요 특징은 다음과 같습니다:

HTTP/2의 주요 특징
다중화 (Multiplexing): HTTP/2는 단일 연결을 통해 여러 요청을 동시에 처리할 수 있습니다. 이를 통해 요청 및 응답이 순차적으로 처리될 필요가 없어져 대기 시간을 줄이고 성능을 향상시킵니다.

헤더 압축 (Header Compression): HTTP/2는 HPACK이라는 알고리즘을 사용하여 헤더 정보를 압축합니다. 이는 데이터 전송량을 줄이고 성능을 높입니다.

서버 푸시 (Server Push): 서버는 클라이언트가 요청하지 않은 리소스를 미리 전송할 수 있습니다. 이를 통해 페이지 로딩 속도를 개선할 수 있습니다.

단일 연결 (Single Connection): 여러 개의 요청을 처리하기 위해 각각의 TCP 연결을 생성할 필요가 없으므로, 연결 수를 줄이고 성능을 최적화할 수 있습니다.

 

HTTP/3도 엄청 기대된다.

Nginx에서 HTTP/3를 사용하려면, HTTP/3가 지원되는 Nginx 버전이 필요하며, 이를 위해 QUIC 프로토콜을 활성화해야 합니다. 현재 Nginx는 공식적으로 HTTP/3를 지원하는 버전에서 QUIC을 사용할 수 있습니다.