предисловие
В этой статье используется облако Spring. Это статья 2.1.8RELEASE, version=Greenwich.SR3.
Эта статья основана на реализации первых двух статей eureka-server, eureka-client, eureka-ribbon и eureka-feign. Ссылаться на
концепция
Hystrix Dashboard — это панель управления, предоставляемая Hystrix, которая может просматривать данные мониторинга Hystrix. Hystrix обеспечивает мониторинг данных практически в режиме реального времени.Hystrix будет записывать всю информацию о выполнении HystrixCommand в режиме реального времени и кумулятивно, включая количество запросов, выполняемых в секунду, количество успешных и количество сбоев.
Создайте проект Hystrix Dashboard
1.1 Создайте загрузочный проект sping: hysteric-dashboard
1.2 Добавьте зависимости, связанные с pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
</dependency>
Приложение 1.3 добавляет информацию о конфигурации
spring:
application:
name: hystrix-dashboard
server:
port: 8500
eureka:
instance:
hostname: localhost
lease-renewal-interval-in-seconds: 5
lease-expiration-duration-in-seconds: 10
client:
service-url:
defaultZone: http://eureka1.server.com:8701/eureka/,http://eureka2.server.com:8702/eureka/,http://eureka3.server.com:8703/eureka/
1.4 Добавьте аннотации к классу запуска HystrixDashboardApplication
package spring.cloud.demo.hystrixdashboard;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard;
@EnableHystrixDashboard
@EnableDiscoveryClient
@SpringBootApplication
public class HystrixDashboardApplication {
public static void main(String[] args) {
SpringApplication.run(HystrixDashboardApplication.class, args);
}
}
@EnableHystrixDashboard: включение конфигурации автоматического выключателя Hystrix Dashboard, связанной с канбаном.
1.5 Запустите службу hystrix-dashboard
Откройте браузер и введите http://localhost:8500/hystrix, чтобы отобразить результат следующим образом:
Поле ввода URL: представляет потребителя услуг, который нужно отслеживать.
Single Hystrix App: https://hystrix-app:port/actuator/hystrix.stream: для отслеживания формата URL-адреса пути.
1.6 Служба мониторинга ленты
1.6.1 eureka-ribbon увеличивает конфигурацию Hystrix
package spring.cloud.demo.eurekaribbon.config;
import com.netflix.hystrix.contrib.metrics.eventstream.HystrixMetricsStreamServlet;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @auther: maomao
* @DateT: 2019-09-17
*/
@Configuration
public class HystrixConfig {
@Bean
public ServletRegistrationBean getServlet() {
HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet();
ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet);
registrationBean.setLoadOnStartup(1);
registrationBean.addUrlMappings("/hystrix.stream");
registrationBean.setName("HystrixMetricsStreamServlet");
return registrationBean;
}
}
Запустите службы eureka-client и eureka-ribbon. Затем введите в поле URL-адрес панели управления приборной панели hystrix:
Нажав на Monitor Stream, вы увидите:
Невозможно подключиться к Command Metric Stream Причина проблемы: поскольку мы открываем контролируемый поток автоматического выключателя. Путь Hystrix Stream http://localhost:8901/hystrix.stream не является путем по умолчанию для весенней загрузки или путем по умолчанию для hystrix. , все нужно добавить Hystrixconfig Чтобы сформулировать сервлет потока индикатора автоматического выключателя.
Первая успешная страница запуска также может отображать загрузку, что означает, что доступ к сервису, который мы хотим отслеживать, еще не был выполнен, это означает, что мы можем увидеть данные индикатора, запросив доступ к сервису несколько раз.
Таким же образом я могу установить конфигурацию eureka-feign для просмотра.
Суммировать
В этой статье просто создается платформа мониторинга данных Hystrix Dashborad.
В настоящее время Hystrix прекратил разработку и находится на этапе обслуживания.Hystrix заявил на Github, что нам рекомендуется использовать Resilience4J. Простота и практичность Resilience4J будут обновлены в будущем.
кодовый адрес
Каталог «Spring Cloud 2.X Xiaobai Tutorial»
- Руководство по реестру службы Eureka Server версии Spring Cloud 2.x
- Spring cloud 2.x версия Eureka Учебное пособие по поставщику клиентских услуг
- Руководство по обнаружению ленточных сервисов версии Spring Cloud 2.x (включая встроенный механизм предохранителей Hystrix)
- Версия Spring Cloud 2.x Руководство по обнаружению сервисов Feign (включая встроенный автоматический выключатель Hystrix)
- Руководство по шлюзу маршрутизации Zuul версии Spring Cloud 2.x
- Учебное пособие по распределенному центру конфигурации конфигурации Spring Cloud 2.x версии
- Руководство по автоматическому выключателю Hystrix Dashboard версии Spring Cloud 2.x
Пожалуйста, укажите источник,
- Контакт: 4272231@163.com