全站数据
8 4 2 0 5 8 1

Circuitpanelboards是什么意思

文科生读财经 | 简单学习,快乐成才!         
问题更新日期:2024-04-25 14:44:24

问题描述

Circuitpanelboards是什么意思求高手给解答
精选答案
最佳答案

Circuit Breaker翻译过来叫做断路器,新建的小区里家家都有,就是这个东西:熟悉吧,断路器的作用嘛,如果你在家里从来没用过或者关注过这个东西,我来讲讲:当线路短路、或是过载电路会自动切断电源。

它跟另外有个叫做熔断器的有类似之处。熔断器英文名叫Fuse,这个样子:断路器和熔断器相比较,断路器在短路之后还能够恢复,合上闸之后继续用;熔断器就不是了,断了之后就需要更换电阻丝,重新接上线之后才能使用。上面说了这两个设备,而且配了图,目的是为了引出本节的主题:Circuit Breaker Pattern,断路器模式。稍穿插一些情怀层面的东西:OO编程里的类讲究把自然界的物体类化为Class,Class有它自己的属性和行为,好比苹果是红的,苹果可以吃;在云化的软件体系结构里,系统里的各个模块更是接近于真实世界的功能组件,真实世界里的各个部门、或是各个组成部分往往都会直接映射为云化系统里的某个容器。码农所沉浸的世界里,不仅仅是逻辑和代码,反而更是真实的世界,所以在讲断路器模式之前,我们讲讲电路里断路器是有必要的。进入正题,在分布式的软件体系结构中,一个服务会因各种问题而不能正常工作,比如服务器负荷太大,或是底层数据资源池不可用、或者网络短时期不稳定、或服务器损坏等等。这个服务有可能是短暂性的工作不正常,也有可能是彻底坏了。问题一:对于短暂性的工作不正常,如果服务的调用者没有一点仁义之心,卯足了劲不间断调用,那么这个短暂性的不正常可能会因为调用者的关系而很难恢复。问题二:对于彻底性的损坏,对调用者而言,它没必要反复尝试,看看服务工作正常了没有,这对于调用者而言,是无谓的性能损耗,且于事无补。断路器模式就是为了解决这两个问题而生的。一个服务有三种状态,分别是open、closed和half-open。open表示闸开,这时服务不工作,closed表示合闸,这时服务工作,half-open表示服务短暂性不工作、等待恢复。这三种状态之间的转换关系如下图(图中Trip是跳闸的意思):当服务太慢时,服务由closed状态切换到Half Open,直至服务恢复正常;当服务损坏,服务转成open状态。具体到断路器模式的实现方式上:把现有服务(supplier)封装成一个circuit breaker,客户端的情况转由circuit breaker来处理。Circuit Breaker检测timeout情况,根据timeout的次数将服务自动切换为half-open或close状态,看时序图:在Akka和Netflix/Hystrix中封装了Circuit Breaker Pattern的实现。本文参考了:1)Reactive Microservices Architecture - O'Reilly Media2)Circuit breaker design pattern(WIKI)