gpt4 book ai didi

linux - 在 Linux 中使用 WebSphere MQ 的默认 CCSID 连接到 Windows 中的客户端应用程序

转载 作者:可可西里 更新时间:2023-11-01 11:28:51 25 4
gpt4 key购买 nike

我有两个应用程序 A 和 B。应用程序 A 将消息放入 QMA,这是一个默认 CCSID 为 1208 的 Linux 队列管理器。QMA 将消息发送到 QMB,这是一个默认 CCSID 为 437 的 Windows 队列管理器。应用程序 B 使用来自QMB。一切都好。然后我将 Windows 队列管理器 QMB 迁移到 Linux 平台并将 CCSID 更改为默认值 1208。App B 开始出现与数据相关的问题。然后我将 Linux 平台中的 QMB 使用 CCSID 更改为 437,之后 App B 没有发现任何数据问题。

我是一名 MQ 管理员,不太了解在 MQ 服务器中未启用数据转换属性时,在 MQ 服务器中定义的 CCSID 对客户端应用程序的真正重要性。

我的理解是队列管理器 CCSID 应该是基于所用平台的默认值,并且永远不需要更改。帮助我更好地理解?

最佳答案

您是正确的,在 MQ 服务器上定义的 CCSID 对应用程序(无论是客户端还是其他)应该无关紧要。这是因为应用程序应该做的是使用 MQGMO_CONVERT 在 MQGET 上请求其消息。

这听起来更像是您设置中的应用程序依赖于消息的代码页是否正确以及它们需要从推杆获得什么,并且它们没有使用 MQGMO_CONVERT。

MQGMO_CONVERT 应始终用于应用程序,即使最初不需要它,因为 putter 和 getter 使用相同的代码页。这是因为,最终该应用程序将传播或移动,然后当您确实需要它时,您必须返回并更改应用程序。在不需要时使用 MQGMO_CONVERT 没有任何缺点,它只是一个空操作。但是当您确实需要它时不使用它有一个缺点。

关于linux - 在 Linux 中使用 WebSphere MQ 的默认 CCSID 连接到 Windows 中的客户端应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25975978/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com