Can WebSphere MQ transfer file(e.g. *.txt) directly?
ibm-mq
Solution
No, base WebSphere MQ does not directly transfer files. The semantics for moving files include such things as file names, directory paths, conversion of names across different types of filesystem (i.e. a UNIX filetree versus a z/OS Partitioned Dataset). Messaging uses semantics specific to queues and topics and these are drastically different from those for files.
Accordingly, base WMQ does not attempt to perform file semantics as part of its core functionality. The WebSphere MQ File Transfer Edition and IBM Sterling Connect:Direct provide that functionality. In the case of FTE, managed file transfer is natively built on top of WebSphere MQ.
Many people have in the past written solutions to move files using messaging, whether that's WebSphere MQ or another transport provider. It turns out that doing so in a robust way is a non-trivial task. Here are some of the issues:
- If you make each file a single message then message sizes vary considerably. It is very difficult to tune the messaging engine to simultaneously perform with very large and very small messages.
- If you break the files up into chunks then you cna tune chunk size for optimal messaging performance but now you must deal with sequence preservation and resend of missing messages.
- The general problem of whether to append, replace or rename a destination file with the same name.
- The general problem of how to make the file available at the destination in a transactional manner. You don't want the recipient to grab half a file.
- File integrity (FTE hashes the file to insure it doesn't get changed in transit).
These are a sampling of the issues to do this in a general-purpose way. However if all you need is a one-time, point-to-point solution then have a look at SupportPac MA01, the Q program. It will take files and either put a line at a time into a message or make the entire file a single message. It can also be used as a pipe so it's possible to have two instances of Q where one pipes messages to a queue and the other retrieves them.
Problem
I'm new to WebSphere MQ and I am trying to move files through WebSphere MQ as messages using c# code. Can WebSphere MQ transfer files (e.g. *.txt) directly? Thanks in Advance.