ZeroMQ閱讀筆記

2021-06-20 06:44:32 字數 518 閱讀 9734

zeromq是一種基於訊息佇列的多執行緒網路庫,提供跨越多種傳輸協議的套接字。zeromq是網路通訊中新的一層,介於應用層和傳輸層之間。

zeromq整體架構圖如下:

zeromq的主要特性是面向訊息進行通訊,所以它提供的是比libevent處在網路通訊中更高一層的元件,如果程式設計師要使用zeromq,只需要做如下事情:

然後程式設計師自己負責如何序列化/反序列化,最後將序列化後的資料交給zeromq傳送處理即可。

通過閱讀zeromq的原始碼,給我最深刻的印象就是zeromq幾乎所有的i/o操作都是非同步的,主線程不會被阻塞。zeromq設計之初就是為了高效能的訊息傳送而服務的,所以其設計追求簡潔高效,非同步模式的體現在:

它傳送訊息是非同步模式,通過單獨出乙個io執行緒來實現,所以訊息傳送呼叫之後不要立刻釋放相關資源,要把資源釋放函式交給zeromq讓zeromq發完訊息自己釋放。

未完待續。。。

ZeroMQ 資料彙總

所有分析,基於 2.1.0 的 建立在 socket 之上的 light weight message queue。不再需要自己管理 tcp 分包。簡單 實用。來自 imatix 的乙個庫,imatix 主要面向金融行業。業務邏輯決定設計 最詳細的使用指南 zeromq 的使用 hello 0mq,...

ZeroMQ資料 彙總

所有分析,基於 2.1.0 的 建立在 socket 之上的 light weight message queue。不再需要自己管理 tcp 分包。簡單 實用。來自 imatix 的乙個庫,imatix 主要面向金融行業。業務邏輯決定設計 最詳細的使用指南 zeromq 的使用 hello 0mq,...

ZeroMQ資料引導

zeromq是一種基於訊息佇列的多執行緒網路庫,其對套接字型別 連線處理 幀 甚至路由的底層細節進行抽象,提供跨越多種傳輸協議的套接字。提供的套接字可以在多種協議中傳輸訊息,如執行緒間 程序間 tcp 廣播等。你可以使用套接字構建多對多的連線模式,如扇出 發布 訂閱 任務分發 請求 應答等。zero...