런타임 시, 웹 서비스 호출 서비스 활동은 HTTP/HTTPS 1.1 프로토콜을 준수하는 HTTP 요청을 웹 서비스에 보냅니다. 호출 서비스 활동에서는 gzip 형식으로만 압축하고 gzip 또는 deflate 형식으로 압축을 해제할 수 있습니다.
호출 서비스 활동의 압축/압축 해제 런타임 동작에 미치는 영향은 다음 섹션과 런타임 압축/압축 해제 동작 섹션에 제공된 표에 설명되어 있습니다.
통합 어플라이언스는 첫 번째 HTTP 요청을 압축 형식으로 HTTP 엔드포인트(웹 서비스)에 전송할 때 HTTP 엔드포인트가 압축을 지원하는지 여부를 판별합니다. 웹 서비스가 압축을 지원하지 않거나 지정된 Content-Encoding 유형을 지원하지 않음을 나타내는 오류 코드를 리턴하면 통합 어플라이언스는 첫 번째 요청을 압축 해제된 형식으로 다시 전송하고 이 엔드포인트에 대한 이후의 모든 요청은 압축 해제 형식으로 전송됩니다. 또한 웹 서비스가 전송하는 HTTP 응답을 통합 어플라이언스에서 수신할 때는 압축 해제되어 있지 않습니다.
엔드포인트의 압축/압축 해제 지원은 런타임 압축/압축 해제 동작 절에 제공된 표에서 레이블이 엔드포인트의 압축 지원 여부인 네 번째 열에 표시되어 있습니다.
HTTP 요청에서 Content-Encoding 헤더 값에 따라 요청 본문이 압축되는지 여부가 결정됩니다. 호출 서비스 활동의 경우 통합 어플라이언스는 Content-Encoding을 gzip으로 설정하고 gzip 형식으로 압축된 요청 본문을 전송합니다(다음 그림과 요청을 전송할 때 압축 동작 레이블의 첫 번째 표의 두 번째 행에 표시된 대로).
요청에서 Accept-Encoding 헤더 값은 HTTP 클라이언트가 요청에서 허용하는 인코딩 유형을 정의합니다. 서비스 호출 활동의 경우 통합 어플라이언스는 다음 그림에 표시된 대로 요청에서 Accept-Encoding을 gzip,deflate로 설정하고 웹 서비스는 gzip 또는 deflate 형식으로 압축된 응답 본문을 클라이언트 역할을 하는 통합 어플라이언스에 전송합니다.
요청의 Accept-Encoding 및 Content-Encoding 헤더 값은 통합 어플라이언스 및 웹 서비스에서 압축/압축 해제 동작을 결정하는 데 사용됩니다.
기본적으로, 압축 및 압축 해제는 호출 서비스 활동에 대한 활동 레벨에서 작동됩니다. 압축/압축 해제 사용 선택란을 지워서 활동 레벨에서 압축/압축 해제를 작동 중지시킬 수 있습니다. 압축/압축 해제 사용 선택란은 활동의 구성 태스크에서 사용 가능합니다. 런타임 압축/압축 해제 동작 절에 제공된 다음 표에서 압축/압축 해제 사용 선택란이라고 되어 있는 두 번째 열은 압축/압축 해제 사용 선택란의 설정을 표시합니다.
더 이상 사용하지 않음 주의: 향후 릴리스에서는 압축/압축 해제 사용 선택란이 더 이상 사용되지 않습니다. HTTP 요청에서 Content-Encoding 및 Accept-Encoding HTTP 매개변수를 사용하여 HTTP 요청 본문의 압축 해제 방법과 HTTP 응답 본문의 압축 방법을 지정하십시오.
요청을 전송할 때 압축 동작 절에 제공되는 첫 번째 표에서는 통합 어플라이언스가 웹 서비스에 HTTP 요청을 전송할 때의 압축 런타임 동작에 대해 설명합니다.
요청에 전달되는 Accept-Encoding 헤더 값 절에 설명된 두 번째 표는 HTTP 요청에서 전달되는 Accept-Encoding 헤더 값에 대해 설명합니다.
응답을 수신할 때 압축 해제 동작 절에 제공된 세 번째 표에서는 통합 어플라이언스가 웹 서비스에서 HTTP 응답을 수신할 때 압축 해제 런타임 동작에 대해 설명합니다.
압축/압축 해제 사용 선택란(활동 레벨) | HTTP 요청의 Content-Encoding 값(메시지 레벨) | 엔드포인트의 압축 지원 여부 | 통합 어플라이언스가 요청을 전송할 때 압축 런타임 동작 |
---|---|---|---|
선택됨 | gzip | 예 | 통합 어플라이언스가 gzip 형식으로 압축된 요청 본문을 전송합니다. Content-Encoding 헤더는 요청에서 gzip으로 설정됩니다. |
선택됨 | 값이 중요하지 않음 | 아니오 | 통합 어플라이언스가 압축 해제된 요청 본문을 전송합니다. Content-Encoding 헤더는 요청에서 identity로 설정됩니다. |
지워짐 | 값이 중요하지 않음 | 값이 중요하지 않음 | 통합 어플라이언스가 현상태(변경되지 않은 상태)로 요청 본문을 보냅니다. Content-Encoding 헤더의 현재 값이 요청에 있는 그대로 전달됩니다. |
압축/압축 해제 사용 선택란(활동 레벨) | 초기 Accept-Encoding 값 | 엔드포인트의 압축 지원 여부 | HTTP 요청에서 웹 서비스로 전달되는 Accept-Encoding 값 |
---|---|---|---|
선택됨 | gzip,deflate | 예 | Content-Encoding 헤더는 요청에서 gzip,deflate로 설정됩니다. |
값이 중요하지 않음 | 값이 중요하지 않음 | 아니오 | Accept-Encoding 헤더의 현재 값이 요청에 있는 그대로 전달됩니다. |
지워짐 | 값이 중요하지 않음 | 값이 중요하지 않음 | Accept-Encoding 헤더의 현재 값이 요청에 있는 그대로 전달됩니다. |
압축/압축 해제 사용 선택란(활동 레벨) | HTTP 응답의 Content-Encoding 값(메시지 레벨) | 엔드포인트의 압축 지원 여부 | 통합 어플라이언스가 응답을 수신할 때 압축 해제 런타임 동작 |
---|---|---|---|
선택됨 | gzip | 예 | 통합 어플라이언스가 gzip 형식으로 응답 본문의 압축을 해제합니다. |
선택됨 | deflate | 예 | 통합 어플라이언스가 deflate 형식으로 응답 본문의 압축을 해제합니다. |
선택됨 | identity | 예 | 통합 어플라이언스가 응답 본문의 압축을 해제하지 않습니다. |
선택됨 | Accept-Encoding 헤더에 값이 나열되어 있지 않음 | 예 | 통합 어플라이언스가 요청되지 않은 컨텐츠 인코딩 유형으로 응답 데이터를 수신했다는 오류를 로그합니다. |
선택됨 | 값이 중요하지 않음 | 아니오 | 통합 어플라이언스가 응답 본문의 압축을 해제하지 않습니다.Content-Encoding 헤더의 현재 값이 응답에 있는 현상태로 전달됩니다. |
지워짐 | 값이 중요하지 않음 | 값이 중요하지 않음 | 통합 어플라이언스가 응답 본문의 압축을 해제하지 않습니다. Content-Encoding 헤더의 현재 값이 응답에 있는 현상태로 전달됩니다. |