Отказоустойчивость — свойство технической системы сохранять свою работоспособность после отказа одного или нескольких составных компонентов. Отказоустойчивость определяется количеством любых последовательных единичных отказов компонентов, после которого сохраняется работоспособность системы в целом. Базовый уровень отказоустойчивости подразумевает защиту от отказа одного любого элемента — исключение единой точки отказа. Основной способ повышения отказоустойчивости — избыточность. Наиболее эффективный метод избыточности — аппаратная избыточность, которая достигается путём резервирования. В ряде приложений отказоустойчивость путём резервирования является обязательным требованием, предъявляемым государственными надзорными органами к техническим системам.
Отказоустойчивость следует отличать от отказобезопасности — способности системы при отказе некоторых частей переходить в режим работы, не представляющий опасности для людей, окружающей среды или материальных ценностей. Однако в реальных системах эти два требования могут выступать совместно.
Отказоустойчивость связана со следующими техническими характеристиками систем:
Отказоустойчивая архитектура с точки зрения инженерии — это метод проектирования отказоустойчивых систем, которые способны продолжать выполнение запланированных операций (возможно, с понижением эффективности) при отказе их компонентов[1]. Термин часто используется для описания компьютерных систем, спроектированных продолжать работу в той или иной степени, с возможным уменьшением пропускной способности или увеличением времени отклика, в случае отказа части системы. Это означает, что система в целом не прекратит свою работу при возникновении проблем с аппаратной или программной частью. Пример из другой области: структура, способная сохранять свою целостность при повреждении от коррозии или усталости материала, наличия производственных дефектов или столкновения с каким-либо объектом.
Если каждый компонент системы может продолжать работать при отказе одной из его составляющих, то вся система, в свою очередь, также продолжает работать. Например, на автомобиле, спроектированном так, чтобы не терять управление при разгерметизации одной из шин, каждая из них содержит резиновое ядро, позволяющее им функционировать ограниченное время и при пониженной скорости.
Избыточностью называют функциональность, в которой нет необходимости при безотказной работе системы[2].
Примерами могут служить запасные части, автоматически включающиеся в работу, если основная ломается. В частности, большие грузовики могут потерять шину без серьёзных последствий. На них установлено много шин, и потеря одной не является критичной (за исключением передней пары, которая служит для поворотов). Впервые идея включения избыточных частей для увеличения надежности системы была высказана Джоном фон Нейманом в 1950-х годах[3].
Существует два типа избыточности[4]: пространственная и временна́я. Избыточность пространства реализуется путём введения дополнительных компонентов, функций или данных, которые не нужны при безотказном функционировании. Дополнительные (избыточные) компоненты могут быть аппаратными, программными и информационными. Временна́я избыточность реализуется путём повторных вычислений или отправки данных, после чего результат сравнивается с сохранённой копией предыдущего.
Проектирование каждого компонента как отказоустойчивого привносит в систему некоторые недостатки: увеличение веса, стоимости, энергопотребления, цены и времени, затраченного на проектирование, проверку и испытания. Для определения того, какие компоненты следует проектировать отказостойкими, существует набор тестов[5]:
Примером компонента, прошедшего по всем пунктам, могут служить ремни безопасности. Мы не задумываемся о первичной системе, удерживающей пассажиров — гравитации, но если машина переворачивается или испытывает серьёзные перегрузки, то первичный метод удержания может отказать. Вторичная система, удерживающая пассажиров на местах во время таких происшествий, важна для их безопасности — таким образом, первый пункт подтверждается. Случаи выброса пассажиров были обычным делом до введения ремней безопасности — подтверждается второй пункт. Цена установки дополнительных мер удержания, таких как ремни безопасности, невелика и в плане затрат, и в плане технологичности — подтверждается третий пункт. В итоге делается вывод, что установка ремней безопасности на все средства передвижения — отличная идея.
Иногда обеспечение отказоустройчивости аппаратуры требует, чтобы вышедшие из строя части были извлечены и заменены новыми, в то время как система продолжает работать (в области компьютеров известно как горячая замена). Это реализуется с помощью одной избыточной части и известна как устойчивая в одной точке, большая часть отказоустойчивых систем выглядят именно так[источник не указан 1711 дней]. В таких системах среднее время между поломками должно быть достаточно велико, чтобы операторы могли успеть выполнить ремонт до того, как резервная часть тоже выйдет из строя. Такая методика помогает, если время между поломками максимально возможное, что не является необходимым условием для построения отказостойкой системы.
Особенно успешно отказоустойчивая архитектура применяется в компьютерах, например в процессе репликации.
Достоинства отказоустойчивых решений очевидны, но также у них существуют и недостатки.
Есть разница между отказостойкими системами и системами, в которых редко возникают проблемы. Если некие устройства выходят из строя раз в сто лет, они крайне безотказны; но если поломка всё же случается, они прекращают свою работу полностью, а потому не являются отказоустойчивыми.
Для улучшения этой статьи желательно: |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .