Websphere MQ传输文件校验码出错
我有2台IBM 560Q小型机A、B,一台IBMx3650PC服务器C,A和B在2个网段,物理隔离,C上有2块网卡各与A、B网段相连。
原来的配置是A每天在固定时间往C发送一个备份文件(oracle的dmp文件),B每天在固定时间从C那里取A发给C的文件,C用电子开关控制连同A还是B。
原先这样的配置没任何问题一切正常,运行了大概6个多月,在11月份的时候发现B主机导入数据老是抱错,有一些表没有导进去,进行排差,发现B主机接受的文件虽然文件大小、字节数与原始文件一样,但是校验码却不一样了,我用它一个很早以前的dmp文件进行测试却没问题(测试文件16M,现在的dmp大概90M)。
MQ经过2次开发,需要传送的dmp文件分割成4M大小一个进行传送。
我想问到底是2次开发的问题还是MQ软件对于大文件传输本身有问题???希望有人可以解答,谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
问题解决了 。。。
2次开发的时候,把文件分割成4M的小文件,小文件后缀编号从1开始,文件一大,编号超过10,MQ从小型机传到PC服务器在传到另一台小型机,因为操作系统不一样,他们对文件排序也不一样,就出现了文件顺序混软,导致组合文件出错。
现在解决方法是让小文件的后缀编号从10001开始,这样解决了排序问题,经测试大文件没问题。
表面看来,应该是数据转换过程中出了问题,MQ本来是没有对大文件传输的支持,只有对消息传送的支持,应用程序把文件拆分成数据包,交给MQ,MQ就传送了,它不知道这是文件的一部分.
数据传送到目的地,有应用程序来读走一个消息,MQ就给它读走了,它也不知道这个数据将作为一个文件的一部分来组装.