의 org.hornetq.api.core.client.ClientMessage.setBodyInputStream과 같습니다. 다음은 JBoss/HornetQ user manual page입니다. HornetQ는 java.io.InputStream을 사용하여 대기열에 대한 메시지 스트리밍 데이터를 처리하는 방법을 제공합니다. 동일한 코드의 JMS 버전이 제공됩니다. IBM MQSeries/WebsphereMQ를 사용하여 누구와도 동등한 경험을 쌓았습니까?IBM MQSeries
JMS 메시지에 많은 양의 데이터를 배치해야한다고 말합니다. 이는 나에게 바이트 스트림입니다. Hornet 예제에서 스트림은 메시지가 전송 될 때만 읽혀 지므로 FileInputStream이라면 바이트 덩어리를 버퍼링하기에 충분한 메모리가 필요합니다. javax.jms.BytesMessage를 사용하여 바이트의 청크를 보내고 BytesMessage를 사용하여 버퍼를 버퍼링 할 수 있습니다. 이 문제는 IBM에서 구현 한 BytesMessage (com.ibm.msg.client.jms.internal.JmsBytesMessageImpl)가 Message가 전송 될 때까지이를 캐시해야하며, 많은 양의 데이터가 문제가된다. BytesArrayOutputStream에 하나는 DataOutputStream에, 다른 하나는 BytesArrayOutputStream에 중복 복사본을 유지하는 것으로 나타납니다.
MQSeries BB에 게시했습니다. http://www.mqseries.net/phpBB2/viewtopic.php?p=346958#346958을 참조하십시오. 거기에 몇 가지 대답이 있습니다. 필자는 MQSeries 구현자가 아니기 때문에 응답자 중 한 명에게 맡깁니다. – JFK