ZeroMQ 原理及其優點

2021-08-04 22:36:46 字數 787 閱讀 2209

簡介:

zeromq號稱是「史上最快的訊息佇列」,基於c語言開發的,實時流處理sorm的task之間的通訊就是用的zeromq。

引用官方說法,「zmq(以下zeromq簡稱zmq)是乙個簡單好用的傳輸層,像框架一樣的乙個socket library,

他使得socket程式設計更加簡單、簡潔和效能更高。是乙個訊息處理佇列庫,可在多個執行緒、核心和主機盒之間彈性伸縮。

zmq的明確目標是「成為標準網路協議棧的一部分,之後進入linux核心」。現在還未看到它們的成功。

但是,它無疑是極具前景的、並且是人們更加需要的「傳統」bsd套接字之上的一 層封裝。

zmq讓編寫高效能網路應用程式極為簡單和有趣。」 確實,它跟rabbitmq,activemq之類有著相當本質的區別,

是我們操作更簡便。使用時只需要引入相應的jar包即可。

工作模式:

zeromq與其他mq類似,也實現了3中最基本的工作模式:發布-訂閱,請求-應答,管道

特點: 高到離譜的吞吐量、可自行開發持久化、支援資料量較小的持久化、不過只是儲存到記憶體中。

除了點對點 即:請求-應答模式 是一對一 、不可有訊息丟失 、其他都沒有對訊息丟失做強烈的保證、

官方給出的觀點:我們希望訊息的盡快送達、而不介意訊息的丟失

zeromq的目標是成為網路協議棧的一部分、進而進軍linux 核心 、所以與rabbit active 有著本質以及目標的區別

官方:擴充套件部落格:zeromq無鎖佇列分析

另:

向作者致敬!

泛型及其優點

泛型類和泛型方法同時具備可重用性 型別安全和效率,這是非泛型類和非泛型方法無法具備的。泛型通常用在集合和在集合上執行的方法中。net framework 2.0 版類庫提供乙個新的命名空間 system.collections.generic,其中包含幾個新的基於泛型的集合類。建議面向 2.0 版的...

繫結變數及其優點

什麼是繫結變數 bind variable bind var是指在sql語句的條件中使用變數而不是常量。比如shared pool裡有兩條sql語句,select from tab1 where col1 1 select from tab1 where col1 2 對oracle資料庫來說,這是...

多執行緒的優點及其應用

執行緒是系統排程和分配的單位,是輕量級程序,它共享所屬程序的記憶體空間和資源,但不擁有資源,執行緒具有以下優點 1 節省記憶體空間。這是因為多個執行緒共享程序的位址空間。2 併發粒度小,併發程度高。執行緒不擁有資源,只是程序中的乙個執行序列,因此乙個系統中可以存在好多執行緒,甚至執行緒的數目沒有限制...