kaisawind's blog
  • 关于
  • 所有帖子

nsq简单教程 - Tue, Jul 7, 2020

nsq简单教程

1. 概述

NSQ是实时分布式消息分发平台。

2. 简介

2.1. nsqd

nsqd负责接收,排队,分发消息的守护进程。 doc: https://nsq.io/components/nsqd.html

port usage
4150 tcp client
4151 http client
4152 https client

2.2. nsqlookupd

nsqlookupd管理网络拓扑信息。客户端通过nsqlookupd发现nsqd生产者和主题。并且接收nsqd广播的主题和通道。 doc: https://nsq.io/components/nsqlookupd.html

port usage
4160 tcp client
4161 http client

2.3. nsqadmin

nsqadmin是一个Web UI,用于实时查看聚合的群集统计信息并执行各种管理任务。

port usage
4171 http client

3. 安装

3.1. 单节点

节点启动

docker run -d --name nsqd -p 4150:4150 -p 4151:4151 \
    kaisawind/nsq:v1.2.0 /nsqd \
    --broadcast-address=192.168.1.168

可配置可视化UI

docker run -d --name nsqadmin -p 4171:4171 kaisawind/nsq:v1.2.0 /nsqadmin --nsqd-http-address=192.168.1.168:4151

3.2. 单节点(包含nsqlookupd)

发现服务

docker run -d --name lookupd -p 4160:4160 -p 4161:4161 kaisawind/nsq:v1.2.0 /nsqlookupd

节点启动

docker run -d --name nsqd -p 4150:4150 -p 4151:4151 \
    kaisawind/nsq:v1.2.0 /nsqd \
    --broadcast-address=192.168.1.168 \
    --lookupd-tcp-address=192.168.1.168:4160

可配置可视化UI

docker run -d --name nsqadmin -p 4171:4171 kaisawind/nsq:v1.2.0 /nsqadmin --lookupd-http-address=192.168.1.168:4161

3.3. 多节点

发现服务

docker run -d --name lookupd -p 4160:4160 -p 4161:4161 kaisawind/nsq:v1.2.0 /nsqlookupd

节点1

docker run -d --name nsqd -p 4150:4150 -p 4151:4151 \
    kaisawind/nsq:v1.2.0 /nsqd \
    --broadcast-address=192.168.1.114 \
    --lookupd-tcp-address=192.168.1.168:4160

节点2

docker run -d --name nsqd -p 4150:4150 -p 4151:4151 \
    kaisawind/nsq:v1.2.0 /nsqd \
    --broadcast-address=192.168.1.154 \
    --lookupd-tcp-address=192.168.1.168:4160

可配置可视化UI

docker run -d --name nsqadmin -p 4171:4171 kaisawind/nsq:v1.2.0 /nsqadmin --lookupd-http-address=192.168.1.168:4161

3.4. 多发现服务

节点1发现服务(192.168.1.114)

docker run -d --name lookupd -p 4160:4160 -p 4161:4161 kaisawind/nsq:v1.2.0 /nsqlookupd

节点2发现服务(192.168.1.154)

docker run -d --name lookupd -p 4160:4160 -p 4161:4161 kaisawind/nsq:v1.2.0 /nsqlookupd

nsq服务

docker run -d --name nsqd -p 4150:4150 -p 4151:4151 \
    kaisawind/nsq:v1.2.0 /nsqd \
    --broadcast-address=192.168.1.168 \
    --lookupd-tcp-address=192.168.1.114:4160 \
    --lookupd-tcp-address=192.168.1.154:4160

可配置可视化UI

docker run -d --name nsqadmin -p 4171:4171 kaisawind/nsq:v1.2.0 /nsqadmin \
    --lookupd-http-address=192.168.1.114:4161 \
    --lookupd-http-address=192.168.1.154:4161

3.5. compose安装

version: '3'
services:
  nsqlookupd:
    image: nsqio/nsq
    command: /nsqlookupd
    ports:
      - "4160"
      - "4161"
  nsqd:
    image: nsqio/nsq
    command: /nsqd --lookupd-tcp-address=nsqlookupd:4160
    depends_on:
      - nsqlookupd
    ports:
      - "4150"
      - "4151"
  nsqadmin:
    image: nsqio/nsq
    command: /nsqadmin --lookupd-http-address=nsqlookupd:4161
    depends_on:
      - nsqlookupd  
    ports:
      - "4171"


辽ICP备2021007608号 | © 2025 | kaisawind

Facebook Twitter GitHub

▄