来源:未知 时间:2020-01-03 23:25 作者:小飞侠 阅读:次
[导读] 1.安装 https://nsq.io/deployment/installing.html 2.快速入门 在一个终端中,运行nsqlookupd 在另一个终端中,运行nsqd --lookupd-tcp-address=127.0.0.1:4160 如果想开启在web UI查看整个节点状况,可以在另一...
1.安装https://nsq.io/deployment/installing.html 2.快速入门在一个终端中,运行nsqlookupd
topic
image.png
package mainimport (
"fmt"
"sync"
"github.com/nsqio/go-nsq")func main() {
testNSQ()}type NSQHandler struct {}func (this *NSQHandler) HandleMessage(msg *nsq.Message) error {
fmt.Println("receive", msg.NSQDAddress, "message:", string(msg.Body))
return nil}func testNSQ() {
url := "127.0.0.1:4150"
waiter := sync.WaitGroup{}
waiter.Add(1)
go func() {
defer waiter.Done()
config := nsq.NewConfig()
config.MaxInFlight = 9
for i := 0; i < 10; i++ {
consumer, err := nsq.NewConsumer("baoer", "test", config)
if nil != err {
fmt.Println("err", err)
return
}
consumer.AddHandler(&NSQHandler{})
err = consumer.ConnectToNSQD(url)
if nil != err {
fmt.Println("err", err)
return
}
}
select {}
}()
waiter.Wait()}这样,当有消息发送到topic中的时候,客户端就可以消费相应的消息了
两个消息队列.png
整个节点状况.png |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com