标签:使用 阶段 with sock 地址 fun message 下载地址 err
下载zmq:下载地址
tar -zxvf zeromq-4.1.6.tar.gz
编译安装:
解释以下,这里是不用libsodium这个库 ,还有下面prefix 是安装的路径 ,注意看一下你要安装在那。
./configure --prefix=/user/local --without-libsodium
编译:
make
安装:
make install
现在是使用gozmq阶段,这里只有一个server,复制粘贴,go mod tidy
先来例子:
package main
import (
"fmt"
zmq "github.com/pebbe/zmq4"
"math/rand"
"time"
)
func main() {
publisher, err := zmq.NewSocket(zmq.PUB)
if err != nil {
fmt.Println("creat publisher error", err)
}
defer publisher.Close()
err = publisher.Bind("tcp://*:5556")
if err != nil {
fmt.Println("Bind error ", err)
}
go func() {
for {
// Get values that will fool the boss
zipcode := rand.Intn(100000)
temperature := rand.Intn(215) - 80
relhumidity := rand.Intn(50) + 10
// Send message to all subscribers
msg := fmt.Sprintf("%05d %d %d", zipcode, temperature, relhumidity)
publisher.Send(msg, 0)
}
}()
time.Sleep(30 * time.Second)
}
运行肯定会失败
因为找不到lib 和 libzmq.pc ,这里有两种方法,一种是一劳永逸的,把环境变量加进取。
方案一:需要root权限,永久有效
将找到的路径写入ld.so.conf文件中:echo “填入所找到的路径” >> /etc/ld.so.conf
重新加载配置文件:sudo ldconfig
推荐使用方法二
这里主要是在没有权限的情况下进行的。就是这两个变量。

标签:使用 阶段 with sock 地址 fun message 下载地址 err
原文地址:https://www.cnblogs.com/Addoil/p/11993964.html