(1)概念:基於訊息佇列的多執行緒網路庫,提供跨越多種傳輸協議的套接字。
(2)常用的三種模式:請求回應模式、發布訂閱模式和管道模式。
(3)zmq_ctx_new():建立乙個新的zmq環境上下文,返回乙個新建立的context控制代碼。
(4)控制代碼:乙個控制代碼是使用唯一的整數值,來標識不同物件和同類中的不同例項,
windows之所以需要設定控制代碼,是記憶體管理機制的問題(虛擬位址),就是資料的位址
需要變動,變動之後需要來記錄管理,系統用控制代碼來記載資料位址的變更。
(5)zmq_socket():void *zmq_socket(void *context,int type)
根據context引數建立zmq套接字,然後以乙個不透明的指標返回建立的socket。
新建立的socket初始值未繫結,沒有和任何終點相連線,為了能夠在socket上新建乙個訊息,
必須使用zmq_connect連線乙個終結點,或者至少使用zmq_bind函式繫結乙個終結點來接收傳入的訊息。
(6)套接字型別:
1.請求回應模型:zmq_req、zmq_rep、zmq_dealer、zmq_router。
2.發布訂閱模式:zmq_pub、zmq_sub、zmq_xpub、zmq_xsub
3.管道模式:zmq_push、zmq_pull、
(7)套接字:是乙個抽象層,實際上是乙個通訊端點,應用程式可以通過它來傳送或者接收資料。
網路套接字是ip位址與埠的組合。兩個應用程式的資料傳輸都要通過套接字來完成。
(8)zmq_connect():int zmq_connect(void *socket const char *endpoint)
將socket連線到節點endpoint上,然後開始接收這個節點上的連線請求。
執行成功時返回0,其他情況返回-1。
(9)zmq_bind():int zmq_bind(void *socket,const char *endpoint)
繫結乙個socket,接收發來的鏈結請求。執行成功時返回0,其他情況返回-1。
(10)zmq_send():int zmq_send(void *socket,void *buf,size_t len,int flags)
在乙個socket(套接字)上傳送乙個訊息幀。根據buf引數指定的記憶體緩衝區和
len引數指定的緩衝區資料長度建立乙個訊息,並新增到訊息佇列中。當zmq_send()執行成功
之時,會返回傳送訊息的位元組數,否則返回-1。
(11)zmq_recv():int zmq_recv(void *socket,void *buf,size_t len,int flags)
zmq_recv()會根據socket引數來接收乙個資訊,並把這個訊息儲存在buffer引數指定的記憶體空間中。
(12)zmq_close():int zmq_close(void *socket)
銷毀socket。
(13)zmq_ctx_destroy():int zmq_ctx_destroy(void *context)
銷毀乙個zmq環境上下文。
(14)zmq_setsockopt():設定zmq socket的屬性。
mysql相關知識 MySQL相關知識
字串拼接 select from tablename where mydata like concat curdate limit 3 這裡concat是字串拼接,concat mys q l mysql 顯示日期不帶時間的函式,如 2015 05 14 curdate 是日期不算時間 2015 0...
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,...