熔断器
熔断器,俗称电闸。生活中,当用电电流过载时,直接熔断,避免火灾等事故的发生
软件开发中,也需要引入熔断器,避免服务器过载
circuitbreaker
Github 上 go 语言的熔断器实现也有不少, star 数比较多的有:
gobreaker star 数虽然多些,但是看过实现,比 circuitbreaker 差不少
另外 cockroachdb 也使用了 circuitbreaker 包,因此质量是可以保证的
circuitbreaker 默认提供了 3 种熔断器:
类型 | 名称 | 说明 |
---|---|---|
ThresholdBreaker | 限定失败熔断器 | 指定时间窗口内,失败次数达到阈值,触发熔断 (默认时间窗口为 10s) |
Conse |