#design-patterns #architecture #distributed-computing #cloud-hosting
#шаблоны проектирования #архитектура #распределенные вычисления #облачный хостинг
Вопрос:
Теперь, когда пыль улеглась, что мы можем узнать о построении распределенных систем из недавнего сбоя в работе служб Amazon EC2 и Amazon RDS?
Комментарии:
1. Человеку, проголосовавшему за закрытие как не относящемуся к теме, не кажется ли вам, что это оказывает влияние на реальные архитектуры программного обеспечения, шаблоны проектирования, методы программирования и, возможно, даже языки, которые нам нужно использовать при создании крупномасштабных распределенных систем?
2. Создавать надежные и масштабируемые распределенные системы сложно, и лучший способ научиться этому — поделиться архитектурой и опытом. Я полностью думаю, что это правильный вопрос.
Ответ №1:
Спасибо за интересные ссылки. Очевидно, что каждая распределенная система отличается, и каждый сбой уникален, поэтому обобщать сложно. Вот некоторые выводы, которые у меня есть:
-
Сбои случаются даже с лучшими разработчиками на block…so вам лучше планировать свои.
-
Построение распределенных систем — это hard…so вам нужен опыт и опытные друзья.
-
Изменения, вносимые вручную, являются распространенной причиной … об этом явно не говорится в описании AWS, но явно подразумевается.
-
Сбои часто являются «возникающими» явлениями, когда простая ошибка приводит к тому, что многие системы взаимодействуют экспоненциально. В рецензии AWS это называется «штормом», и я был свидетелем подобных «штормов» в больших распределенных системах. Степень связи и простые аспекты, такие как параметры возврата, могут определять разницу между помехами, которые растут экспоненциально, или экспоненциально спадают. Вспомните мост Tacoma Narrows — возможно, аналогия натяжная, но настройка нескольких простых параметров может избежать разрушительных резонансов.
-
Обезьяна хаоса Netflix интересна. «Бережливые» ребята научили нас, что если что-то сложно (например, тестирование или развертывание), то вам следует делать это часто, пока это не перестанет быть сложным. Возможно, отказ системы / устойчивость — следующий рубеж для этого подхода.
Комментарии:
1. Пункт 4 сразу заставил меня вспомнить о автоматических выключателях. До недавнего времени я не был знаком с этой концепцией. О них есть хороший обзор на springinpractice.com/2010/07/06 / … (не стесняйтесь игнорировать материал о Spring).
Ответ №2:
Теперь Chaos Monkey от Netflix приобретает больше смысла. Ознакомьтесь с техническим блогом NetFlix