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
fileio2.go 2KB
clonecli3.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币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 本资源库是关于“Java Collection Framework API”的参考资料,是 Java 开发社区的重要贡献,旨在提供有关 Java 语言学院 API 的实践示例和递归教育关系 .zip
- 插件: e2eFood.dll
- 打造最强的Java安全研究与安全开发面试题库,帮助师傅们找到满意的工作.zip
- (源码)基于Spark的实时用户行为分析系统.zip
- (源码)基于Spring Boot和Vue的个人博客后台管理系统.zip
- 将流行的 ruby faker gem 引入 Java.zip
- (源码)基于C#和ArcGIS Engine的房屋管理系统.zip
- (源码)基于C语言的Haribote操作系统项目.zip
- (源码)基于Spring Boot框架的秒杀系统.zip
- (源码)基于Qt框架的待办事项管理系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功