• NATS_06:NATS队列验证与监控


    1. NATS 之 Queueing(队列)模式验证

      主要以下讲的都是基于 NATS 服务已经开启了(没有开启的请运行:gnatsd 启动);还有请注意所有运行的 go 文件都是在 $GOPATH/src/github.com/nats-io/go-nats/examples/ 下

      1. 启动注册一个队列q,需要申明 主题 和 名称

    1
    $ go run nats-qsub.go foo my-queue

      2. 运行一个客户端c,需要注册上一个队列注册的主题,用于从队列中实时读取数据

    1
    $ go run nats-sub.go foo

      3. 运行一个发送消息端p,也需要注册队列注册的主题,用于向队列写入数据

    1
    2
    3
    $ go run nats-pub.go foo "hello world"
    $ go run nats-pub.go foo "hello NATS"
    $ go run nats-pub.go foo "hello NATS again"

       4. 消息终端展示

      队列q 接收的消息输出

    1
    2
    3
    [#1] Received on [foo] Queue[my-queue] Pid[1248]: 'Hello world'
    [#2] Received on [foo] Queue[my-queue] Pid[1248]: 'Hello NATS'
    [#3] Received on [foo] Queue[my-queue] Pid[1248]: 'Hello NATS again'

       客户端c 接收的消息输出

    1
    2
    3
    [#1] Received on [foo]: 'Hello world'
    [#2] Received on [foo]: 'Hello NATS‘
    [#3] Received on [foo]: 'Hello NATS again'

    2. 基本的监控

      启动 NATS 服务以及激活监控端口,例如

    1
    $ gnatsd -m 8222

      查证 NATS 服务启动对应的 http 端口 4222 以及监控端口 8222

    [1366] 2017/04/01 17:58:21.495787 [INF] Starting nats-server version 0.9.6
    [1366] 2017/04/01 17:58:21.495900 [INF] Starting http monitor on 0.0.0.0:8222
    [1366] 2017/04/01 17:58:21.496043 [INF] Listening for client connections on 0.0.0.0:4222
    [1366] 2017/04/01 17:58:21.496083 [INF] Server is ready

      看到以上信息打印出来证明启动成功,我们可以在浏览器中输入四个个地址用来查看有关监控不同点点情况:

      1. http://localhost:8222/varz   用来监控NATS整体服务情况

      2. http://localhost:8222/connz  用来监控NATS-Client详情,有几个客户端就有几个详情,默认最多有1024个连接且采用分页的形式,可以通过limit 和 offset 来进行分页显示,形如:

       http://localhost:8222/connz?limit=1&offset=1 (即按照分页的形式显示第一页的第一条信息)

         http://localhost:8222/connz?limt=1&offset=1&subs=1 (即显示客户端第一个连接信息即subs=1的第一页的第一条信息)

       http://localhost:8222/varz                      http://localhost:8222/connz

            

      3. http://localhost:8222/subscriptionsz  可以查看具体的订阅者信息

      4. http://localhost:8222/routez      可以查看集群中当前活跃的路由信息,它不支持分页机制,但是它支持 订阅者 序号参数,即可以这样查询:

       http://localhost:8222/routez?subs=1

       http://localhost:8222/subscriptionsz                     

         

      http://localhost:8222/routez

      

  • 相关阅读:
    编写规范
    Springboot自定义starter
    H5 新增标签
    vagrant virtualbox docker
    h5 sessionStorage localStorage
    mysql 出现You can't specify target table for update in FROM clause错误的解决方法
    linux下利用nohup后台运行jar文件包程序
    JVM内存分配 Xms128m Xmx512m XX:PermSize=128m XX:MaxPermSize=512m
    Spring Boot:内置tomcat启动和外部tomcat部署总结
    Mysql DELETE 不能使用别名? 是我不会用!
  • 原文地址:https://www.cnblogs.com/wuyuan2011woaini/p/15964053.html
Copyright © 2020-2023  润新知