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 将指标从断路器推送到 Prometheusopossum-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 仪表板?的主要内容,如果未能解决你的问题,请参考以下文章
SpringCloud系列之二---Feign实现服务间调用,集成Hystrix熔断器Hystrix-Dashboard仪表盘