fbpx
维基百科

ØMQ

ØMQ (也拼写作ZeroMQ0MQZMQ)是一个为可伸缩的分布式或并发应用程序设计的高性能异步消息库。它提供一个消息队列, 但是与面向消息的中间件不同,ZeroMQ的运行不需要专门的消息代理message broker英语message broker)。该库设计成常见的套接字风格的API

ØMQ
開發者iMatix公司
目前版本
  • 4.3.4 (2021年1月17日)[1]
源代码库
  • github.com/zeromq/libzmq
编程语言C++
系統平台跨平台
类型消息队列
许可协议LGPL with static linking exception
网站www.zeromq.org

ZeroMQ是由iMatix公司和大量贡献者组成的社群共同开发的。ZeroQ通过许多第三方软件支持大部分流行的编程语言,从JavaPythonErlangHaskell

技术

类库提供一些套接字(对传统Berkeley套接字Unix domain socket的泛化),每一个套接字可以代表一个端口之间的多对多英语many-to-many连接。以消息的粒度进行操作,套接字需要使用一种消息模式(message pattern英语message pattern),然后专门为那种模式进行了优化。

基本的ZeroMQ模式有:

请求响应模式
将一组客户端连接到一组服务器。这是一种远程过程调用和任务分发模式。
发布/订阅模式
将一组发布者连接到一组订阅者。这是一种数据分发模式。
管道模式
以扇出/扇入模式连接节点,可以有多个步骤,可以有循环。这是一种并行的任务分发和收集模式。
排他对模式
在一个排他对中连接两个套接字。 (这是一种高级的为某种用例而设计的低级别模式)

任何通过套接字的消息被看作不透明的数据。发送给订阅者的消息可以自动地通过块最开始的字符串进行过滤。ZeroMQ提供多种消息传输协议,包括TCPPGM(可靠的多播),进程间通信(IPC) 以及线程间通讯(ITC)。

由于内部线程模型,ZeroMQ的性能非常好,通过利用一种自动消息批处理技术,它甚至在吞吐量上超过了TCP的性能。[2][3]

ZeroMQ实现了ZMTP, ZeroMQ消息传输协议。[4] ZMTP定义了向后兼容性的规则,可扩展的安全机制,命令和消息分帧,连接元数据,以及其他传输层功能。不使用完整的ZeroMQ实现,而是直接实现ZMTP协议的项目不断增加。[5]

历史

2010年3月30日,AMQP的最初设计者iMatix公司的首席执行官Pieter Hintjens宣布iMatix将退出AMQP工作组,而且为了简单得多,快的多的ZeroMQ,将不支持 可能发布的AMQP/1.0[6][7]

2011年,欧洲核子研究组织 (CERN)调查了统一用于操作CERN加速器的中间件解决方案的方式,欧洲核子研究组织的研究比较了CORBAIceThrift,ZeroMQ, YAMI4,RTI和 Qpid (AMQP) ,ZeroMQ得到了最高的分数。[3]

2012年3月,由于在项目控制权上的分歧,一些ZeroMQ的最初开发者建立了ZeroMQ的分支,Crossroads I/O. Crossroads I/O[8]计划使用更常见的“仁慈独裁者”模式,Martin Sustrik将充当仁慈独裁者。[9]

2012年8月,Dongmin Yu宣布了他的纯Java的ZeroMQ实现,JeroMQ.[10] 这激发了更多的ZeroMQ全本地化的移植,例如C#的NetMQ。[11]

2013年3月, Pieter Hintjens宣布了ZMTP线级协议的新的草案,为ZeroMQ提供了安全机制的可扩展性。[12]

参见



参考文献

  1. ^ Release 4.3.4. 2021年1月17日 [2021年2月2日]. 
  2. ^ How come ØMQ has higher throughput than TCP although it's built on top of TCP?. ZeroMQ FAQ. [2013-06-08]. (原始内容于2019-07-16). 
  3. ^ 3.0 3.1 Middleware Trends And Market Leaders 2011. [2013-06-08]. (原始内容于2020-11-03). 
  4. ^ ZeroMQ Message Transfer Protocol. [2013-06-08]. (原始内容于2019-11-22). 
  5. ^ GitHub Search: ZMTP. [2013-06-08]. (原始内容于2020-08-14). 
  6. ^ . openamq-dev maillist. [14 July 2012]. (原始内容存档于2012年10月10日). 
  7. ^ . iMatix Corporation. [14 July 2012]. (原始内容存档于2012-07-17). 
  8. ^ . [14 July 2012]. (原始内容存档于2012年7月13日). 
  9. ^ ZeroMQ and Crossroads I/O: Forking over trademarks. LWN.net. [14 July 2012]. (原始内容于2022-03-05). 
  10. ^ . zeromq-dev mailing list. [23 May 2013]. (原始内容存档于2013年7月31日). 
  11. ^ NetMQ. GitHub. [23 May 2013]. (原始内容于2021-09-18). 
  12. ^ Securing ZeroMQ: draft ZMTP v3.0 Protocol. Hintjens.com. [23 May 2013]. (原始内容于2022-02-23). 

外部链接

  • 官方网站
  • ØMQ(ZeroMQ)简介 (页面存档备份,存于互联网档案馆). InfoQ。
  • 0MQ: A new approach to messaging (页面存档备份,存于互联网档案馆). Linux Weekly News.
  • ZeroMQ is the Answer (页面存档备份,存于互联网档案馆) (a talk at PHP UK conference 2012)
  • Why ZeroMQ? (页面存档备份,存于互联网档案馆) (introductory video)
  • ZeroMQ: Modern & Fast Networking Stack (页面存档备份,存于互联网档案馆) (overview with Ruby examples)
  • ØMQ: The Theoretical Foundation (页面存档备份,存于互联网档案馆

Ømq, 此條目需要更新, 2018年10月18日, 請更新本文以反映近況和新增内容, 完成修改時, 請移除本模板, 此條目過於依赖第一手来源, 2010年7月, 请補充第二手及第三手來源, 以改善这篇条目, 也拼写作zeromq, 0mq或zmq, 是一个为可伸缩的分布式或并发应用程序设计的高性能异步消息库, 它提供一个消息队列, 但是与面向消息的中间件不同, zeromq的运行不需要专门的消息代理, message, broker, 英语, message, broker, 该库设计成常见的套接字风格的api,. 此條目需要更新 2018年10月18日 請更新本文以反映近況和新增内容 完成修改時 請移除本模板 此條目過於依赖第一手来源 2010年7月 请補充第二手及第三手來源 以改善这篇条目 OMQ 也拼写作ZeroMQ 0MQ或ZMQ 是一个为可伸缩的分布式或并发应用程序设计的高性能异步消息库 它提供一个消息队列 但是与面向消息的中间件不同 ZeroMQ的运行不需要专门的消息代理 message broker 英语 message broker 该库设计成常见的套接字风格的API OMQ開發者iMatix公司目前版本4 3 4 2021年1月17日 1 源代码库github wbr com wbr zeromq wbr libzmq编程语言C 系統平台跨平台类型消息队列许可协议LGPL with static linking exception网站www zeromq orgZeroMQ是由iMatix公司和大量贡献者组成的社群共同开发的 ZeroQ通过许多第三方软件支持大部分流行的编程语言 从Java和Python到Erlang和Haskell 目录 1 技术 2 历史 3 参见 4 参考文献 5 外部链接技术 编辑类库提供一些套接字 对传统Berkeley套接字和Unix domain socket的泛化 每一个套接字可以代表一个端口之间的多对多 英语 many to many 连接 以消息的粒度进行操作 套接字需要使用一种消息模式 message pattern 英语 message pattern 然后专门为那种模式进行了优化 基本的ZeroMQ模式有 请求响应模式 将一组客户端连接到一组服务器 这是一种远程过程调用和任务分发模式 发布 订阅模式 将一组发布者连接到一组订阅者 这是一种数据分发模式 管道模式 以扇出 扇入模式连接节点 可以有多个步骤 可以有循环 这是一种并行的任务分发和收集模式 排他对模式 在一个排他对中连接两个套接字 这是一种高级的为某种用例而设计的低级别模式 任何通过套接字的消息被看作不透明的数据块 发送给订阅者的消息可以自动地通过块最开始的字符串进行过滤 ZeroMQ提供多种消息传输协议 包括TCP PGM 可靠的多播 进程间通信 IPC 以及线程间通讯 ITC 由于内部线程模型 ZeroMQ的性能非常好 通过利用一种自动消息批处理技术 它甚至在吞吐量上超过了TCP的性能 2 3 ZeroMQ实现了ZMTP ZeroMQ消息传输协议 4 ZMTP定义了向后兼容性的规则 可扩展的安全机制 命令和消息分帧 连接元数据 以及其他传输层功能 不使用完整的ZeroMQ实现 而是直接实现ZMTP协议的项目不断增加 5 历史 编辑2010年3月30日 AMQP的最初设计者iMatix公司的首席执行官Pieter Hintjens宣布iMatix将退出AMQP工作组 而且为了简单得多 快的多的ZeroMQ 将不支持 可能发布的AMQP 1 0 6 7 2011年 欧洲核子研究组织 CERN 调查了统一用于操作CERN加速器的中间件解决方案的方式 欧洲核子研究组织的研究比较了CORBA Ice Thrift ZeroMQ YAMI4 RTI和 Qpid AMQP ZeroMQ得到了最高的分数 3 2012年3月 由于在项目控制权上的分歧 一些ZeroMQ的最初开发者建立了ZeroMQ的分支 Crossroads I O Crossroads I O 8 计划使用更常见的 仁慈独裁者 模式 Martin Sustrik将充当仁慈独裁者 9 2012年8月 Dongmin Yu宣布了他的纯Java的ZeroMQ实现 JeroMQ 10 这激发了更多的ZeroMQ全本地化的移植 例如C 的NetMQ 11 2013年3月 Pieter Hintjens宣布了ZMTP线级协议的新的草案 为ZeroMQ提供了安全机制的可扩展性 12 参见 编辑 自由软件主题参考文献 编辑 Release 4 3 4 2021年1月17日 2021年2月2日 How come OMQ has higher throughput than TCP although it s built on top of TCP ZeroMQ FAQ 2013 06 08 原始内容存档于2019 07 16 3 0 3 1 Middleware Trends And Market Leaders 2011 2013 06 08 原始内容存档于2020 11 03 ZeroMQ Message Transfer Protocol 2013 06 08 原始内容存档于2019 11 22 GitHub Search ZMTP 2013 06 08 原始内容存档于2020 08 14 iMatix will end OpenAMQ support by 2011 openamq dev maillist 14 July 2012 原始内容存档于2012年10月10日 What is wrong with AMQP and how to fix it iMatix Corporation 14 July 2012 原始内容存档于2012 07 17 Crossroads I O 14 July 2012 原始内容存档于2012年7月13日 ZeroMQ and Crossroads I O Forking over trademarks LWN net 14 July 2012 原始内容存档于2022 03 05 jeromq java pojo zeromq zeromq dev mailing list 23 May 2013 原始内容存档于2013年7月31日 NetMQ GitHub 23 May 2013 原始内容存档于2021 09 18 Securing ZeroMQ draft ZMTP v3 0 Protocol Hintjens com 23 May 2013 原始内容存档于2022 02 23 外部链接 编辑官方网站 OMQ ZeroMQ 简介 页面存档备份 存于互联网档案馆 InfoQ 0MQ A new approach to messaging 页面存档备份 存于互联网档案馆 Linux Weekly News ZeroMQ is the Answer 页面存档备份 存于互联网档案馆 a talk at PHP UK conference 2012 ZeroMQ an introduction Selecting a Message Queue AMQP or ZeroMQ Why ZeroMQ 页面存档备份 存于互联网档案馆 introductory video ZeroMQ Modern amp Fast Networking Stack 页面存档备份 存于互联网档案馆 overview with Ruby examples OMQ The Theoretical Foundation 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title OMQ amp oldid 70956487, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。