기본 애플리케이션 부하 분산기를 사용하는 기존 사용자의 경우 전역 외부 애플리케이션 부하 분산기로 마이그레이션을 계획 중이거나 전역 외부 애플리케이션 부하 분산기를 사용하여 새 배포를 수행할 계획이면 이 페이지를 참고하세요.
기능 차이
전역 외부 애플리케이션 부하 분산기에는 다음 기능이 지원되지 않습니다. 기본 애플리케이션 부하 분산기에서만 사용할 수 있습니다.
- 표준 네트워크 등급
-
GKE 클러스터용 전역 외부 애플리케이션 부하 분산기를 배포하려면 GKE Gateway Controller를 대신 사용합니다. 설정 안내는 게이트웨이 배포를 참조하세요.
데이터 영역 차이점
다음은 기본 애플리케이션 부하 분산기와 전역 외부 애플리케이션 부하 분산기 간의 데이터 영역 차이를 보여주는 표입니다. 이러한 차이는 부하 분산기가 몇 가지 일반적인 이벤트에 응답하는 방식에 영향을 줍니다.
이벤트 | 기본 애플리케이션 부하 분산기 응답 | 전역 외부 애플리케이션 부하 분산기 응답 |
상태/오류 코드 | ||
모든 백엔드가 비정상 | HTTP 502 반환 | HTTP 503 반환 |
요청이 차단된 SSL 암호화 사용 | HTTP 502 반환 | HTTP 503 반환 |
백엔드에 의해 조기 업스트림 연결 재설정 | HTTP 502 반환 | HTTP 503 반환 |
연결 업그레이드 실패(예: Websockets으로 업그레이드 시) | HTTP 400 반환 | HTTP 403 반환 |
헤더가 너무 큼 | HTTP 413 반환 | HTTP 431 반환 |
할당량 및 한도 | ||
URL 맵 구성 | 두 부하 분산기 간에는 URL 맵 구성 한도에 상당한 차이가 있습니다. 자세한 내용은 할당량: URL 맵 문서를 참조하세요. | |
헤더 처리 | ||
요청은 본문이 없는 커스텀 HTTP 메서드 사용 | 백엔드로 전송되는 요청에 Transfer Encoding: Chunked 헤더 추가 |
백엔드로 전송되는 요청에 Content-Length: 0 헤더 추가 |
백엔드로 전송되는 요청에 추가된 X-Forwarded-For 헤더 형식 |
IP 사이에 ', ' 구분 기호 사용 |
IP 사이에 ', ' 구분 기호 사용(쉼표 뒤의 공백 없음) |
헤더 케이스 보존 | 헤더 대소문자 보존 | 모든 헤더 키는 소문자로 변환됨 |
이름이 동일한 반복되는 헤더 | 허용됨 | 반복되는 헤더는 RFC 7230에서 허용하는 대로 값을 순서대로 추가하고 쉼표로 구분하여 단일 헤더로 결합할 수 있습니다. |
(HTTP/1.1만 해당) 잘못된 헤더 이름(예: 헤더에 지원되지 않는 문자). | 허용됨(HTTP/1.1의 경우) | HTTP 502 반환(HTTP 1.1의 경우) |
(HTTP/1.1만 해당) 요청에 반복된(동일한) Content-Length 헤더 |
허용됨(HTTP/1.1의 경우) | HTTP 502 반환(HTTP 1.1의 경우) |
(HTTP/1.1만 해당) 헤더에 여러 호스트 | 2개 이상의 호스트가 추가되고 첫 번째 호스트가 유효하면 헤더가 수락됨 | 2개 이상의 호스트 추가되고 유효하지 않은 경우 부하 분산기가 HTTP 502를 반환함 |
(HTTP/1.1만 해당) Connection: Keep-Alive
헤더 |
기본적으로 백엔드로 전송되는 요청에 Keep-Alive header 추가 |
기본적으로 이 헤더는 추가되지 않음 |
요청 처리 | ||
요청의 백슬래시 | 변경되지 않은 URL | 슬래시로 변환 |
요청의 중복 슬래시 병합 | 슬래시는 병합되지 않은 상태로 유지 | 슬래시 병합 |
요청 경로의 `#` | 허용됨 | HTTP 400 반환 |
(HTTP/1.1만 해당) 요청 경로에 잘못된 문자가 있음(예: '\\x7f\\x7f') | 허용됨(HTTP/1.1의 경우) | HTTP 502 반환(HTTP 1.1의 경우) |
트래픽 분산(URL 맵 구성) | ||
클라이언트 요청에 포트 번호 포함 | URL 맵에 포트를 사용하여 호스트를 구성한 경우에도 포트 번호가 무시됩니다. 오직 호스트 이름만 고려합니다. 예를 들어 example.com:5000 에 대한 요청은 example.com 에 대한 백엔드 서비스와 일치합니다.
|
호스트 이름과 포트 번호가 모두 고려됩니다. 예를 들어 example.com:5000 에 대한 요청은 example.com:5000 에 대한 백엔드 서비스와 일치합니다. 일치 항목이 없으면 기본 백엔드 서비스가 사용됩니다.
|