回答
MSMQ是一个队列,其主要优点是将发送者和接收者的消息分离(例如,接收系统可以脱机)。
如果延迟时间保证是一个要求,那我就看看其他地方(如.NET远程/ WCF NetTCP结合等)
这就是说,我们已经使用MSMQ低级别的硬件标准,突发速率>> 500条消息每秒,但在一个集成(EAI)环境中,与MSMQ的好处是:
- 异步 - 其中发送和接收的消息可以以不同的速率
- 潜在交易(例如DTC下,消息发生过程可以放在队列中并在U下的数据库中更新OW)
- 已审核(日期)
- 死信队列 - 即,如果接收方在定义的时间段之后从不接收消息。
低延迟从来不是一个要求 - 可靠性和完整性是主要驱动因素。
对于小的非事务性消息,这在理论上可能是可能的,但它在我个人听说的高端。远离事务性队列离开,但 - 我严重怀疑你将能够得到那种吞吐量在任何现实的平台。
+1 - 香烟盒计算表明,在10k /消息=每小时180GB时,持续的速率为300k信息/分钟。不在MSMQ的联赛中。 – StuartLC 2012-08-16 13:24:12
我忘了提及我即将删除所有收到的消息,这些消息是由MSMQ服务器上运行的服务 – 2012-08-16 13:26:05
由于可怕的Insufficient Resources problem,我在MSMQ的这种卷中遇到了问题。
看起来这很少见,但它发生在我身上几次。
看看这篇文章:link它说,MSMQ不应该被用作存储产品,但用作传输机制。
您可能有服务从队列中读取消息并以事务方式处理它们。 Here (MSDN link)你可以找到一些例子。创建一个小样本,做一些负载测试,看看它是否工作。
- 1. 用RabbitMQ替换MSMQ系统
- 2. 嵌入式系统:插座与MSMQ
- 3. Scala和Java实时系统
- 4. 系统定时器实现
- 5. 实时系统的并发
- 6. 实时系统的体系结构?
- 7. 在实时系统上编程
- 8. 实施实时投票系统
- 9. 实时与系统时钟分开
- 10. 在Python中跟踪系统和实时统计分析
- 11. 使用动态端点MSMQ实现订阅者/发布者系统
- 12. API.AI系统实体
- 13. 事件触发的实时系统
- 14. VirtualMachine上的Sun Java实时系统/云
- 15. Rails的王菲实时通知系统
- 16. 实时操作系统调度程序
- 17. 实时分析处理系统设计
- 18. 什么是实时系统的彗星?
- 19. 实时更新Web系统 - Ajax,PHP,MySQL
- 20. MSMQ尝试接收消息时,拒绝访问消息排队系统
- 21. 在时间管理系统
- 22. 嵌入式系统vs实时系统我无法获得差异
- 23. 实施回滚系统
- 24. 信用卡系统实施?
- 25. 实现排名系统
- 26. 实施通知系统
- 27. 标签系统实现
- 28. 变子系统实现
- 29. 实体组件系统c#
- 30. OpenStack实例系统日志
什么是你想要使用MSMQ的原因是什么? – 2012-08-16 13:07:34
对我(非常好,有SSD)的开发人员机器进行快速性能测试,在非事务性的队列中,给出:30,050条消息/秒或1,803,055条消息/分钟。绰绰有余你需要什么。 – 2014-04-10 15:15:32