分为四种:负载均衡
Publish-subscribe pattern 发布-订阅模式(也就是MQ中常说的topic模式)socket
这种模式主要用于1对多的数据发布(一个发布者,多个订阅者)线程
里面又具体分了ZMQ_PUB ZMQ_SUB对象
PUB发送消息给全部的SUB。若是此时SUB没有启动,下次启动时会漏掉该消息。队列
Pipeline pattern 管道模式(一分多模式)进程
这种模式主要用于发布数据到由管道排列的节点上面,数据老是沿着管道流动。每一个管道阶段链接了至少一个节点ip
里面又具体分了ZMQ_PUSH ZMQ_PULLast
一个1对N队列的实现,PUSH将数据放入队列,PULL从队列中不取出数据。数据会负载均衡的发送给每个PULL。监控
Exclusive pair pattern 独立对模式(比较特殊的一种模式)udp
peer to peer 模式。主要用于进程内部线程间通讯
里面又具体分了ZMQ_PAIR
线程间1-to-1队列的实现,采用了lock free实现,因此速度很快。
Exclusive pair pattern 独立对模式常常在队列的监控中进行使用。
request-reply-pattern请求应答模式
请求应答模式中,应答端必须先启动,否则请求端没法链接到应答端,(rep-req) 具体里面又分为REQ,REP,DEALER,ROUTER.
一、
zeromq是对socket的一种抽象,TCP中socket是一对一进行链接,0mq中使用sokcet对象能够轻松的实现1对1和1对多。
二、
inproc:同一进程不一样线程之间的通讯。 ipc: 一台计算机上的集成通讯。 multicast:使用udp实现多播通讯。