【发布时间】:2011-07-27 02:42:53
【问题描述】:
我正在编写一个 Windows 服务来使用 MSMQ 消息。该服务将有高活跃期(80k 消息很快收到)和长时间不活跃(可能几天没有新消息)。
处理消息是非常受网络限制的,所以我从并行性中获得了很大的好处。但是在不活动期间,我不想占用一堆线程等待不会很快到来的消息。
MSMQ 接口似乎非常专注于同步工作流 - 获取一条消息、处理它、获取另一条消息等。我应该如何构建我的代码,以便我可以在高活动期间利用并行性而不是平局在无活动期间启动一堆线程?使用 TPL 的奖励积分。伪代码将不胜感激。
【问题讨论】:
-
虽然在回调处理程序中对单个消息的处理可能看起来是同步的,但与 RPC 相比,总体方案中的消息传递概念是异步的
标签: .net-4.0 parallel-processing msmq task-parallel-library