Request-reply pattern 请求-回复模型
这种模型主要用于从客户端向一个或多个服务实例发送请求,然后等待紧接着对于每个请求的回复
里面又具体分了ZMQ_REQ ZMQ_REP ZMQ_DEALER ZMQ_ROUTER
REQ 发送完消息后,必须接收一个回应消息后,才能发送新的消息。
REP当接收消息时,都会返回一个消息。
Publish-subscribe pattern 发布-订阅模式
这种模式主要用于1对多的数据发布(一个发布者,多个订阅者)
里面又具体分了ZMQ_PUB ZMQ_SUB
PUB发送消息给所有的SUB。如果此时SUB没有启动,下次启动时会漏掉该消息。
Pipeline pattern 管道模式
这种模式主要用于发布数据到由管道排列的节点上面,数据总是沿着管道流动。每个管道阶段连接了至少一个节点
里面又具体分了ZMQ_PUSH ZMQ_PULL
一个1对N队列的实现,PUSH将数据放入队列,PULL从队列中不取出数据。数据会负载均衡的发送给每一个PULL。
Exclusive pair pattern 独立对模式
peer to peer 模式。主要用于进程内部线程间通信
里面又具体分了ZMQ_PAIR
线程间1-to-1队列的实现,采用了lock free实现,所以速度很快。