如何在 z/OS 上处理大于 4MB 的消息?我不能使用分段,因为 z/OS 不支持它。
一些操作系统甚至以 kB 为单位有更大的限制。
在这种情况下,常见的方法是什么?
如何在 z/OS 上处理大于 4MB 的消息?我不能使用分段,因为 z/OS 不支持它。
一些操作系统甚至以 kB 为单位有更大的限制。
在这种情况下,常见的方法是什么?
您没有达到 z/OS 限制,而是达到了 WebSphere MQ 上的默认最大消息长度。请注意,信息中心说“在 z/OS 上,指定范围从零到 100 MB(104 857 600 字节)的值”。
要解决此问题,请更改消息可能通过的任何队列和通道上的 MAXMSGL。不要忘记更新死信队列的 MAXMSGL 以及传输队列。
请注意,MAXMSGL 可以拯救您!许多人将该值设置为可能的最大大小,然后用完磁盘空间。如果应用程序达到诸如 MAXMSGL 或 MAXDEPTH 之类的软限制,则效果是有限的并且通常可以恢复。如果磁盘空间用完,整个 QMgr 就会突然停止,所有连接的应用程序都会受到影响。
有关这方面的更多信息,请参阅 developerWorks 上的Mice and Elephants文章。
UDATE:
根据询问 HP NonStop 和 WMQ V5.3 细节的评论进行更新。
请参阅WMQ 文档库中的 WMQ V5.3 手册。第二个链接是 HP NonStop 上 WMQ V5.3 的系统管理指南。消息长度在 P4 上讨论:
默认的最大消息长度为 4 MB,但您可以将其增加到 100 MB 的最大长度(其中 1 MB 等于 1 048 576 字节)。在实践中,消息长度可能受以下限制:
- 为接收队列定义的最大消息长度
- 为队列管理器定义的最大消息长度
- 队列定义的最大消息长度
- 发送或接收应用程序定义的最大消息长度
- 消息可用的存储量
因此,HP NonStop 上或与 WMQ V5.3 相关联的最大消息长度没有任意小。
也许消息分组可以帮助你。当然,应用程序必须进行定制。