Вход в систему Регистрация

Учебник по высоконагруженым системам

 

Секция-эксперимент. Обладая внушительным опытом консалтинга крупных проектов, сталкивающихся с наплывом посетителей и не справляющихся с нагрузкой, от ВКонтакте и Photosight до Эльдорадо и 1С-Битрикса, мы обратили внимание на то, что каждый раз мы рассказываем одно и тоже. В любом проекте мы говорим о фронтенде, очередях, партиционировании, каждый раз отговариваем заказчика от вертикального масштабирования и каждый раз раскрываем "тайну" виртуальных шардов ;)

Мы, сообщество веб-разработчиков, решили попробовать написать учебник. А сначала его проговорить. И начнем мы с этой лекции - двух часового экскурса по ИНСТРУМЕНТАМ для построения высоконагруженных систем. Мы не расскажем вам, как правильно, но мы расскажем как ВОЗМОЖНО. Раскроем пару десятков инструментов, которые применяются архитекторами крупных проектов.

Это будет шоу нескольких актеров, попробуем сделать это живо и интересно. Итак, о чем будем говорить:
Высоконагруженные веб-сервисы, общая архитектура системы: монолитное приложение или cервис-ориентированная архитектура.
Масштабирование архитектурного решения: в пространстве (распределение элементов программной системы по разным машинам, шардинг, принципы шардинга) или во времени (асинхронная обработка, пост-обработка). Вертикальное и горизонтальное масштабирование.
Масштабирование фронт-енд: балансировка нагрузки, проблема одновременного переподключения клиентов.
Архитектура приложения: трехзвенная модель архитектуры, разделение на слои: представление, бизнес-логика, данные.
Кеширование: проблема инвалидации кеша: малое время жизни кеша vs. сложная система инвалидации.
Масштабирование баз данных: различные типы БД (RDBMS, NoSQL), тюнинг запросов, шардинг, репликация, партиционирование, особенности использования БД в высоконагруженных проектах: отход от классической теории, денормализация данных.
Надежность (точнее - ненадежность): надежность железа; надежность, обеспечиваемая программными средствами; избыточность и дублирование.
Мониторинг и предупреждение проблем.
Эксплуатация высоконагруженных систем: dev-ops, общие вопросы администрирования, deployment.

Теги: Технологии  
Комментарии
Имя:
Комментарий:
Осталось: 250 символов

Рекомендуем

Новости блога

Facebook
ВКонтакте
Twitter

Доклады конференций

Как построить эффективную платформу для SEO
Использование эвристик для классификации ссылочных доноров

Новости AdCrunch

Sam Altman’s project World looks to scale its human verification empire. First stop: Tinder.
Kevin Weil and Bill Peebles exit OpenAI as company continues to shed ‘side quests’
Man who hacked US Supreme Court filing system sentenced to probation

Наши проекты