作者:Pieter Hintjens, iMatix CEO
对于所有的评论和勘误表,请参考issue tracker。这个版本覆盖了zeromq 最新的稳定版本(v3.2)。如果你使用的是较早一点的zeromq版本,其中的一些例子和解释可能会有出入。注:ZeroMQ v4 能够很好地兼容 v3.2,最大的不同在于安全保证上,这个在hintjens.com有详细的解释。我们会适时地更新这个指南。
本指南主体部分的部分例子使用的是C语言,,但是也提供了PHP、Python、Lua以及Haxe的示例。我们也将大部分的例子用C++ , C#, CL, Delphi, Erlang, F#, Felix, Haskell, Java, Objective-C, Ruby, Ada, Basic, Clojure, Go, Haxe, Node.js, ooc, Perl, 以及 Scala 这些语言进行了描述。
前言
100字描述0MQ
0MQ(也被称为ZeroMQ, 0MQ, 或是zmq),看起来像是一个嵌入式的网络库,但是行为却像是一个并发性框架。0MQ提供的套接字(socket)可以携带消息进行各种不同类型的传输,像进程内通信,进程间通信,TCP通信,以及多播。你可以将多个套接字进行N-N的连接,例如扇出模式、发布订阅模式、任务分发模式、请求应答模式。它足够快,可以用于集群生产的架构。异步的I/O模型给你提供了可伸缩的多核应用程序,构建异步消息处理任务。0MQ拥有20种语言的API, 可以运行在绝大多数的操作系统上。0MQ来自于iMatrix ,是一个LGPlv3 开放源码。
1、in-process\ inter-process\ tcp\ multicast传输 2、多种通信模式,支持N-N 3、速度快,适用于集群生产架构 4、异步I/O,适用于构建异步的消息处理任务 5、多种语言的API,跨平台 6、开源
0MQ如何开始
我们使用一个普通的TCP套接字