Ibm mq WebSphere MQ是否可以直接传输文件(例如.*.txt)?

Ibm mq WebSphere MQ是否可以直接传输文件(例如.*.txt)?,ibm-mq,Ibm Mq,我是WebSphere MQ的新手,我正在尝试使用c#代码将文件作为消息在WebSphere MQ中移动。WebSphere MQ能否直接传输文件(例如.*.txt) 提前谢谢 WebSphere MQ File Transfer Edition(FTE)是在WebSphere MQ之上构建的用于传输文件的产品。传输文件不需要编码。有一些命令和MQ资源管理器,您可以通过它们配置文件传输。您还可以通过脚本启动文件传输 通读本developerWorks否,基本WebSphere MQ不直接传输文件

我是WebSphere MQ的新手,我正在尝试使用c#代码将文件作为消息在WebSphere MQ中移动。WebSphere MQ能否直接传输文件(例如.*.txt)


提前谢谢

WebSphere MQ File Transfer Edition(FTE)是在WebSphere MQ之上构建的用于传输文件的产品。传输文件不需要编码。有一些命令和MQ资源管理器,您可以通过它们配置文件传输。您还可以通过脚本启动文件传输


通读本developerWorks

否,基本WebSphere MQ不直接传输文件。移动文件的语义包括文件名、目录路径、跨不同类型文件系统的名称转换(即UNIX文件树与z/OS分区数据集)。消息传递使用特定于队列和主题的语义,这些语义与文件的语义截然不同

因此,base WMQ不会尝试将文件语义作为其核心功能的一部分来执行。和提供该功能。在FTE的情况下,托管文件传输本机构建在WebSphere MQ之上

过去,许多人都有使用消息传递来移动文件的书面解决方案,无论是WebSphere MQ还是其他传输提供商。事实证明,以健壮的方式这样做是一项非常重要的任务。以下是一些问题:

  • 如果将每个文件作为一条消息,则消息大小会有很大差异。很难调整消息传递引擎以同时处理非常大和非常小的消息
  • 如果您将文件分成块,那么您可以调整块大小以获得最佳的消息传递性能,但现在必须处理序列保留和丢失消息的重新发送
  • 是否附加、替换或重命名具有相同名称的目标文件的一般问题
  • 如何以事务方式使文件在目标位置可用的一般问题。您不希望收件人抓取半个文件
  • 文件完整性(FTE对文件进行哈希处理,以确保文件在传输过程中不会被更改)

这些都是以通用方式实现这一点的问题样本。然而,如果你只需要一个一次性的点对点解决方案,那么看看Q程序。它将接收文件,或者一次在消息中放入一行,或者将整个文件变成一条消息。它也可以用作管道,因此可以有两个Q实例,其中一个将消息传递到队列,另一个检索消息。

文章标题询问WMQ是否可以传输文件,但正文提到WMQ File transfer Edition。不清楚你指的是哪一个。你能澄清一下吗?您是否正在尝试编写代码以将文件放入消息中?或者您正在试图通过代码驱动FTE传输?抱歉,这有误导性。我没有WMQ文件传输版本,只想编写代码将文件放入消息中。现在我使用FileStream将文件内容读取为字符串,然后将字符串放入消息中。有更好的方法吗?谢谢!很抱歉让人误解,但我没有全职员工。也许我必须自己编写代码来传输文件。也谢谢!非常感谢你!您提到了第一个问题,“很难调整消息传递引擎以同时处理非常大和非常小的消息”,这是什么意思?这会降低性能,对吗?谢谢你的回复!性能对应用程序很重要,必须避免阻止数据在通道中流动。在获取消息后,我们应该释放相关资源,对吗?在我的应用程序中,我调用qmgr.Disconnect()来释放资源。这足够了吗?有更好的方法吗?定义“更好的方法”几个FTE代理的成本将低于您为解决国产版本的问题而花费的成本。如果您预期部署到需要移动文件的大型节点网络,那么性能、可靠性和可管理性方面的差异将为代理支付费用。但是,如果您仍想探索设计选项,请提出一个新问题。因此,它不像一个讨论论坛,而是由离散的问题和投票驱动。一个带有自己标签和答案的新问题将更好地帮助下一个有类似问题的人。