centos环境搭建nsq单点

简言

下载

启动nsq(单节点)

[1. 启动nsqd](#1. 启动nsqd)

[2. 启动nsqlookupd](#2. 启动nsqlookupd)

[3. 启动nsqadmin](#3. 启动nsqadmin)

查看状态


简言

  1. nsq是go语言实现的分布式消息处理平台,类似我们常用的kafka,rocket mq等,目的是用来大规模地处理每天数以十亿计级别的消息。它具有分布式和去中心化拓扑结构,该结构具有无单点故障、故障容错、高可用性以及能够保证消息的可靠传递的特征

  2. nsq官网地址 https://nsq.io/

  3. nsq安装包地址 NSQ Docs 1.2.1 - Installing

  4. nsq分为3种服务进程

nsqd: 负责接收消息,消息排队、重试、持久化,推送消息给客户端,可以有多个

nsqlookupd: 负责管理各个nsqd,存储nsqd的元数据和服务信息,客户端(我们的程序)就是通过查询 nsqlookupd来实现服务发现,可以有多个

nsqadmin: 方便我们查看、管理nsq的UI网页工具,汇总nsq的实时统计,一般1个就够了

下载

  1. 打开上面的nsq安装包地址,可以看到各个系统,各个版本的nsq安装包,当前最新版本是nsq-1.2.1,我是centos系统,所以下载 nsq-1.2.1.linux-amd64.go1.16.6.tar.gz,如下图
  1. 下载到我们的电脑上,放在/soft目录下,这个目录专门存放我们的软件,如下图
  1. 运行命令 tar -zxvf nsq-1.2.1.linux-amd64.go1.16.6.tar.gz 解压到当前目录,然后

cd到目录 nsq-1.2.1.linux-amd64.go1.16.6/bin,可以看到内容如下图

启动nsq(单节点)

1. 启动nsqd

命令如下,192.168.136.129是本机IP,参数 --lookupd-tcp-address=192.168.136.129:4160 表示要连接的nsqlookupd的地址是192.168.136.129:4160

nohup ./nsqd --lookupd-tcp-address=192.168.136.129:4160 &

nsqd会默认监听4150端口(tcp使用),4151端口(http使用) ,可以使用lsof 命令看到这两个端口已经被nsqd监听

2. 启动nsqlookupd

nohup ./nsqlookupd &

nsqlookupd会默认监听本地的4160端口(tcp使用),4161端口(http使用)。其中4160端口是给各个nsqd连接用的,也就解释了为什么步骤1中要连这个地址了。当然也可以通过指定参数-tcp-address=xxxx 和 -http-address=xxxx来监听其他端口

监听如下图

3. 启动nsqadmin

nohup ./nsqadmin --lookupd-http-address=192.168.136.129:4161 &

注意:nsqadmin必须明确指定参数lookupd-http-address,这样它才知道要通讯的nsqlookup地址,nsqadmin会默认监听本地的4171端口,我们在浏览器上访问的就是这个地址

查看状态

我们查看下刚才启动的各个nsq进程,如下图

打开浏览器,地址输入http://192.168.136.129:4171/

其中192.168.136.129:4171就是刚才nsqadmin监听的地址,如下图

这个时候还没有topic(主题),也没有channel(监听通道)

点击页面的Nodes,可以查看所有的nsq节点,此时只有一个节点,就是刚才启动的nsq进程,如下图

点击页面的Lookup,可以查看所有的nsqlookup节点,此时也是只有一个节点,也就是刚才启动的,如下图

下一篇博客我们讲如何搭建nsq集群

linux环境搭建nsq集群_YZF_Kevin的博客-CSDN博客