HTTP 지원 MQIPT
MQIPT HTTP 터널링을 지원합니다. MQIPT 전송하는 데이터 패킷이 HTTP 요청으로 인코딩되도록 구성할 수 있습니다.
IBM® MQ 채널은 HTTP 요청을 허용하지 않습니다. 따라서 두 번째 MQIPT은(는) HTTP 요청을 수신하고 이를 다시 IBM MQ 프로토콜 패킷으로 변환하는 데 필요합니다. 두 번째 MQIPT은(는) HTTP 헤더를 제거하여 수신 패킷을 목적지 큐 관리자에 전달하기 전에 수신 패킷을 표준 IBM MQ 프로토콜 패킷으로 다시 변환합니다.
![[2024년 6월MQ 9.4.0 ]](ng940.gif)
참고: IBM MQ 9.4.0 에서 MQIPT 경로는 기본적으로 HTTP 연결을 허용하지 않습니다. 경로는 HTTP 연결을 수락하도록 구성되어야 합니다( AllowedProtocols 속성 사용).MQIPT 의 두 인스턴스 간에 HTTP 사용될 때, HTTP 과 응답이 흐르는 TCP/IP 연결은 지속적이며 메시지 채널의 수명 동안 열려 있습니다. MQIPT 는 요청/응답 쌍 사이의 TCP/IP 연결을 닫지 않습니다.
MQIPT 의 두 인스턴스가 HTTP 를 통해 통신하는 경우, HTTP 요청이 장기간 미결 상태로 남아 있을 수 있습니다. 예를 들어 요청자/서버 채널에서 서버 측이 새 메시지가 전송 큐에 도착하기를 대기 중인 경우가 해당합니다. IBM MQ 채널 프로토콜은 "하트비트" 메커니즘을 제공하며, 이 메커니즘에서는 파트너에게 하트비트 메시지를 전송하기 위해 대기 종료가 주기적으로 필요합니다. 기본 채널 하트비트 기간은 5분입니다. MQIPT 이 하트비트를 HTTP 으로 사용합니다. 일부 방화벽에서의 시간 종료 관련 문제점 발생을 방지하려면 이 채널 하트비트를 사용 안함으로 설정하거나 과도하게 높은 값으로 설정하지 마십시오.
MQIPT HTTP 또는 서버에서 생성된 HTTP 트래픽을 청크 단위로 받아들입니다.
MQIPT에서 HTTP 사용에 대한 예제는 HTTP 터널링 구성의 내용을 참조하십시오.
HTTP 프록시
- 프록시는 HTTP 1.1 프로토콜을 지원해야 합니다.
- MQIPT 에 의해 설정된 HTTP 인 Connection 또는 Proxy-Connection 는 프록시에서 반드시 존중되어야 합니다. 이렇게 하면 MQIPT의 두 인스턴스 사이의 연결이 메시지 채널의 수명 동안 계속 열려 있을 수 있습니다.
- 지속적 연결의 일대일 맵핑은 프록시에서 유지보수해야 합니다. 이렇게 하면 프록시에서 목적지 MQIPT까지의 TCP/IP 연결이 둘 이상의 메시지 채널에 대한 데이터 전송에 사용되지 않습니다.
- 지속적 연결을 사용해야 합니다.
- 둘 이상의 HTTP 세션에 의해 프록시에서 MQIPT로의 TCP/IP 연결 재사용을 사용하지 않도록 설정하여 프록시에서 지속적 연결의 일대일 맵핑을 유지해야 합니다.
- 프록시 요청의 제한시간은 높은 값으로 설정되어야 합니다. (예: 12시간).
- 지속적 연결에서 수행할 수 있는 최대 요청 수는 높은 값으로 설정되어야 합니다. 예를 들어, 5000입니다.
MQIPT은(는) HTTP POST 요청을 사용하여 MQIPT의 두 인스턴스 간에 데이터를 전송합니다. MQIPT 구성에서 HTTPProxy 속성을 사용하여 프록시의 호스트 이름을 지정하면 MQIPT 가 프록시에 연결하고 HTTP 사용하여 프록시가 대상 MQIPT 로 터널을 설정하도록 요청합니다. 이를 통해 프록시에서 TLS 세션을 종료하지 않고 HTTPS 연결이 프록시를 통과할 수 있습니다.
로드 밸런서가 MQIPT 인스턴스 사이에 배치되는 경우 MQIPTSessionId HTTP 쿠키의 값을 사용하여 각 세션에 대한 모든 요청이 동일한 대상으로 전달되도록 구성해야 합니다.