Zeromq
最后更新于:2022-04-02 04:02:16
[TOC]
> [官网](https://zeromq.org/get-started/)
> [英文文档](https://github.com/anjuke/zguide-cn)
> [中文文档](https://github.com/anjuke/zguide-cn)
## 概述
ZMQ 不需要专门启动 ZMQ 的服务,直接绑定到对应语言上, ZeroMQ的API是对网络插口socket的封装
* ZMQ(ØMQ、ZeroMQ, 0MQ)看起来像是一套嵌入式的网络链接库,但工作起来更像是一个并发式的框架。
* 它提供的套接字可以在多种协议中传输消息,如线程间、进程间、TCP、广播等。
* 你可以使用套接字构建多对多的连接模式,如扇出、发布-订阅、任务分发、请求-应答等。
* ZMQ的快速足以胜任集群应用产品。它的异步I/O机制让你能够构建多核应用程序,完成异步消息处理任务。
* 跨平台
## 安装
### OSX
`brew install zmq
`
### Windows-go
zmq 官方提供两种方式
1. [goczmq](https://zeromq.org/languages/go/#goczmq)
2. [pebbe/zmq4 (推荐)](https://zeromq.org/languages/go/#pebbe-zmq4)
#### zmq4安装
方式一:mingw64
1. 安装 **mingw64**
`choco install mingw`
2. 安装 [**libzmq **](https://zeromq.org/download/#windows)
根据自身系统选择libzmq,如我是win-64位选择[Visual Studio 14 2015 x64](https://dl.bintray.com/zeromq/generic/libzmq-v140-x64-4_3_2.zip)
3. `libzmq-v140-x64-4_3_2\libzmq-v140-mt-4_3_2.dll`重命名为 `libzmq.a`
4. 把`libzmq.a`移动到`mingw64\x86_64-w64-mingw32\lib`下
5. 如果报 `zmq.h`找不到 放置到mingw64的`include` 下,或者加入 `path`下
方式二:TDM-GCC
设置环境变量
```
set C_INCLUDE_PATH=d:\DevTools\Zmq\ZeroMQ 3.2.4\include
set LIBRARY_PATH=d:\DevTools\Zmq\ZeroMQ 3.2.4\lib;d:\DevTools\Zmq\ZeroMQ 3.2.4\bin
set PATH=d:\DevTools\TDM-GCC\x64\bin;%PATH%
```
重命名
`libzmq-v120-mt-3_2_4.dll` 为 `zmq.lib
`
';