A Go interface to [ZeroMQ](http://www.zeromq.org/) version 4.
----------------------------------------------------------------
## Warning
Starting with Go 1.14, on Unix-like systems, you will get a lot of
interrupted signal calls. See the top of a package documentation
for a fix.
----------------------------------------------------------------
[![Go Report Card](https://goreportcard.com/badge/github.com/pebbe/zmq4)](https://goreportcard.com/report/github.com/pebbe/zmq4)
[![GoDoc](https://godoc.org/github.com/pebbe/zmq4?status.svg)](https://godoc.org/github.com/pebbe/zmq4)
This requires ZeroMQ version 4.0.1 or above. To use CURVE security in
versions prior to 4.2, ZeroMQ must be installed with
[libsodium](https://github.com/jedisct1/libsodium) enabled.
Partial support for ZeroMQ 4.2 DRAFT is available in the alternate
version of zmq4 `draft`. The API pertaining to this is subject to
change. To use this:
import (
zmq "github.com/pebbe/zmq4/draft"
)
For ZeroMQ version 3, see: http://github.com/pebbe/zmq3
For ZeroMQ version 2, see: http://github.com/pebbe/zmq2
Including all examples of [ØMQ - The Guide](http://zguide.zeromq.org/page:all).
Keywords: zmq, zeromq, 0mq, networks, distributed computing, message passing, fanout, pubsub, pipeline, request-reply
### See also
* [go-zeromq/zmq4](https://github.com/go-zeromq/zmq4) — A pure-Go implementation of ØMQ (ZeroMQ), version 4
* [go-nanomsg](https://github.com/op/go-nanomsg) — Language bindings for nanomsg in Go
* [goczmq](https://github.com/zeromq/goczmq) — A Go interface to CZMQ
* [Mangos](https://github.com/go-mangos/mangos) — An implementation in pure Go of the SP ("Scalable Protocols") protocols
## Requirements
zmq4 is just a wrapper for the ZeroMQ library. It doesn't include the
library itself. So you need to have ZeroMQ installed, including its
development files. On Linux and Darwin you can check this with (`$` is
the command prompt):
```
$ pkg-config --modversion libzmq
4.3.1
```
The Go compiler must be able to compile C code. You can check this
with:
```
$ go env CGO_ENABLED
1
```
You can't do cross-compilation. That would disable C.
### Windows
Build with `CGO_CFLAGS` and `CGO_LDFLAGS` environment variables, for example:
```
$env:CGO_CFLAGS='-ID:/dev/vcpkg/installed/x64-windows/include'
$env:CGO_LDFLAGS='-LD:/dev/vcpkg/installed/x64-windows/lib -l:libzmq-mt-4_3_4.lib'
```
> Deploy result program with `libzmq-mt-4_3_4.dll`
## Install
go get github.com/pebbe/zmq4
## Docs
* [package help](http://godoc.org/github.com/pebbe/zmq4)
* [wiki](https://github.com/pebbe/zmq4/wiki)
## API change
There has been an API change in commit
0bc5ab465849847b0556295d9a2023295c4d169e of 2014-06-27, 10:17:55 UTC
in the functions `AuthAllow` and `AuthDeny`.
Old:
func AuthAllow(addresses ...string)
func AuthDeny(addresses ...string)
New:
func AuthAllow(domain string, addresses ...string)
func AuthDeny(domain string, addresses ...string)
If `domain` can be parsed as an IP address, it will be interpreted as
such, and it and all remaining addresses are added to all domains.
So this should still work as before:
zmq.AuthAllow("127.0.0.1", "123.123.123.123")
But this won't compile:
a := []string{"127.0.0.1", "123.123.123.123"}
zmq.AuthAllow(a...)
And needs to be rewritten as:
a := []string{"127.0.0.1", "123.123.123.123"}
zmq.AuthAllow("*", a...)
Furthermore, an address can now be a single IP address, as well as an IP
address and mask in CIDR notation, e.g. "123.123.123.0/24".
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
消息队列zeromq的go语言测试实例包 (176个子文件)
dummy.c 53B
dummy.c 53B
config 254B
description 73B
exclude 240B
zmq4_test.go 43KB
zmq4_test.go 43KB
zmq4.go 36KB
zmq4.go 33KB
socketset.go 23KB
socketset.go 23KB
socketget.go 19KB
socketget.go 19KB
auth.go 16KB
auth.go 16KB
mdbroker.go 11KB
clonesrv6.go 9KB
peering3.go 9KB
bstar.go 8KB
clone.go 8KB
flcliapi.go 8KB
peering2.go 6KB
kvmsg.go 6KB
intface.go 6KB
mdwrkapi.go 6KB
bstarsrv.go 6KB
titanic.go 6KB
wrappers_windows.go 5KB
lbbroker.go 5KB
reactor.go 5KB
polling.go 5KB
polling.go 5KB
reactor.go 5KB
mdcliapi2.go 4KB
wrappers_windows.go 4KB
mdcliapi.go 4KB
ppqueue.go 4KB
clonesrv5.go 4KB
lbbroker3.go 4KB
utils.go 4KB
utils.go 4KB
kvsimple.go 4KB
wrappers_unix.go 4KB
auth_test.go 4KB
auth_test.go 4KB
ppworker.go 4KB
asyncsrv.go 3KB
zmq42draft_test.go 3KB
lbbroker2.go 3KB
flclient2.go 3KB
clonesrv2.go 3KB
wrappers_unix.go 3KB
fileio3.go 2KB
udpping1.go 2KB
errors.go 2KB
errors.go 2KB
lpclient.go 2KB
clonesrv4.go 2KB
bstarcli.go 2KB
fileio1.go 2KB
espresso.go 2KB
spqueue.go 2KB
clonecli3.go 2KB
fileio2.go 2KB
clonecli5.go 2KB
kvmsg_test.go 2KB
clonesrv3.go 2KB
clonecli4.go 2KB
tripping.go 2KB
ticlient.go 2KB
flclient1.go 2KB
suisnail.go 2KB
clonecli2.go 2KB
rtdealer.go 2KB
doc.go 2KB
socketevent_test.go 2KB
socketevent_test.go 2KB
stonehouse.go 2KB
rtreq.go 2KB
ironhouse.go 2KB
doc.go 2KB
lvcache.go 2KB
peering1.go 1KB
zmq41_test.go 1KB
strawhouse.go 1KB
zmq41_test.go 1KB
ctxoptions_unix.go 1KB
ctxoptions_unix.go 1KB
zmq42draft.go 1KB
taskwork2.go 1KB
woodhouse.go 1KB
identity.go 1KB
spworker.go 1KB
ctxoptions_windows.go 1KB
ctxoptions_windows.go 1KB
udpping2.go 1KB
interrupt.go 1KB
taskvent.go 1KB
flserver3.go 1KB
bstarsrv2.go 1KB
共 176 条
- 1
- 2
资源评论
赛博朋克2078
- 粉丝: 9
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于raft的高可用kv存储系统,golang实现,适应于深入理解redis
- 武汉大学 遥感信息工程学院 摄影测量系 解析摄影测量课程笔记整理与详解
- python《狭窄自由空间中多车辆协作规划的混合A星轨迹规划(基于多车辆运动序列规划进行轨迹规)》+项目源码+文档说明+代码注释
- web十大漏洞之xss注入靶场文件
- 小型STL模板库,适用于学习C++的初学者,用于掌握C++基础
- 电网调度员招聘.pdf
- 通过Python,Tkinter,文本文件,Openpyxl 实现【图书馆管理系统实现技术】
- 微信小程序-学生社团管理系统(毕业设计)
- python《使用 Astar 和 Dstar 算法进行机器人 3D 路径规划》+项目源码+文档说明+代码注释
- 掌纹识别,使用分类网络实现掌纹识别,用于小白学习
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功