Высоконагруженные приложения - Глава 8 - Проблемы с распределенными системами
Ранее книжный клуб нашей компании изучил отличную книгу:
Martin Kleppmann - Designing Data-Intensive Applications
Мартин Клеппман - Высоконагруженные приложения. Программирование, масштабирование, поддержка
Это - лучшая книга о создании комплексных масштабируемых программных систем, которые я когда-либо читал. 💪
Как обычно, я подготовил краткий обзор и майнд-мапу.
В главе 8 раскрываются проблемы распределенных систем, не связанные с базами данных. Команды разработчиков должны учитывать их при разработке распределенного программного обеспечения.
- Неисправности и частичные отказы. Необходимость строить надежную систему из ненадежных компонентов.
- Проблема 1: ненадежные сети. Почему такое случается. Как это обнаружить. Как с этим бороться. Синхронные и асинхронные сети. Гибридные сети и эмуляция гибридных сетей.
- Проблема 2: ненадежные часы. Монотонные часы и часы времени суток. Что использовать, а что не использовать в разных случаях. Хорошие практики.
- Проблема 3: знание, правда и ложь. Что такое правда в распределенных системах. Проблема византийских генералов. Модель системы и реальность: что использовать в каких случаях.
Смотрите также:
- Высоконагруженные приложения - Глава 5 - Репликация
- Высоконагруженные приложения - Глава 12 - Будущее систем данных
- Высоконагруженные приложения - Глава 11 - Потоковая обработка
- Высоконагруженные приложения - Глава 4 - Кодирование и эволюция
- Высоконагруженные приложения - Глава 3 - Подсистемы хранения и извлечение данных