Node.js 服务中的 Hystrix 仪表板?

Posted

技术标签:

【中文标题】Node.js 服务中的 Hystrix 仪表板?【英文标题】:Hystrix Dashboarding in Node.js Services? 【发布时间】:2020-09-15 21:15:57 【问题描述】:

Node.js 中是否有任何功能可以从 Node.js 服务流式传输 hystrix 事件以在仪表板上对其进行监控。

【问题讨论】:

【参考方案1】:

我猜您是一名 Java 开发人员,他现在正在开发 Node 并在 Node 生态系统中寻找与 Hystrix 和 Hystrix Dashboard 等效的解决方案。因此,您正在寻找一个支持监控断路器库。在 Node 世界中没有一个单一的解决方案可以做到这一切,但我敢打赌:

oppossum 用于断路器模式 Prometheus 作为通用监控解决方案 Grafana 作为通用可视化解决方案 opossum-prometheus 将指标从断路器推送到 Prometheus

opossum-prometheus GitHub page上的示例代码

  const CircuitBreaker = require('opossum');
  const PrometheusMetrics = require('opossum-prometheus');

  // create a couple of circuit breakers
  const c1 = new CircuitBreaker(someFunction);
  const c2 = new CircuitBreaker(someOtherfunction);

  // Provide them to the constructor
  const prometheus = new PrometheusMetrics( circuits: [c1, c2] );

  //...
  // Provide other circuit breaker later
  const c3 = new CircuitBreaker(someOtherfunction3);
  prometheus.add([C3]);

  // Write metrics to the console
  console.log(prometheus.metrics);

在 Grafana 中,这将如下所示:

这里是Medium article 更详细地解释了如何设置此堆栈。

【讨论】:

【参考方案2】:

是的,负鼠断路器 + opossum-hystrix

也可以试试负鼠+opossum-prometheus

opossum 是一种广泛使用的、有据可查的断路器实现 还有一些插件可以让你将指标发送到 prometheus 和 hystrix-dashboard 等服务

【讨论】:

以上是关于Node.js 服务中的 Hystrix 仪表板?的主要内容,如果未能解决你的问题,请参考以下文章

Hystrix/Turbine 仪表板上的多个服务?

Hystrix 仪表板总是显示加载屏幕

无法在 Hystrix 仪表板上查看 Hystrix 报告

Spring Boot 中的 Hystrix 仪表板问题

SpringCloud系列之二---Feign实现服务间调用,集成Hystrix熔断器Hystrix-Dashboard仪表盘

feign hystrix加仪表盘