• NATS_06:NATS队列验证与监控


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

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

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

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

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

     $ go run nats-sub.go foo
    

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

     $ 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] 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] Received on [foo]: 'Hello world'
    [#2] Received on [foo]: 'Hello NATS‘
    [#3] Received on [foo]: 'Hello NATS again'
    

    2. 基本的监控

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

     $ 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

      

  • 相关阅读:
    JavaScript 继承机制设计思想
    JavaScript里的原型(prototype), 原型链,constructor属性,继承
    centos7用yum安装node.js v8.x
    sequelize 字段无法操作
    开发CLI命令行
    微信分组群发图文40152,微信分组群发图文invalid group id hint
    微信分组群发45028,微信分组群发has no masssend quota hint
    微信45028错误,微信has no masssend quota hint错误
    微信上传图文消息素材40007,invalid media_id hint
    Spring文件上传出错:java.lang.ClassCastException: org.apache.catalina.connector.Request
  • 原文地址:https://www.cnblogs.com/liang1101/p/6652830.html
Copyright © 2020-2023  润新知