两年磨一剑。距离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意味着:
- 5年支持周期:从2024年6月起提供至少5年标准支持,延长支持可达4年
- 运维简化:新的维护更新方法与平台包管理器无缝集成
- 安全增强:JWKS密钥管理、新的安全加密算法、弃用弱加密协议
- 现代化支持:.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日 |
升级建议:如果您正在使用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密钥管理 | runmqckm | runmqktool |
| MQ IPT密钥管理 | mqiptKeycmd | mqiptKeytool |
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移除 |
|---|---|---|
| AIX | 7.2 TL5, 7.3 TL1 | 7.3 TL0 |
| IBM i | 7.4, 7.5 | 7.3 |
| Linux | RHEL 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 |
| Windows | Server 2019, 2022 Windows 11 23H2+ | Windows 10 |
| z/OS | 2.5, 3.1 | 2.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默认拒绝HTTP | XL C/C++ for AIX 16(编译) |
| 增强的TLS配置选项 | Read/Write序列化方法(.NET) |
安全最佳实践:建议在升级到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类库。
下一步
对于想深入验证的团队:
- 下载IBM MQ 9.4免费开发版本
- 阅读官方文档了解新功能
- 在测试环境部署和验证升级流程
- 评估新功能(JWKS、JSON日志、LZ4等)的适用性
- 规划生产环境升级时间表
对于决策者:MQ 9.4 LTS是一个稳定的长期支持版本,提供5年的支持周期。如果您正在使用MQ 9.2,这是必须规划的升级。
对于架构师:MQ 9.4引入的JWKS密钥管理、JSON日志等现代化功能,使得MQ更好地融入云原生和可观测性架构。
参考资源:
有问题?在IBM Integration Community或StackOverflow上提问。