我是靠谱客的博主 粗暴大船,最近开发中收集的这篇文章主要介绍ZMQ简介,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

ZMQ(ØMQ、ZeroMQ, 0MQ)看起来像是一套嵌入式的网络链接库,是网络通信中新的一层,介于应用层和传输层之间(按照TCP/IP划分),其是一个可伸缩层,但工作起来更像是一个并发式的框架,分散在分布式系统间。它提供的套接字可以在多种协议中传输消息,如线程间、进程间、TCP、广播等。可以使用套接字构建多对多的连接模式,如扇出、发布-订阅、任务分发、请求-应答等。ZMQ的快速足以胜任集群应用产品。它的异步I/O机制能够构建多核应用程序,完成异步消息处理任务。ZMQ有着多语言支持,并能在几乎所有的操作系统上运行。

ZMQ 并不像是一个传统意义上的消息队列服务器,事实上,它也根本不是一个服务器,它更像是一个底层的网络通讯库,在 Socket API 之上做了一层封装,将网络通讯、进程通讯和线程通讯抽象为统一的 API 接口

跟 Socket 的区别是:普通的 socket 是端到端的(1:1的关系),而 ZMQ 却是可以N:M 的关系,人们对 BSD 套接字的了解较多的是点对点的连接,点对点连接需要显式地建立连接、销毁连接、选择协议(TCP/UDP)和处理错误等,而 ZMQ 屏蔽了这些细节,让网络编程更为简单。ZMQ 用于 node 与 node 间的通信,node 可以是主机或者是进程。

ZMQ 提供了三个基本的通信模型,分别是“Request-Reply “,”Publisher-Subscriber“,”Parallel Pipeline”,

区别:

1、zmq套接字是异步的,可以实现特定模式

2、TCP是一对一,ZeroMQ是多对多的,可以根据套接字类型实现一对多,一对一,多对一,或多对多

3、ZeroMQ传输消息,TCP传输字节

4、ZeroMQ 隐藏IO细节,ZeroMQ不在乎目的是否存在

5、ZeroMQ可以往多个节点发送数据,可以从多个节点接收数据

最后

以上就是粗暴大船为你收集整理的ZMQ简介的全部内容,希望文章能够帮你解决ZMQ简介所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(30)

评论列表共有 0 条评论

立即
投稿
返回
顶部