From de05ba5cc9a6a8642455dcb986f393eb6c673232 Mon Sep 17 00:00:00 2001 From: Edward Date: Mon, 11 May 2020 14:29:29 +0800 Subject: [PATCH] add image for breaker --- gomore/06_circuit_breaker/README.md | 4 +++- images/breaker-state-machine-flow.png | Bin 0 -> 14209 bytes 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 images/breaker-state-machine-flow.png diff --git a/gomore/06_circuit_breaker/README.md b/gomore/06_circuit_breaker/README.md index 52b9e53..ecb692c 100644 --- a/gomore/06_circuit_breaker/README.md +++ b/gomore/06_circuit_breaker/README.md @@ -22,4 +22,6 @@ Circuit Breaker Pattern 也叫断路器模式,断路器设计模式是故障 上下文用于传递参数. -参考: +参考: + + diff --git a/images/breaker-state-machine-flow.png b/images/breaker-state-machine-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..86057b5905f09bad0806fbb756119cf3052e0059 GIT binary patch literal 14209 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 NR6&}GmGb7H{|63%aDD&) literal 0 HcmV?d00001