nsq消息队列

一、安装nsq:

安装godep
go get github.com/kr/godep

安装assert
go get github.com/bmizerany/assert

安装nsq
godep get github.com/bitly/nsq/...

二、启动进程

1.nsqlookupd:

nsqlookupd的主要职责是维护拓扑信息, 并且接受客户端请求发现指定topic的nsqd生产节点是哪些, 并返回给客户端;
nsqd节点会广播话题和channel信息给nsqlookupd。

后台启动nsqlookupd:

nohup nsqlookupd&

启动后,nsqlooupd的日志文件在nohup.out里,打开后可以看到,它监听两个端口:
4160 :TCP 用于接收nsqd的广播
4161 :HTTP 用于接收客户端发送的管理和发现操作请求

2.nsqd

nsqd 是一个守护进程,负责接收,排队,投递消息给客户端。
它可以独立运行,不过通常它是由 nsqlookupd 实例所在集群配置的。

后台启动多个nsqd:
在~/nsq里创建三个文件夹,分别是node1,node2,node3

nohup nsqd --lookupd-tcp-address=127.0.0.1:4160&  //进入node1路径中执行,默认监听4150和4151端口
nohup nsqd --lookupd-tcp-address=127.0.0.1:4160 -tcp-address=0.0.0.0:4152 -http-address=0.0.0.0:4153&  //在node2路径中执行
nohup nsqd --lookupd-tcp-address=127.0.0.1:4160 -tcp-address=0.0.0.0:4154 -http-address=0.0.0.0:4155&   //在node3路径中执行

这样就启动三个nsqd守护进程
注意:这里一定要在三个不同的路径中执行,不然可能发生FATAL: --data-path=~/... in use (possibly by another instance of nsqd)的错误

3.nsqadmin

nsqadmin 提供WEB UI界面(看板)

启动nsqadmin:

nohup nsqadmin --lookupd-http-address=127.0.0.1:4161&

三、nsq使用:

请看我写的另一篇文章https://www.jianshu.com/p/b94d59b3b2d9

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.安装 根据官方安装指引页面下载最新稳定版的二进制包https://nsq.io/deployment/inst...
    渺小Y阅读 7,077评论 1 4
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,991评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,523评论 25 708
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,971评论 2 59
  • 如果说第一天是让我们适应环境,第二天可就是真刀真枪地上战场了。 大清早揉着朦胧的睡眼醒来,把冷冽的山泉...
    Avril2015阅读 2,153评论 0 8