譯MassTransit 快速入門

2021-08-21 04:30:13 字數 1305 閱讀 9096

給我看**!

下面是masstransit的功能設定。

public

class yourmessage }

public

class program

); sbc.receiveendpoint(host, "

test_queue

", ep =>

"); });

});});

bus.start();

bus.publish(new yourmessage);

console.writeline("

press any key to exit

"); console.readkey();

bus.stop();}}

如何執行的

如果我們構建乙個訊息系統,我們需要去建立乙個訊息。yourmessage .net 類代表我們的訊息。注意他僅僅是乙個poco。

接下來,我們需要乙個程式執行我們的**,這裡我們使用控制器程式 的 main方法。要設定中心,我先從bus靜態類開始,然後從factory擴充套件點結束。從這裡我們呼叫createusingrabbitmq方法建立乙個 rabbitmq 服務匯流排例項。這個方法採用lambda,並且有乙個引數允許你配置匯流排的屬性。

你的第乙個決定是:「我想執行什麼傳輸」在這裡我們選擇了rabbitmq (bus.factory.createusingrabbitmq()),因為它是masstransit的事實上的匯流排選擇。

之後,我們需要配置rabbitmq host 設定sbc.host()。第乙個引數設定要連線的機器名稱和虛擬目錄。在此之後, 您可以使用 lambda 來調整所需的任何其他設定。在這裡,我們可以看到它設定的使用者名稱和密碼。

現在我們有了乙個主機監聽,我們可以配置一些接收端點sbc.receiveendpoint。我們通過主機連線來偵聽,然後我們要偵聽哪個佇列,最後用lambda來註冊我們要使用的每個處理程式。

最後,在配置中,我們有個處理程式 handler方法,它為訊息型別 yourmessage 訂閱乙個處理程式, 並採用乙個非同步 lambda(oh yeah baby tpl),它給出了乙個上下文類來處理。在這裡,我們通過遍歷上下文來訪問訊息,然後將訊息的文字寫入控制台。

現在我們有了乙個完全配置的匯流排例項, 並且可以開始處理訊息。我們可以抓取我們建立的buscontrol,呼叫start()方法啟動,然後迴圈獲取訊息。我們再次等待結果,現在我們可以走了。

我們可以呼叫buscontrol的publish 方法,我們應該可以看到控制台寫出輸出。

譯MassTransit 生產訊息

生產訊息 應用程式或服務可以使用兩種不同的方法生產訊息。可以使用sead傳送訊息,也可以使用publish發布訊息。每個方法的行為是非常不同的,但是通過檢視每個特定方法所涉及的訊息型別,可以很容易理解。當訊息是 sent時,它使用destinationaddress 傳遞交付到特定的端點。當訊息是p...

Boost Graph Library 快速入門

boost graph library 快速入門 by 燕飛龍 南亮亮 採用boost中的鄰接鍊錶 adjacency list 實現圖的定義 下面是乙個鄰接鍊錶定義的例子 include 首先定義圖中節點和邊的屬性 struct vertexproperty structedgeproperty ...

Expression Blend 介面快速入門

在開始使用blend前,首先需要進行silverlight的開發環境搭建,在銀光中國網 silverlightchina.net 有篇 輕鬆建立silverlight開發環境 其中列出了建立silverlight開發環境的幾個步驟,另外,我在過去發布過一篇 silverlight開發工具集合 文章,...