java监控rabbitMq服务状态,SpringCloud-Turbine【RabbitMQ服务监控】

前面我们介绍了通过turbine直接聚合多个服务的监控信息,实现了服务的监控,但是这种方式有个不太好的地方就是turbine和服务的耦合性太强了,针对这个问题,我们可以将服务的监控消息发送到RabbitMQ中,然后turbine中RabbitMQ中获取获取监控消息,这样就实现类服务和turbine的解耦。

911f77ef195c

我们通过案例来演示下如何实现该效果

一、启动RabbitMQ服务

显然我们需要安装启动一个RabbitMQ服务

911f77ef195c

在这里插入图片描述

二、创建consumer服务

创建一个consumer服务,同时要将dashboard的监控信息发送到RabbitMQ服务中。

1.创建项目

911f77ef195c

在这里插入图片描述

2.添加依赖

此处的核心依赖如下,完整依赖参考git完整代码

org.springframework.boot

spring-boot-starter-actuator

org.springframework.cloud

spring-cloud-starter-hystrix

1.3.2.RELEASE

org.springframework.cloud

spring-cloud-starter-hystrix-dashboard

org.springframework.cloud

spring-cloud-netflix-hystrix-stream

org.springframework.cloud

spring-cloud-starter-stream-rabbit

3.修改配置

添加对RabbitMQ的配置信息

spring.application.name=shop-product-consumer-hystrix-dashboard

server.port=9090

#设置服务注册中心地址,指向另一个注册中心

eureka.client.serviceUrl.defaultZone=http://dpb:123456@eureka1:8761/eureka/,http://dpb:123456@eureka2:8761/eureka/

#Feign 默认是不开启 Hystrix 的。默认为:false

feign.hystrix.enabled=true

spring.rabbitmq.host=192.168.88.150

spring.rabbitmq.port=5672

spring.rabbitmq.username=dpb

spring.rabbitmq.password=123

spring.rabbitmq.virtualHost=/

4.修改启动类

启动服务,并访问测试

@EnableFeignClients

@EnableDiscoveryClient

@SpringBootApplication

@EnableHystrix

@EnableHystrixDashboard

public class SpringcloudFeignProdcutConsumerApplication {

public static void main(String[] args) {

SpringApplication.run(SpringcloudFeignProdcutConsumerApplication.class, args);

}

}

911f77ef195c

在这里插入图片描述

911f77ef195c

在这里插入图片描述

同时注意RabbitMQ的控制台

911f77ef195c

在这里插入图片描述

能够看到是有变化的

三、创建turbine服务

1.创建项目

911f77ef195c

在这里插入图片描述

2.添加依赖

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-test

test

org.springframework.cloud

spring-cloud-starter-config

org.springframework.cloud

spring-cloud-starter-turbine-stream

org.springframework.cloud

spring-cloud-starter-stream-rabbit

3.修改配置

spring.application.name=shop-product-consumer-turbine

server.port=1002

#设置服务注册中心地址,指向另一个注册中心

eureka.client.serviceUrl.defaultZone=http://dpb:123456@eureka1:8761/eureka/,http://dpb:123456@eureka2:8761/eureka/

spring.rabbitmq.host=192.168.88.150

spring.rabbitmq.port=5672

spring.rabbitmq.username=dpb

spring.rabbitmq.password=123

spring.rabbitmq.virtualHost=/

4.启动类

注意注解

@SpringBootApplication

@EnableTurbineStream

public class SpringcloudFeignProdcutConsumerApplication {

public static void main(String[] args) {

SpringApplication.run(SpringcloudFeignProdcutConsumerApplication.class, args);

}

}

启动服务

911f77ef195c

在这里插入图片描述

说明从RabbitMQ中获取到了监控数据

四、创建dashboard可视服务

可视化的服务可以用之前创建的

911f77ef195c

在这里插入图片描述

即可

911f77ef195c

在这里插入图片描述

911f77ef195c

在这里插入图片描述

看到了consumer的监控数据,案例成功!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/354906.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jpa 查询 列表_终极JPA查询和技巧列表–第1部分

jpa 查询 列表我们可以在Internet上找到一些JPA“如何做”,在本博客的此处,教您如何使用JPA执行多项任务。 通常,我看到有人问有关使用JPA进行查询的问题。 通常,为了回答此类问题,提供了几个链接以尝试找到该问题的解…

windows下php swoole扩展,Windows 下安装 swoole 图文教程(php)

Windows 下安装 swoole 具体步骤:Swoole,原本不支持在Windows下安装的,所以我们要安装Cygwin来使用。在安装Cygwin下遇到了很多坑,百度经验上的文档不是很全,所以我把自己安装Cygwin和Swoole写下来相当于对自己的沉淀吧。首先准备…

新CalendarFX视图:MonthGridView!

我和我的团队最近开始为CalendarFX创建新视图,其最初目标是在垂直列中显示整年。 该视图的名称是MonthGridView。 像往常一样,编码时目标略有变化。 该视图现在可以显示任意数量的月份,并且可以在前面或后面添加额外的月份。 现在&#xff0c…

php如何和c进行数据交换,PHP与 后台c交换数据 | 学步园

为什么要用json跟XML相比,JSON的优势在于格式简洁短小,特别是在处理大量复杂数据的时候,这个优势便显得非常突出。从各浏览器的支持来看,JSON解决了因不同浏览器对XML DOM解析方式不同而引起的问题。目前,JSON已经成为…

硒测试的干净架构

在这篇博客文章中,我想介绍一种具有最佳设计模式的Selenium测试的简洁架构:页面对象,页面元素(通常称为HTML包装器)和自行开发的非常小巧的框架。 该体系结构不限于示例中使用的Java,也可以以任何其他语言应…

ThinkPHP5 封装邮件发送服务(可发附件)

1、Composer 安装 phpmailer 1composer require phpmailer/phpmailer2、ThinkPHP 中封装邮件服务类 我把它封装在扩展目录 extend/Mail.php 文件里,内容如下: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748…

密码学笔记——eval(function(p,a,c,k,e,d) 加密破解

密码学笔记——eval(function(p,a,c,k,e,d) 的加密破解 例题: 小明某天在看js的时候,突然看到了这么一段代码,发现怎么也理不出代码逻辑,你能帮帮他吗? 格式:SimCTF{} eval(function(p,a,c,k,e,d){efunctio…

Windows负载机JVM 远程监控Linux服务器下tomcat

基本是跟着网上的操作进行的,除了遇到一个Local host name unknown的问题: 一、Linux服务器操作部分 服务器地址:10.64.111.68 首先配置JMX: 1.找到jdk目录 [rootC68 demo]# echo $JAVA_HOME /root/demo/jdk1.8.0_60 2. cd 到/roo…

二维码支付原理分析及安全性的探究

“二维码支付”安全么? 1 引言 随时支付宝和微信的线下不断推广,目前使用手机进行二维码支付已经逐渐成为一种时尚了。 但是大家有没有思考过:这种便捷的支付方式到底安不安全呢?今天我们就针对这个话题来进行一些探讨吧。 2 …

混合高斯模型(Mixtures of Gaussians)和EM算法

混合高斯模型(Mixtures of Gaussians)和EM算法 这篇讨论使用期望最大化算法(Expectation-Maximization)来进行密度估计(density estimation)。 与k-means一样,给定的训练样本是,我们…

wordpress archive.php,wordpress分类目录模板(archive.php)制作

本课程视频是VIP会员课程,学习请进入VIP学习区。分类目录模板通常包括二种,一种是普通文章列表目录,一种是产品图片展示列表目录。文章列表目录是通过将分类下的文章标题通过无序列表的形式展示出来。如下图。产品图片列表目录是将产品的第一…

linux c统计进程网络读写,linux网络分析、性能分析、文本格式化、文件读写操作之利器(mtr、top、jq、sponge)...

好的工具能够让我们工作更加高效,结合工作中的情况,今天分享下linux下比较好用的几个工具。网络分析工具mtrmtr是网络链路检测判断问题非常好用的工具,集成了tracert和ping这两个命令的功能,动态的输出检测结果。mtr 默认发送icmp…

C++入门经典-例2.13-左移运算

1&#xff1a;代码如下&#xff1a; // 2.13.cpp : 定义控制台应用程序的入口点。 //#include "stdafx.h" #include<iostream> using namespace std; void main() {int a0x40,b;ba<<1;//左移1位cout << b << endl;//以十进制输出 } View Cod…

jwebsocket传图片_Java中带有JWebSocket的WebServerSocket

jwebsocket传图片首先&#xff0c;转到http://jwebsocket.org/下载2个软件包Server and Client。 如果要查看源代码&#xff0c;请下载源代码包。 服务器 解压缩服务器程序包。 转到“ conf”文件夹 选择“ jWebSocket.xml”文件打开 编辑“ jWebSocket.xml”文件&#xff…

linux xargs命令,xargs 命令教程

xargs是 Unix 系统的一个很有用的命令&#xff0c;但是常常被忽视&#xff0c;很多人不了解它的用法。本文介绍如何使用这个命令。一、标准输入与管道命令Unix 命令都带有参数&#xff0c;有些命令可以接受"标准输入"(stdin)作为参数。$ cat /etc/passwd | grep root…

java 职责链模式_Java中的责任链模式

java 职责链模式当应有几个处理器来执行某项操作并为这些处理器定义特定顺序时&#xff0c;就需要采用责任链设计模式。 在运行时处理器顺序的可变性也很重要。模式的UML表示如下&#xff1a; 处理程序定义处理器对象的一般结构。 这里的“ HandleRequest”是抽象处理器方法。 …

ArcMap 导入Excel坐标数据

1 准备Excel坐标数据集合 2 ArcMap加入Excel数据 将excel文件放入arcmap工作区的物理路径下在工作区的根图层上点键&#xff0c;选择添加数据&#xff0c;找到excel文件并选择相应的工作薄完成后&#xff0c;excel工作薄即导入工作区左边的图层下。3 ArcMap加入图层文件 在S…

linux6如何分区,CentOS6.9安装 硬盘分区方案与分区步骤

Linux默认可分为3个分区&#xff0c;分别是boot分区、swap分区和根分区&#xff1a;1、swap&#xff1a;交换分区&#xff0c;实现虚拟内存&#xff0c;建议大小是物理内存的1~2倍。2、/boot&#xff1a;用来存放与系统启动有关的程序&#xff0c;比如启动引导装载程序等&#…

实施自定义JMeter采样器

随着我们采用不同的体系结构和实现方式&#xff0c;对通用压力测试工具的需求不断增长。 Apache Jmeter是进行负载测试时最著名的工具之一。 它支持许多协议&#xff0c;例如ftp http tcp&#xff0c;并且可以轻松地用于分布式测试。 Jmeter还为您提供了一种创建自定义采样器…

linux grep命令 例子,14个grep命令使用例子

所有的类linux系统都会提供一个名为grep(global regular expression print&#xff0c;全局正则表达式输出)的搜索工具。grep命令在对一个或多个文件的内容进行基于模式的搜索的情况下是非常有用的。模式可以是单个字符、多个字符、单个单词、或者是一个句子。当命令匹配到执行…