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
[] // ::21.495787 [INF] Starting nats-server version 0.9.
[] // ::21.495900 [INF] Starting http monitor on 0.0.0.0:
[] // ::21.496043 [INF] Listening for client connections on 0.0.0.0:
[] // ::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

NATS_06:NATS队列验证与监控的更多相关文章
- NATS_07:NATS之top工具监控以及测量调优工具
概述 你可以使用 nats-top 来实现类似于 linux 中 top 命令的实时监控 nats 服务: 可以使用 nats 提供的工具来进行针对性的调优. 安装nats-top $ go get ...
- 【MQ中间件】RabbitMQ -- RabbitMQ死信队列及内存监控(4)
1.RabbitMQ TTL及死信队列 1.1.TTL概述 过期时间TTL表示可以对消息设置预期的时间,在这个时间内都可以被消费者接收获取:过了之后消息将自动被删除.RabbitMQ可以对消息和队列设 ...
- NATS_05:NATS服务器部署
1.NATS安装前的普及 NATS 的服务器是使用 GoLang 语言开发的,其可执行文件的名字为:gnatsd,表示:Go NATS Daemon.NATS服务器是一个开源软件,基于 MIT 许可证 ...
- NATS_09:NATS常见问题说明
1. Request() 和 Publish() 之间的不同 Publish()发送一条消息到 gnatsd 服务,是使用它的地址作为一个 主题(subject),而 gnatsd 交付消息给所有注册 ...
- zabbix监控服务
1.模板的重要 1.手动添加监控比较麻烦,监控项 -> 图形 -> 触发器. 问题: 1.例如: 100台服务器需要检查81端口 2.例如: 100台服务器81改成82 解决: 使用模 ...
- LoadRunner监控数据库服务器
使用LoadRunner的数据库服务器资源监控器,可以在场景或会话步骤运行期间监控DB2.Oracle.SQL Server或Sybase数据库的资源使用率.在场景或会话步骤运行期间,使用这些监控器可 ...
- Install and Run NATS Streaming Server
NATS是一个开源的.轻量级的.高性能的分布式消息通信系统,使用的公司有百度.西门子.VMware.HTC和爱立信.NATS Streaming是以NATS为动力的数据流系统,是用go语言写的,NAT ...
- springboot(十九):使用Spring Boot Actuator监控应用
微服务的特点决定了功能模块的部署是分布式的,大部分功能模块都是运行在不同的机器上,彼此通过服务调用进行交互,前后台的业务流会经过很多个微服务的处理和传递,出现了异常如何快速定位是哪个环节出现了问题? ...
- 容器化的Apache服务并监控
1:基础容器编译部署apache 1.1:pull一个ubuntu 16.04的镜像 sudo docker pull ubuntu:16.04 1.2:运行容器 sudo docker run -d ...
随机推荐
- Linux里的2>&1的理解
转载自:https://blog.csdn.net/ggxiaobai/article/details/53507530 我们在Linux下经常会碰到nohup command>/dev/nul ...
- WebGL七点二
与上一节相比这一节相当做了些整合和整理,目的是提高了读写效率和减少代码量,就是做了优化.这里我们只需要在顶点着色器中定义一个用于从js传递参数的变量u_MvcMatrix一看就知道是uniform变量 ...
- java集合ArrayList
基于jdk_1.8.0 关于List,主要是有序的可重复的数据结构.jdk主要实现类有ArrayList(底层使用数组).LinkedList(底层使用双向链表) ArrayList: (一)继承关系 ...
- 团队作业4——第一次项目冲刺(Alpha版本)2017.11.18
1.当天站立式会议照片 本次会议在5号公寓312召开,本次会议内容:①:熟悉每个人想做的模块.②:根据老师的要求将项目划分成一系列小任务.③:在上次会议内容完成的基础上增加新的任务. 2.每个人的工作 ...
- 团队作业4--第一项目冲刺3(Aplpha)
1.会议 第三次会议: ①:总结前两天出现的问题 ②:总结前端学习的心得 ③:安排后两天任务 2.任务安排 3.任务分解图 4.燃尽图 5.适当的项目程序/模块的最新(运行)截图 6.心得 组员之间要 ...
- 一个C++bug引入的许多知识
一.前言 假设我们有一个Car类,用了表示一个车,它有id,名字,牌照等许多东西,还有一个表示车的部件CarPart. 但出于某方面的考虑,我们不打算在产生car这个对象的时候,就生产出这个车,你可以 ...
- 【问底】王帅:深入PHP内核(一)——弱类型变量原理探究
来源:CSDN http://www.csdn.net/article/2014-09-15/2821685-exploring-of-the-php 作者:王帅 摘要:PHP作为一门简单而强大 ...
- JS 日期 自动补齐 “2017-11-22 14:43”
var myDate = new Date(); var myN = myDate.getFullYear(); var myY = myDate.getMonth(); var myR = myDa ...
- js遍历数组和遍历对象
可以用for in来遍历对象,具体内容如下: <script type="text/javascript"> var objs = { ...
- Springboot 和 Mybatis集成开发
Springboot 和 Mybatis集成开发 本项目使用的环境: 开发工具:Intellij IDEA 2017.1.3 jdk:1.7.0_79 maven:3.3.9 额外功能 PageHel ...