tencent cloud

피드백

세션 지속성

마지막 업데이트 시간:2024-01-04 19:52:57
    세션 지속성은 동일한 IP에서 동일한 리얼 서버로 요청을 포워딩할 수 있습니다. 기본적으로 CLB 인스턴스는 로드 밸런싱을 위해 요청을 다른 리얼 서버로 라우팅합니다. 그러나 세션 지속성을 사용하여 지정된 사용자의 요청을 동일한 리얼 서버로 라우팅할 수 있으므로 세션을 유지해야 하는 일부 애플리케이션(예시: 장바구니)이 제대로 실행될 수 있습니다.

    레이어 4 세션 지속성

    레이어 4 프로토콜(TCP/UDP)은 소스 IP 기반 세션 지속성을 지원합니다. 세션 지속 기간은 30 - 3600초 사이의 정수로 설정할 수 있습니다. 시간 임계값이 초과되고 세션에 새 요청이 없으면 세션 지속성이 종료됩니다. 세션 지속성은 로드 밸런싱 모드의 영향을 받습니다.
    리얼 서버의 가중치를 기반으로 요청을 분산하는 ‘가중 라운드 로빈’ 모드에서는 소스 IP 기반 세션 지속성을 지원합니다.
    전체 스케쥴링이 서버 부하와 가중치에 따라 달라지는 ‘가중 최소 연결’ 모드에서는 세션 지속성이 지원되지 않습니다.

    레이어 7 세션 지속성

    레이어 7 프로토콜(HTTP/HTTPS)은 Cookie 삽입을 기반으로 세션 지속성을 지원합니다(CLB는 Cookie를 클라이언트에 삽입). 세션 지속 기간은 30 - 3600초 사이의 값으로 설정할 수 있습니다. 세션 지속성은 로드 밸런싱 모드의 영향을 받습니다.
    리얼 서버의 가중치를 기반으로 요청을 분산하는 ‘가중 라운드 로빈’ 모드에서는 Cookie 삽입을 기반으로 하는 세션 지속성을 지원합니다.
    전체 스케쥴링이 서버 부하와 가중치에 따라 달라지는 ‘가중 최소 연결’ 모드에서는 세션 지속성이 지원되지 않습니다.
    ‘IP Hash’ 모드는 소스 IP를 기반으로 세션 지속성을 지원하지만 Cookie 삽입에는 지원하지 않습니다.

    연결 제한 시간

    현재 HTTP 연결 제한 시간(keepalive_timeout)은 기본적으로 75초입니다. 조정하려면 Custom Configuration을 활성화하십시오. 임계값을 초과하고 세션에 데이터 전송이 없으면 연결이 끊어집니다. 현재 TCP 연결 제한 시간은 기본적으로 900초이며 사용자 지정할 수 없습니다. 임계값을 초과하고 세션에 데이터 전송이 없으면 연결이 끊어집니다.

    세션 지속성 구성

    1. CLB 콘솔에 로그인하고 세션 지속성을 구성할 CLB 인스턴스의 ID를 클릭하여 세부 정보 페이지로 이동합니다.
    2. [리스너 관리] 탭을 선택합니다.
    3. 세션 지속성으로 구성할 CLB 리스너 다음에 [수정]을 클릭합니다.
    4. 세션 지속성 기능 활성화 여부를 선택합니다. 버튼을 클릭하여 활성화하고 지속 시간을 입력한 다음 [확인]을 클릭합니다.

    지속 연결과 세션 지속성의 관계

    시나리오1: HTTP 레이어 7 비즈니스

    Client가 HTTP/1.1 프로토콜에 액세스하고 헤더 정보에 Connection:keep-alive가 구성되어 있다고 가정합니다. 클라이언트는 세션 지속성을 활성화하지 않고 CLB 인스턴스를 통해 CVM에 액세스합니다. 클라이언트가 다음에 동일한 CVM에 액세스할 수 있습니까?
    A: 아니오.
    첫째, HTTP keep-alive는 요청이 전송된 후에도 TCP 연결이 연결된 상태를 유지하므로 브라우저가 동일한 연결을 통해 요청을 보낼 수 있음을 나타냅니다. 지속 연결은 각 요청에 대해 새 연결을 설정하는 데 필요한 시간을 줄이고 대역폭 소비를 줄입니다. CLB 클러스터의 기본 타임 아웃 시간은 75초입니다(75초 이내에 새 요청이 없으면 기본적으로 TCP 연결이 끊어집니다).
    HTTP keep-alive는 Client와 CLB 인스턴스 간에 설정됩니다. Cookie 세션 지속성이 비활성화된 경우 CLB 인스턴스는 폴링 정책에 따라 CVM 인스턴스를 무작위로 선택합니다. 이전 지속 연결은 더 이상 유효하지 않습니다.
    따라서 세션 지속성을 활성화하는 것이 좋습니다.
    Cookie 세션 지속 기간이 1000초로 구성된 경우 Client는 다시 요청을 시작합니다. 두 요청 사이의 간격이 75초를 초과하므로 TCP 연결을 다시 설정해야 합니다. 애플리케이션 레이어는 Cookie를 식별하고 Client가 마지막으로 액세스한 CVM 인스턴스를 찾아 이번에는 다시 평가됩니다.

    시나리오2: TCP 레이어 4 비즈니스

    Client가 액세스를 시작하고 TCP가 전송 레이어 프로토콜이며 지속 연결이 활성화되어 있지만 소스 IP를 기반으로 하는 세션 지속성이 비활성화되어 있는 경우, 동일한 Client가 다음 액세스 요청에서 동일한 서버에 액세스할 수 있습니까?
    A: 반드시 그렇지는 않습니다.
    첫 번째, 레이어 4 구현 메커니즘에 따르면 TCP에 대해 지속 연결이 활성화되고 닫히지 않고 두 요청에서 동일한 연결에 액세스되면 동일한 클라이언트가 동일한 서버에 액세스할 수 있습니다. 두 번째 액세스 요청 중에 어떤 이유로(예시: 네트워크 재시작 또는 연결 시간 초과) 연결이 닫히면 요청이 다른 실제 서버로 스케쥴링될 수 있습니다. 지속 연결의 기본 전역 제한 시간은 900초입니다. 즉, 900초 동안 새 요청이 없으면 지속 연결이 릴리스됩니다.
    문의하기

    고객의 업무에 전용 서비스를 제공해드립니다.

    기술 지원

    더 많은 도움이 필요하시면, 티켓을 통해 연락 바랍니다. 티켓 서비스는 연중무휴 24시간 제공됩니다.

    연중무휴 24시간 전화 지원