Компания Netflix объявила (http://techblog.netflix.com/2012/11/hystrix.html) об открытии кода проекта Hystrix, в рамках которого подготовлена библиотека для контроля отзывчивости компонентов в больших распределённых системах и обеспечения оперативного переконфигурирования и изоляции проблем с целью предотвращения каскадных сбоев на раннем этапе выявлении отклонений от нормы. Код библиотеки написан на языке Java и распространяется (https://github.com/Netflix/Hystrix/tree/master/hystrix-core) под лицензией Apache. В дальнейшем планируется опубликовать код интерфейса для мониторинга за работой сервисов, использующих Hystrix.<center><a href="http://netflix.github.com/Hystrix/images/dashboard-example-6... src="http://www.opennet.dev/opennews/pics_base/0_1354275915.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></a></center>
Работа Hystrix основана на управлении взаимодействием между распределёнными системами, предоставляя для каждого сервиса запасной ('fallback') вариант реагирования в случае выявления проблем. Использование библиотеки даёт возможность создать средства защиты для ситуаций, в которых выход из строя или перегрузка некоторых узлов системы, приводит к возрастанию нагрузки на другие узлы, которые, в итоге, не справляются с наплывом запросов, что может привести к остановке работы всего сервиса. Например, к предоставляемому сервисом Netflix API ежедневно отправляется более миллиарда запросов в день, которые в свою очередь, приводят примерно к 6 миллиардам вызовам к внутренним системам. В пиковые моменты интенсивность обращений доходит до 100 тысяч запросов в секунду. Netflix обеспечивает (https://github.com/Netflix/Hystrix/wiki/How-it-Works) обратную связь и позволяет остановить наводнение запросами на уровне начального обработчика API, в случае, когда внутренние обработчики перестают справляться с нагрузкой.
URL: http://techblog.netflix.com/2012/11/hystrix.html
Новость: http://www.opennet.dev/opennews/art.shtml?num=35467