NServiceBus開箱即用的支持如下傳輸:sql
NServiceBus端點配置爲使用一個特定的運輸:windows
NServiceBus/Transport
在端點的配置文件。<connectionStrings> <!-- MSMQ --> <add name="NServiceBus/Transport" connectionString="deadLetter=true; journal=true; useTransactionalQueues=true; cacheSendConnection=true"/> </connectionStrings>
deadLetter
: deadLetter
配置參數啓用或禁用死信隊列支持,死信隊列跟蹤消息不能交付(更多信息:http://msdn.microsoft.com/en-us/library/ms706227.aspx)。默認值是 true
; journal
:MSMQ支持日誌記錄的概念,當日志是活動的每一個發送消息的副本存儲在《隊列(更多信息:http://msdn.microsoft.com/en-us/library/ms702011.aspx)。默認值是 false
; useTransactionalQueues
:決定若是生成的隊列,或現有的,必須是事務性隊列。默認值是 true
; cacheSendConnection
:指示底層基礎設施緩存鏈接到遠程隊列和重用它根據須要而不是每次建立一個新的鏈接來發送消息。默認值是 true
; timeToReachQueue
:期限到達目的地的消息隊列,從消息發送的時間。這個設置是隻能在v5.1 +;MSMQ的鏈接字符串是可選的。緩存
<connectionStrings> <!-- RabbitMQ --> <add name="NServiceBus/Transport" connectionString="host=localhost"/> </connectionStrings>
<connectionStrings> <!-- RabbitMQ --> <add name="NServiceBus/Transport" connectionString="host=myremoteserver; username=myusername; password=mypassowrd"/> </connectionStrings>
<connectionStrings> <!-- RabbitMQ --> <add name="NServiceBus/Transport" connectionString="host=rabbitNode1,rabbitNode2,rabbitNode3; username=myuser; password=password" /> </connectionStrings>
<connectionStrings> <!-- SQL Server --> <add name="NServiceBus/Transport" connectionString="Data Source=.\SQLEXPRESS; Initial Catalog=nservicebus; Integrated Security=True"/> </connectionStrings>
<connectionStrings> <!-- Azure ServiceBus --> <add name="NServiceBus/Transport" connectionString="Endpoint=sb://[namespace].servicebus.windows.net; SharedSecretIssuer=owner; SharedSecretValue=someSecret"/> </connectionStrings>
<connectionStrings> <!-- Azure Storage Queues --> <add name="NServiceBus/Transport" connectionString="DefaultEndpointsProtocol=https; AccountName=myAccount; AccountKey=myKey;"/> </connectionStrings>