NserviceBus翻译之FAQ:MsmqTransportConfig配置项

MsmqTransportConfig

Last Updated: Nov 28, 2012 10:58AM IST

这个配置项定义了MSMQ传输的特性,对于更多的MSMQ的背景知识,请看here,下面是一个MsmqTransportConfig配置项的例子:

<MsmqTransportConfig ErrorQueue="error" NumberOfWorkerThreads="1" MaxRetries="5"/>

ErrorQueue属性

从版本三开始,需要采用下面的配置项来声明一个错误队列:

<section name="MessageForwardingInCaseOfFaultConfig"

type="NServiceBus.Config.MessageForwardingInCaseOfFaultConfig,NServiceBus.Core" />

针对该配置项的值定义如下:

<MessageForwardingInCaseOfFaultConfig ErrorQueue="error"/>

MsmqTransportConfig配置项中的这个ErrorQueue是为了兼容更早以前的版本。

ErrorQueue定义了当处理失败之后错误信息发往的队列的名称,这可能是一个本机的队列,也可以是一个远端机器的名称,名称定义的格式应该遵循:"queueName@remoteMachineName"。

假如你不定义这个错误队列的话,NServiceBus将会报出一个"Could notfind backup configuration section 'MsmqTransportConfig' in order to locate theerror queue." 异常。 关于更多的处理失败的消息的知识可以从here获取。

NumberOfWorkerThreads属性

这个属性指明了从input queue接收消息的线程的数量。 这个属性不影响能够使用总线去发送/发布消息的线程的数量。

换句话说只决定接收消息的线程数量,不影响发送/发布消息的线程的数量。

MaxRetries属性

这个属性与ErrorQueue 这个属性相关,表明了处理失败之后,将会重试几次,才会把错误消息放到error queue中,默认是5。

你可能感兴趣的:(service)