Microsoft 消息队列 (MSMQ) - 改进的队列处理

平台

客户端 - Windows 7
服务器 - Windows Server 2008 R2

功能影响

严重性 - 低
频率 - 低

说明

MSMQ 服务不会对可在系统上创建的队列数施加硬性限制。 但是,创建大量队列时,系统的性能会受到影响。 具体而言,当队列超过几千个时,MSMQ 服务的启动时间会呈指数级增长,从而产生明显的影响。

Microsoft 优化了 Windows 7 中的 MSMQ 服务启动,以减少将队列加载到内存中的查找开销。 这种优化已显著改善 MSMQ 服务的启动时间,即使系统中创建了数千个队列也是如此。

影响的表现

此性能改进不会影响任何现有应用程序的功能。

利用已更改的功能

在 Windows 7 上使用 MSMQ 的应用程序开发人员现在可以在不限制队列数的情况下构建其解决方案。 请注意,队列数仍会影响 MSMQ 服务器的整体性能,但性能影响现在呈线性而不是指数级。

兼容性、性能、可靠性和可用性测试

如果使用大量队列,请在测试台上模拟生产环境,监视性能,并使用测试系统中存在的大量队列和消息分析服务启动时间和消息吞吐量。