ãµãŒããããã¬ãŒã«ãŒã®ä»çµã¿ â äžèª¿ãªé éãµãŒãã¹ãžã®åŒã³åºããæ¢ãã
ãéãã»æ¢ããã»å°ã詊ããã®3ã€ã®ç¶æ
ãŸãã¯ãé éèŠç©ããã®ãµãŒãã¹ãå¿çããªãå Žé¢ãèŠã
é販ã¢ããªãé éãµãŒãã¹ãžéæãåãåããããšããŸããçžæãäžèª¿ãªã®ã«äœåºŠãåŸ ã¡ç¶ãããšãæ¥ç¶ãåŠçã®æ ãåãŸããã»ãã®æäœãŸã§åœ±é¿ãåããããšããããŸãã
ãµãŒããããã¬ãŒã«ãŒã¯ã倱æãèšå®ããæ¡ä»¶ã«éãããããã®çžæãžã®æ°ããåŒã³åºããäžæçã«æ¢ããä»çµã¿ã§ããçžæã®æ éãä¿®çããæ©èœã§ã¯ãããŸããã
| ç¶æ | é éãµãŒãã¹ãžã®åŒã³åºã | ã¢ããªã§æ±ºããããš |
|---|---|---|
| Closed | éã | æåã»å€±æãªã©ãèšé²ãã |
| Open | 察象ãžéããæåŠ | å©çšã§ããªãæšãªã©ãè¿ã |
| Half-Open | å°æ°ã ã詊ã | 埩垰ã»åé®æã®æ¡ä»¶ã§å€æãã |
Closedã¯åè·¯ãéããŠéããç¶æ ãOpenã¯åè·¯ãéããŠéããªãç¶æ ã§ãããOpenãªãå©çšè ãžéæŸããšèªããšéã«ãªãã®ã§ããŸãåŒã³åºããéããã§èŠããŸãããã
åŸ æ©æéãšã¿ã€ã ã¢ãŠããåãã
次ã¯èšå®ãçè§£ããããã®äŸã§ããæšå¥šå€ãæ¢å®å€ã§ã¯ãããŸããã
- çŽè¿10åãéèšããæäœ10åãããããŸã§å€±æçã§é®æããªãã
- ãã®10åã®ãã¡5å倱æãªã50%ããããå€ã50%ã«èšå®ãããšã倱æçã50%以äžã§Openã«ããã
- Openã§30ç§åŸ ã£ãããšãå°æ°ã®è©Šè¡ã§åŸ©åž°ã倿ããã
Resilience4jã§ã¯ããã®ãããªæå°ä»¶æ°ããããå€ãèšå®ã§ããŸãã30ç§ã¯é®æåŸã®åŸ æ©ã®äŸã§ãéä¿¡1åã®ã¿ã€ã ã¢ãŠããšã¯å¥ã§ããåŸ æ©åŸã«èªåé·ç§»ããããæ¬¡ã®åŒã³åºãã§é·ç§»ããããªã©ãèšå®ã«ãããŸãã
倱æãšããŠæ°ããäŸå€ãé ãåŒã³åºããéèšçªãHalf-Openã§éãä»¶æ°ã確èªããŠãã ããããã¹ãŠã®ãšã©ãŒãåãæ±ãã«ããå¿ èŠã¯ãããŸããã
å©çšè ãžäœãè¿ããã¯ãå¥ã«èšèšãã
éæã調ã¹ãããªãå Žåã«ã¯ããçŸåšãé éã®èŠç©ããã確èªã§ããŸããããšäŒãããªã©ã®å¿çãæ±ºããŸããå€ãæ å ±ã䜿ã£ãŠããç»é¢ãªãããã®æ¡ä»¶ãæç€ºããããã§ãã£ãã·ã¥ãäœ¿ãæ¹æ³ããããŸãã
泚æã決æžãçµããŠããªãã®ã«ãæåããããã«è¿ããŠã¯ãããŸããã 鮿æã®ä»£æ¿å¿çãå詊è¡ã®æ¡å ãæ åœè ãžã®éç¥ã¯ãæ¥åã«åãããèšèšããŸãã
ããå°ã詳ããïŒãªãã©ã€ãšè³æºã®åé¢
ãªãã©ã€ã¯ããäžåºŠè©ŠãããšããµãŒããããã¬ãŒã«ãŒã¯åŒã³åºããéãã鮿ãããã®å€æã§ããéããé çªã§ãéèšããå€±ææ°ãå€ãããŸããOpenã«ããæåŠãäœåºŠããªãã©ã€ãããäžæçãªé害ã«åæ°ã»æéãéå®ããŠãã ãããæžã蟌ã¿ã«ã¯éè€åŠçãžã®å¯Ÿçãå¿ èŠã§ãã
ãã«ã¯ãããã¯ãåŒã³åºãå ããšã«æ¥ç¶ããŒã«ãªã©ã®è³æºãåããè£å®çãªæ¹æ³ã§ããäž¡æ¹ã䜿ã£ãŠããç¡æ¡ä»¶ã«é害é£éãé²ãä¿èšŒã«ã¯ãªããŸãããOpenãžã®é·ç§»ãå®éã«å€±æããåŒã³åºãã代æ¿å¿çã®çºçãç£èŠããåŒã³åºãå ãéä¿¡çµè·¯ã調æ»ããŸãã
èŠãæ¹ã𿬡ã®äžæ©
ããµãŒããããã¬ãŒã«ãŒãã£ãŠåºãŠããããäžèª¿ãªçžæãžåŒã³åºããéãç¶ããªãããã®é®æä¿ããšæãã°ã ãããOKïŒ
ã¬ãŒããªããããšã®éãããã°åéã§æ®ãç¶æ é·ç§»ã確èªã§ããŸãã
åèè³æ
- Microsoft Learn: Circuit Breaker pattern â åºæ¬3ç¶æ ã鮿ã»åŸ©åž°ã»ãã©ãŒã«ããã¯ã»ç£èŠãæ éãã®ãã®ã®ä¿®çãä¿èšŒããªãã
- Resilience4j: CircuitBreaker â æäœåŒã³åºãæ°ã倱æçã®ãããå€ä»¥äžãHalf-Openæ¡ä»¶ãåŸ æ©åŸã®èªå/次ã®åŒã³åºãã§ã®é·ç§»ã
- Microsoft Learn: Retry pattern â äžæçé害ã®å詊è¡ãåæ°ã»ééã»åªçæ§ãéè€åŠçãšãªãã©ã€å€éåã®æ³šæã
- Microsoft Learn: Bulkhead pattern â äŸåå ããšã®æ¥ç¶/ã¹ã¬ããçã®è³æºåé¢ãšèé害ãã¿ãŒã³ã®äœµçšã
èšæ£å±¥æŽ
- 2026-10-05ïŒé®æã»åŸ©åž°æ¡ä»¶ãšãªãã©ã€ã®é¢ä¿ãæç¢ºåãããµãŒãã¹ã¡ãã·ã¥ãžã®ç§»è¡ã®äžè¬åãåé€ã