C 之ZeroMQ的使用

2021-10-03 14:54:58 字數 1171 閱讀 7232

zeromq官網的使用教程很詳細,這裡主要介紹兩種常使用的模式。

request/reply (請求應答模式)

這種模式和網路api請求一樣,先向一位址的傳送請求,然後等待伺服器返回對應的資料或者狀態,伺服器在後端一直監聽發過來的請求,然後返回對應的資料即可。

這裡**都是cppzmq的封裝的。

void

sendmsg()

else

std::cout <<

"send message finished"

<< std::endl;

// 等待伺服器返回的響應

zmq::message_t reply;

socket.recv (

&reply)

; std::cout << reply.

size()

<< std::endl;

char

* buffer=

newchar

[reply.

size()

];memcpy

(buffer, reply.

data()

, reply.

size()

);std::cout << std::

string

(buffer)

<< std::endl;

delete

buffer;

}

伺服器端**:

void

receivemsg()

}}

publish/subscribe (發布訂閱模式)

上**,**中用到了opencv影象庫,可以對影象進行編碼和解碼

void

pubimage()

else

}}

訂閱端

void

subscribe()

;}}}

總結: 在使用的時候一定要搞清楚,哪個是bind,哪個是connect 這個很容易搞混,另外,就是訂閱的時候對訊息的過濾條件要寫對。

ZeroMQ介面函式之 zmq msg init

zmq msg init data 從乙個指定的儲存空間中初始化乙個 zmq訊息物件的資料 synopsis typedef void zmq free fn void data,void hint int zmq msg init data zmq msg t msg,void data,size...

zeromq使用模式實驗總結

zeromq 官網 安裝demo及各語言繫結 golang繫結 實驗環境 win10 x64 centos6 x86 zeromq4.0.6 zmq三種模式 push pull pub sub req resp 一 push pull模式 a程式push 如下 import zmq import t...

訊息佇列 ZeroMQ的安裝以及使用

1.前言 最近,一方面完成上司分配的工作任務,一方面在看zeromq這個東西,這個庫我最早接觸是在讀研期間,當時為了做一些有關分布式應用使用的一段時間,zeromq給我的感覺就是這個庫在搭建一些基於訊息的分布式架構很實用,它的最大的特點就是只需要使用幾個函式呼叫,就能夠實現乙個簡單的分布式系統,我當...