ØMQ

✍ dations ◷ 2025-04-29 15:31:44 #自由系统软件,进程间通信,面向消息的中间件

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

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

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

基本的ZeroMQ模式有:

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

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

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

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

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

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

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

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



相关

  • 苯丙酸苯丙酸(英语:Phenylpropanoic acid或 hydrocinnamic acid)是一种分子式为C9H10O2的带芳香基团的羧酸,属于苯丙素类,是一种白色晶体,带有甜味,常温下有花香,在化妆品、食品和制药上有
  • 卫星电话卫星电话,全称为携带式卫星通信系统,是移动电话的一种。但其与普通的移动电话不同,卫星电话并不透过地面所设的基地台与电信网络连接,而是直接与天上的通信卫星通信。根据系统构
  • 药理疗法人体解剖学 - 人体生理学 组织学 - 胚胎学 人体寄生虫学 - 免疫学 病理学 - 病理生理学 细胞学 - 营养学 流行病学 - 药理学 - 毒理学药品指一切用作诊断、治疗、预防疾病
  • 瑠公圳引水石硿坐标:24°57′31″N 121°32′12″E / 24.958740°N 121.536655°E / 24.958740; 121.536655瑠公圳是位于台湾台北的灌溉水圳(英语:Aqueduct (water supply))系统,为清朝乾隆年间
  • 铁路运输铁路运输(英语:rail transport),通称轨道运输或轨道交通。狭义上通常是指一种以具有轮对的车辆沿铁路轨道运行,以达到运送旅客或货物目的的陆上运输方式。而广义的铁路运输尚包括
  • 表现度表现度在遗传学上指遗传缺陷的表现程度;表现度不同时,性状外显可有轻重的不同,但只要是有这种相应基因型的人,不会完全没有表现。外显度Mendelian Genetics
  • 瓜德尔坐标:25°07′35″N 62°19′21″E / 25.12639°N 62.32250°E / 25.12639; 62.32250瓜德尔(乌尔都语:گوادر‎‎、英语:Gwadar)位于巴基斯坦西南沿海,靠近波斯湾的霍尔木兹海
  • 弗拉德·迪瓦茨弗拉德·迪瓦茨(塞尔维亚语西里尔字母:Владе Дивац,塞尔维亚语拉丁字母:Vlade Divac,1968年2月3日-)生于南斯拉尔夫的普里耶波列,塞尔维亚职业篮球运动员,他的职业生涯很长
  • 奥德凯尔克奥德凯尔克(荷兰语:Ouderkerk)是荷兰南荷兰省的一个基层政权。2005年人口8,100。面积28.53 km²,其中1.42 km²为水域。该基层政权建立于1985年。 阿尔布拉瑟丹 ·阿尔布兰茨
  • 范易谋埃马纽埃尔·法贝尔 (法语:Emmanuel Faber, 1964年1月22日-),中文名范易谋,是一位法国企业家,达能集团首席执行官。1964年出生于法国格勒诺布尔,1980年代拿到法国业士文凭,1986年毕业