0
Planned

Добавить шаблон проектирования Cirquit Breaker

Alexander Melnichuk 10 months ago updated by Alexander Shvets 10 months ago 3

В работе столкнулся с проблемой, которая решается этим шаблоном: если мы часто-часто обращаемся к удалённому сервису, а он внезапно отказывает, и мы в принципе можем продолжать работу и без него, то нужно сократить поток запросов к этому сервису до одного за несколько минут, пока сервис не станет доступен снова. Если этого не сделать, то каждое действие, которое раньше пролетало мгновенно, теперь будет занимать десятки секунд (время таймаута подключения к отказавшему удалённому сервису).
Подробное описание есть, например, тут:
https://smarly.net/dependency-injection-in-net/diy-di/interception/implementing-cross-cutting-concerns
http://blog.rogatnev.net/2016/05/retry-vs-circuit-breaker.html

New pattern

Answer

+1
Answer
Planned

Спасибо, добавил в планы.

+1
Answer
Planned

Спасибо, добавил в планы.

+1

Кстати, пока русскоязычная терминология не устоялась, можно попробовать использовать слово "предохранитель"  как вариант перевода "circuit breaker". 
Буквальный перевод "размыкатель цепи" не очень ассоциируется с выключателем-автоматом, по которому назван шаблон.

+1

Хороший поинт, спасибо.