两年磨一剑。距离IBM MQ 9.3发布两年后,IBM终于推出了最新的长期支持版本——IBM MQ 9.4 LTS。这个版本整合了过去两年所有持续交付版本的功能,将为企业提供至少5年的标准支持。

对于正在运行MQ 9.2的企业来说,这是一个必须关注的版本——MQ 9.2将于2025年9月停止支持。

为什么MQ 9.4对你很重要

对于技术决策者和架构师来说,MQ 9.4 LTS意味着:

  1. 5年支持周期:从2024年6月起提供至少5年标准支持,延长支持可达4年
  2. 运维简化:新的维护更新方法与平台包管理器无缝集成
  3. 安全增强:JWKS密钥管理、新的安全加密算法、弃用弱加密协议
  4. 现代化支持:.NET 8、JSON日志、LZ4压缩

版本支持时间线:什么时候该升级?

了解各版本的支持状态对规划升级路径至关重要:

版本类型支持状态
MQ 9.4.0 LTS长期支持新发布 – 计划维护
MQ 9.3.5 CD持续交付至 2025年2月28日
MQ 9.3.4 CD持续交付至 2024年10月19日
MQ 9.3.3 CD持续交付至 2024年6月20日
MQ 9.3 LTS长期支持最新修复包: 9.3.0.20
MQ 9.2 LTS长期支持支持终止: 2025年9月30日
表1:IBM MQ版本支持时间线

升级建议:如果您正在使用MQ 9.2 LTS,务必在2025年9月前规划升级到MQ 9.4 LTS。对于MQ 9.3 LTS用户,可以评估新功能后决定升级时机。

MQ 9.4八大核心新功能

1. JWKS密钥管理:简化令牌认证

对于运行在AIX或Linux上的队列管理器,IBM MQ现在支持JWKS(JSON Web Key Set)密钥管理。这是一个重要的安全架构改进:

  • 无需本地密钥存储:不再需要维护本地keystores
  • 自动密钥轮换:颁发方可以在密钥过期时无缝更新,无需管理员干预
  • 降低运维复杂度:集中化密钥管理,减少人为错误

这个功能特别适合使用OAuth 2.0和JWT令牌的现代应用架构。

2. 全新的维护更新方法

在Windows和Linux平台上,未来的维护更新将通过升级IBM MQ来应用,而不是传统的补丁方式:

  • 更好的包管理器集成:与rpm、yum、dpkg、apt无缝协作
  • 更小的占用空间:不再备份先前的二进制文件
  • 避免漏洞扫描器误报:升级后的文件不会保留在备份中

这意味着MQ的维护将更接近现代Linux应用的更新方式,DevOps团队会更喜欢这个变化。

3. JSON格式日志:现代化监控

IBM MQ 9.4为AMQP和MQTT协议添加了JSON格式日志选项。这是一个看似小但影响深远的变化:

  • 与Elasticsearch、Splunk等日志平台无缝集成
  • 减少自定义解析脚本的开发工作
  • 支持结构化查询和过滤
  • 便于机器学习和AI驱动的日志分析

对于正在构建可观测性(Observability)平台的企业来说,这个功能大大简化了MQ日志的集成工作。

4. LZ4压缩:更快的数据传输

MQ通道现在支持LZ4压缩算法,这是业界领先的高性能压缩方案:

  • 快速无损压缩:LZ4以极快的压缩/解压速度著称
  • 灵活配置:可选择优先考虑速度或压缩率
  • 针对工作负载调优:根据具体场景优化性能

使用场景包括:高带宽成本的网络环境、需要减少网络延迟的场景、对消息大小敏感的应用。

5. .NET 8应用支持

重要更新:IBM MQ classes for .NET和XMS.NET现在支持.NET 8应用程序:

  • .NET 8应用可以直接使用MQ类库
  • .NET 6应用可以通过更改targetFrameworkVersion到.NET 8而无需重新编译
  • 支持最新的.NET性能优化和安全特性

这意味着使用最新.NET技术栈的团队可以无缝集成MQ消息传递能力。

6. 新的密钥管理命令

IBM MQ 9.4引入了新的命令来管理密钥和证书:

用途旧命令新命令
MQ密钥管理runmqckmrunmqktool
MQ IPT密钥管理mqiptKeycmdmqiptKeytool
表2:MQ 9.4命令更新

7. TLS证书验证跳过选项

IBM MQ C和JMS客户端现在支持跳过TLS服务器证书验证模式。这允许应用程序连接到TLS安全端点而无需信任库或预交换证书链。

注意:此模式适用于需要TLS加密但不要求客户端验证服务器的特定场景,如开发/测试环境或内部网络的受信任环境。请谨慎使用。

8. 其他重要更新

  • MQ Managed File Transfer:新增aes128-gcm和aes256-gcm安全加密算法
  • MQIPT:默认拒绝HTTP连接(安全增强),如需HTTP需配置AllowedProtocols属性
  • AMQP Service:不再随队列管理器自动启动,可恢复到MQ 9.4之前的行为

平台支持变化

IBM MQ 9.4 LTS更新了支持的平台,移除了一些旧版本操作系统:

平台MQ 9.4 LTS支持版本相比9.3 LTS移除
AIX7.2 TL5, 7.3 TL17.3 TL0
IBM i7.4, 7.57.3
LinuxRHEL 8.8+, 9.2+
SLES 15 SP4
Ubuntu 22.04
RHEL 7.9, 8.4, 8.6, 9.0
SLES 12, 15 SP2/SP3
Ubuntu 20.04
WindowsServer 2019, 2022
Windows 11 23H2+
Windows 10
z/OS2.5, 3.12.4
表3:IBM MQ 9.4平台支持对比

重要提醒:如果您的基础设施使用被移除的操作系统版本(如Windows 10、RHEL 7.9等),在升级到MQ 9.4之前需要先升级操作系统版本。请提前规划操作系统和MQ的升级路径。

安全增强:新增与弃用

IBM MQ 9.4在安全方面进行了多项重要更新:

✅ 新增功能⚠️ 已弃用
JWKS密钥管理支持CMS Keystores
新的密钥管理命令(runmqktool)SSL 3.0和TLS 1.0
新增安全加密算法(MFT)弱加密算法
TLS证书验证跳过选项32位应用程序支持(自9.3 LTS起)
MQIPT默认拒绝HTTPXL C/C++ for AIX 16(编译)
增强的TLS配置选项Read/Write序列化方法(.NET)
表4:MQ 9.4安全变化

安全最佳实践:建议在升级到MQ 9.4时,同时审查和更新您的安全配置,淘汰所有已弃用的安全选项,确保符合最新的安全标准和合规要求。

开发者资源

IBM提供丰富的资源帮助开发者开始使用MQ 9.4:

免费开发版本

  • Windows & Linux x86-64:完整功能免费开发版本
  • Ubuntu / Raspberry Pi:提供非官方支持版本
  • 容器镜像:IBM MQ Advanced for Developers container
  • macOS工具包:IBM MQ Toolkit for macOS

客户端库

  • IBM MQ C, C++ and .NET clients(Fix Central)
  • IBM MQ Java / JMS client(Fix Central)
  • IBM MQ Java client components(Maven)
  • IBM MQ .NET Client(NuGet)
  • IBM MQ Resource Adapter(JEE 7.0兼容)

云和容器支持

  • IBM Cloud:托管服务,提供不同规模的计划
  • AWS:Quick Start模板可用
  • OpenShift: IBM MQ OpenShift Operator
  • 容器镜像:IBM Container Registry预构建镜像,GitHub上可自行构建

认证与学习

IBM Developer网站定期更新学习路径、教程和应用程序开发模式。您还可以通过完成以下认证获得技能认可:

  • IBM MQ Developer Essentials:验证您的MQ开发核心技能
  • IBM MQ on AWS Cloud Developer Essentials:验证在AWS上使用MQ的技能

常见问题

Q: 需要重写现有代码吗?

A: 不需要。MQ 9.4向后兼容,现有的MQ应用程序可以继续运行。新功能是可选的,您可以按需采用。

Q: MQ 9.2用户必须什么时候升级?

A: MQ 9.2将于2025年9月30日停止支持。建议您在此之前规划升级到MQ 9.4 LTS。

Q: 可以从MQ 9.2直接升级到9.4吗?

A: 是的,支持从MQ 9.2直接升级到9.4 LTS。建议先在测试环境验证升级过程。

Q: JWKS密钥管理需要额外的配置吗?

A: 是的,需要配置JWKS端点URL和相关的认证参数。具体配置请参考官方文档。

Q: JSON日志会替代传统日志吗?

A: 不会。JSON日志是一个可选项,您可以按需启用。传统日志格式仍然可用。

Q: .NET 8支持需要重新编译应用程序吗?

A: 对于.NET 6应用,只需更改targetFrameworkVersion到.NET 8,无需重新编译。对于.NET 8新应用,可以直接使用MQ类库。

下一步

对于想深入验证的团队:

  1. 下载IBM MQ 9.4免费开发版本
  2. 阅读官方文档了解新功能
  3. 在测试环境部署和验证升级流程
  4. 评估新功能(JWKS、JSON日志、LZ4等)的适用性
  5. 规划生产环境升级时间表

对于决策者:MQ 9.4 LTS是一个稳定的长期支持版本,提供5年的支持周期。如果您正在使用MQ 9.2,这是必须规划的升级。

对于架构师:MQ 9.4引入的JWKS密钥管理、JSON日志等现代化功能,使得MQ更好地融入云原生和可观测性架构。


参考资源

有问题?在IBM Integration CommunityStackOverflow上提问。