🗊Презентация Проектирование высоконагруженных систем. Лекция №1

Категория: Интернет
Нажмите для полного просмотра!
Проектирование высоконагруженных систем. Лекция №1, слайд №1Проектирование высоконагруженных систем. Лекция №1, слайд №2Проектирование высоконагруженных систем. Лекция №1, слайд №3Проектирование высоконагруженных систем. Лекция №1, слайд №4Проектирование высоконагруженных систем. Лекция №1, слайд №5Проектирование высоконагруженных систем. Лекция №1, слайд №6Проектирование высоконагруженных систем. Лекция №1, слайд №7Проектирование высоконагруженных систем. Лекция №1, слайд №8Проектирование высоконагруженных систем. Лекция №1, слайд №9Проектирование высоконагруженных систем. Лекция №1, слайд №10Проектирование высоконагруженных систем. Лекция №1, слайд №11Проектирование высоконагруженных систем. Лекция №1, слайд №12Проектирование высоконагруженных систем. Лекция №1, слайд №13Проектирование высоконагруженных систем. Лекция №1, слайд №14Проектирование высоконагруженных систем. Лекция №1, слайд №15Проектирование высоконагруженных систем. Лекция №1, слайд №16Проектирование высоконагруженных систем. Лекция №1, слайд №17Проектирование высоконагруженных систем. Лекция №1, слайд №18Проектирование высоконагруженных систем. Лекция №1, слайд №19Проектирование высоконагруженных систем. Лекция №1, слайд №20Проектирование высоконагруженных систем. Лекция №1, слайд №21Проектирование высоконагруженных систем. Лекция №1, слайд №22Проектирование высоконагруженных систем. Лекция №1, слайд №23Проектирование высоконагруженных систем. Лекция №1, слайд №24Проектирование высоконагруженных систем. Лекция №1, слайд №25Проектирование высоконагруженных систем. Лекция №1, слайд №26Проектирование высоконагруженных систем. Лекция №1, слайд №27Проектирование высоконагруженных систем. Лекция №1, слайд №28Проектирование высоконагруженных систем. Лекция №1, слайд №29Проектирование высоконагруженных систем. Лекция №1, слайд №30Проектирование высоконагруженных систем. Лекция №1, слайд №31Проектирование высоконагруженных систем. Лекция №1, слайд №32Проектирование высоконагруженных систем. Лекция №1, слайд №33Проектирование высоконагруженных систем. Лекция №1, слайд №34Проектирование высоконагруженных систем. Лекция №1, слайд №35Проектирование высоконагруженных систем. Лекция №1, слайд №36Проектирование высоконагруженных систем. Лекция №1, слайд №37Проектирование высоконагруженных систем. Лекция №1, слайд №38Проектирование высоконагруженных систем. Лекция №1, слайд №39Проектирование высоконагруженных систем. Лекция №1, слайд №40Проектирование высоконагруженных систем. Лекция №1, слайд №41Проектирование высоконагруженных систем. Лекция №1, слайд №42Проектирование высоконагруженных систем. Лекция №1, слайд №43Проектирование высоконагруженных систем. Лекция №1, слайд №44Проектирование высоконагруженных систем. Лекция №1, слайд №45Проектирование высоконагруженных систем. Лекция №1, слайд №46Проектирование высоконагруженных систем. Лекция №1, слайд №47Проектирование высоконагруженных систем. Лекция №1, слайд №48Проектирование высоконагруженных систем. Лекция №1, слайд №49Проектирование высоконагруженных систем. Лекция №1, слайд №50Проектирование высоконагруженных систем. Лекция №1, слайд №51Проектирование высоконагруженных систем. Лекция №1, слайд №52Проектирование высоконагруженных систем. Лекция №1, слайд №53Проектирование высоконагруженных систем. Лекция №1, слайд №54Проектирование высоконагруженных систем. Лекция №1, слайд №55Проектирование высоконагруженных систем. Лекция №1, слайд №56Проектирование высоконагруженных систем. Лекция №1, слайд №57Проектирование высоконагруженных систем. Лекция №1, слайд №58Проектирование высоконагруженных систем. Лекция №1, слайд №59Проектирование высоконагруженных систем. Лекция №1, слайд №60

Содержание

Вы можете ознакомиться и скачать презентацию на тему Проектирование высоконагруженных систем. Лекция №1. Доклад-сообщение содержит 60 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Проектирование высоконагруженных систем

Лекция №1
Быков Александр
Описание слайда:
Проектирование высоконагруженных систем Лекция №1 Быков Александр

Слайд 2





HighLoad. Лекция №1
Быков Александр Сергеевич
Сотрудник Mail.Ru c 2004 года
Технический руководитель рекламной системы
Начинал с позиции веб-разработчика в Почте
Выпускник МГТУ им. Н.Э.Баумана 2006 года
Описание слайда:
HighLoad. Лекция №1 Быков Александр Сергеевич Сотрудник Mail.Ru c 2004 года Технический руководитель рекламной системы Начинал с позиции веб-разработчика в Почте Выпускник МГТУ им. Н.Э.Баумана 2006 года

Слайд 3





HighLoad. Лекция №1
Система — множество элементов, находящихся в отношениях и связях друг с другом, которое образует определённую целостность, единство. (М.: БРЭ. — 2003, с. 1437)
В нашем случае – множество серверов и программ на них работающих, представляющих в сумме сервис для конечного пользователя.
Описание слайда:
HighLoad. Лекция №1 Система — множество элементов, находящихся в отношениях и связях друг с другом, которое образует определённую целостность, единство. (М.: БРЭ. — 2003, с. 1437) В нашем случае – множество серверов и программ на них работающих, представляющих в сумме сервис для конечного пользователя.

Слайд 4





HighLoad. Лекция №1
Нагрузка — совершаемая полезная работа
Высоконагруженная система (1) – система при проектировании и эксплуатации которой фактор нагрузки является определяющим
Высоконагруженная система (2) – система выполняющая объем работы значительно превышающий средние показатели по рынку
Описание слайда:
HighLoad. Лекция №1 Нагрузка — совершаемая полезная работа Высоконагруженная система (1) – система при проектировании и эксплуатации которой фактор нагрузки является определяющим Высоконагруженная система (2) – система выполняющая объем работы значительно превышающий средние показатели по рынку

Слайд 5





HighLoad. Лекция №1
Ярко выраженный эффект масштаба
Быстрый рост успешных проектов
Могут использоваться миллионами людей
Необходимо учитывать нагрузку при проектировании
Умение держать нагрузку – вопрос выживания
Описание слайда:
HighLoad. Лекция №1 Ярко выраженный эффект масштаба Быстрый рост успешных проектов Могут использоваться миллионами людей Необходимо учитывать нагрузку при проектировании Умение держать нагрузку – вопрос выживания

Слайд 6





HighLoad. Лекция №1
Как должна быть устроена такая система
Как должна быть устроена организация
Описание слайда:
HighLoad. Лекция №1 Как должна быть устроена такая система Как должна быть устроена организация

Слайд 7





HighLoad. Лекция №1
Получение теоретических знаний в области проектирования и эксплуатации высоконагруженных систем
Получение практических навыков разработки высокопроизводительных сервисов
Получение практических навыков анализа архитектуры интернет-проектов и технологий
Подготовка к собеседованию на позицию SRE
Описание слайда:
HighLoad. Лекция №1 Получение теоретических знаний в области проектирования и эксплуатации высоконагруженных систем Получение практических навыков разработки высокопроизводительных сервисов Получение практических навыков анализа архитектуры интернет-проектов и технологий Подготовка к собеседованию на позицию SRE

Слайд 8





HighLoad. Лекция №1
Предшествующие:
1 семестр: Web-технологии
2 семестр: Базы данных
Параллельные:
QA и Безопасность
Последующие:
4 семестр: Архитектура ПО
4 семестр: Разработка выпускного проекта
Описание слайда:
HighLoad. Лекция №1 Предшествующие: 1 семестр: Web-технологии 2 семестр: Базы данных Параллельные: QA и Безопасность Последующие: 4 семестр: Архитектура ПО 4 семестр: Разработка выпускного проекта

Слайд 9





HighLoad. Лекция №1
Знание протокола HTTP
Навыки разработки многопоточных приложений
Навыки проектирования баз данных
Базовые навыки работы в ОС семейства UNIX
Базовые знания об устройстве сетей
Описание слайда:
HighLoad. Лекция №1 Знание протокола HTTP Навыки разработки многопоточных приложений Навыки проектирования баз данных Базовые навыки работы в ОС семейства UNIX Базовые знания об устройстве сетей

Слайд 10





HighLoad. Лекция №1
Навык разработки распределенного ПО
Навык разработки ПО с учетом нагрузки
Навык разработки ПО пригодного для эксплуатации
Навык проектирования распределенных систем
Описание слайда:
HighLoad. Лекция №1 Навык разработки распределенного ПО Навык разработки ПО с учетом нагрузки Навык разработки ПО пригодного для эксплуатации Навык проектирования распределенных систем

Слайд 11





HighLoad. Лекция №1
Введение
Сетевая подсистема
Масштабирование нагрузки
Аппаратное обеспечение
Программное обеспечение 
Архитектура проекта
Клиент-серверное взаимодействие
Описание слайда:
HighLoad. Лекция №1 Введение Сетевая подсистема Масштабирование нагрузки Аппаратное обеспечение Программное обеспечение Архитектура проекта Клиент-серверное взаимодействие

Слайд 12





HighLoad. Лекция №1
Разработка быстрого веб-сервера (40 баллов)
Балансировка нагрузки (20 баллов)
Проектирование интернет-проекта (40 баллов)
Сдача позже срока – половина баллов
Итоговая оценка: уд. – 30 баллов, хор. – 60, отл. – 80
Описание слайда:
HighLoad. Лекция №1 Разработка быстрого веб-сервера (40 баллов) Балансировка нагрузки (20 баллов) Проектирование интернет-проекта (40 баллов) Сдача позже срока – половина баллов Итоговая оценка: уд. – 30 баллов, хор. – 60, отл. – 80

Слайд 13





HighLoad. Лекция №1
Разработка быстрого веб-сервера (15 марта)
Балансировка нагрузки (22 апреля)
Проектирование интернет-проекта (29 апреля)
Сдача позже срока – половина баллов
Итоговая оценка: уд. – 30 баллов, хор. – 60, отл. – 80
Описание слайда:
HighLoad. Лекция №1 Разработка быстрого веб-сервера (15 марта) Балансировка нагрузки (22 апреля) Проектирование интернет-проекта (29 апреля) Сдача позже срока – половина баллов Итоговая оценка: уд. – 30 баллов, хор. – 60, отл. – 80

Слайд 14





HighLoad. Лекция №1
Познакомились
Разобрались зачем нужен этот курс
Убедились в важности этого курса
Узнали что нас ждет на занятиях
Описание слайда:
HighLoad. Лекция №1 Познакомились Разобрались зачем нужен этот курс Убедились в важности этого курса Узнали что нас ждет на занятиях

Слайд 15





HighLoad. Лекция №1
Аудитория интернета
Особенности интернет проектов
Входные/выходные данные от бизнеса
Задачи технического отдела
Управление вычислительными мощностями
Архитектура многопоточного сетевого ПО (ДЗ 1)
Описание слайда:
HighLoad. Лекция №1 Аудитория интернета Особенности интернет проектов Входные/выходные данные от бизнеса Задачи технического отдела Управление вычислительными мощностями Архитектура многопоточного сетевого ПО (ДЗ 1)

Слайд 16





HighLoad. Лекция №1
1. Аудитория интернета
Описание слайда:
HighLoad. Лекция №1 1. Аудитория интернета

Слайд 17





HighLoad. Лекция №1
Аудитория интернета: Россия
Описание слайда:
HighLoad. Лекция №1 Аудитория интернета: Россия

Слайд 18





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 19





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 20





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 21





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 22





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 23





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 24





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 25





HighLoad. Лекция №1
Февраль 2018 г. - Июль 2018 г., в млн.чел. и в % от населения 12+ лет
Описание слайда:
HighLoad. Лекция №1 Февраль 2018 г. - Июль 2018 г., в млн.чел. и в % от населения 12+ лет

Слайд 26





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 27





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 28





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 29


Проектирование высоконагруженных систем. Лекция №1, слайд №29
Описание слайда:

Слайд 30





HighLoad. Лекция №1
Facebook: Monthly active users (MAU)
Описание слайда:
HighLoad. Лекция №1 Facebook: Monthly active users (MAU)

Слайд 31





HighLoad. Лекция №1
2. Особенности интернет-проектов
Описание слайда:
HighLoad. Лекция №1 2. Особенности интернет-проектов

Слайд 32





HighLoad. Лекция №1
Доступность сервиса из любой точки мира
Низкая стоимость доставки сервиса потребителю
Низкая стоимость разработки и эксплуатации
Практически «нулевой» порог входа
Описание слайда:
HighLoad. Лекция №1 Доступность сервиса из любой точки мира Низкая стоимость доставки сервиса потребителю Низкая стоимость разработки и эксплуатации Практически «нулевой» порог входа

Слайд 33





HighLoad. Лекция №1
Высокая конкуренция
Низкая привязанность пользователей к сервису
Популярность сервиса может расти очень быстро
… а падать еще быстрее
Факторы: качество обслуживания
Факторы: потребительское поведение
Описание слайда:
HighLoad. Лекция №1 Высокая конкуренция Низкая привязанность пользователей к сервису Популярность сервиса может расти очень быстро … а падать еще быстрее Факторы: качество обслуживания Факторы: потребительское поведение

Слайд 34





HighLoad. Лекция №1
Низкая/нулевая доходность на одного пользователя
Сначала аудитория потом монетизация
ИТ-инфраструктура - основная статья расходов
В некоторых случаях начальные затраты велики
Не все проекты выходят на окупаемость
Описание слайда:
HighLoad. Лекция №1 Низкая/нулевая доходность на одного пользователя Сначала аудитория потом монетизация ИТ-инфраструктура - основная статья расходов В некоторых случаях начальные затраты велики Не все проекты выходят на окупаемость

Слайд 35





HighLoad. Лекция №1
Основа бизнеса и основная статья расходов
Высокие требования по скорости разработки
Высокие требования по масштабированию
Минимальные требования по эффективности
Невыполнение равно выходу из бизнеса
Описание слайда:
HighLoad. Лекция №1 Основа бизнеса и основная статья расходов Высокие требования по скорости разработки Высокие требования по масштабированию Минимальные требования по эффективности Невыполнение равно выходу из бизнеса

Слайд 36





HighLoad. Лекция №1
Выделение ключевых продуктовых метрик
Прогноз по росту проекта в продуктовых метриках
План по запуску новых функций
Бюджетные требования 
Требования к качеству (стабильность, безопасность)
Описание слайда:
HighLoad. Лекция №1 Выделение ключевых продуктовых метрик Прогноз по росту проекта в продуктовых метриках План по запуску новых функций Бюджетные требования Требования к качеству (стабильность, безопасность)

Слайд 37





HighLoad. Лекция №1
План по эксплуатационным затратам
План по капитальным затратам
План по найму персонала
Описание слайда:
HighLoad. Лекция №1 План по эксплуатационным затратам План по капитальным затратам План по найму персонала

Слайд 38





HighLoad. Лекция №1
Описание слайда:
HighLoad. Лекция №1

Слайд 39





HighLoad. Лекция №1
Количество зарегистрированных пользователей
Суточная/недельная/месячная аудитория
Максимальное количество пользователей онлайн
Интенсивность использования разных функций
Средний размер данных пользователя
и т.п.
Описание слайда:
HighLoad. Лекция №1 Количество зарегистрированных пользователей Суточная/недельная/месячная аудитория Максимальное количество пользователей онлайн Интенсивность использования разных функций Средний размер данных пользователя и т.п.

Слайд 40





HighLoad. Лекция №1
Измерение продуктовых и технических метрик
Перевод продуктовых метрик в технические
Эксплуатация существующей системы
Планирование изменений
Реализация изменений
Описание слайда:
HighLoad. Лекция №1 Измерение продуктовых и технических метрик Перевод продуктовых метрик в технические Эксплуатация существующей системы Планирование изменений Реализация изменений

Слайд 41





HighLoad. Лекция №1
RPS – кол-во запросов в секунду (веб-сервер)
QPS – кол-во запросов в секунду (БД)
PPS – кол-во пакетов в секунду (сетевое оборудование)
Мbit/s – загрузка каналов связи
Simultaneous connections – одновременные соединения
Гбайт – размеры хранилищ
Описание слайда:
HighLoad. Лекция №1 RPS – кол-во запросов в секунду (веб-сервер) QPS – кол-во запросов в секунду (БД) PPS – кол-во пакетов в секунду (сетевое оборудование) Мbit/s – загрузка каналов связи Simultaneous connections – одновременные соединения Гбайт – размеры хранилищ

Слайд 42





HighLoad. Лекция №1
Роли людей в проекте
Постановка целей управления
Разработка ПО
Описание слайда:
HighLoad. Лекция №1 Роли людей в проекте Постановка целей управления Разработка ПО

Слайд 43





HighLoad. Лекция №1
Product Management
Development Engineering (Разработка)
Operations Engineering (Эксплуатация)
Описание слайда:
HighLoad. Лекция №1 Product Management Development Engineering (Разработка) Operations Engineering (Эксплуатация)

Слайд 44





HighLoad. Лекция №1
Роли в проекте: конфликт интересов
Описание слайда:
HighLoad. Лекция №1 Роли в проекте: конфликт интересов

Слайд 45





HighLoad. Лекция №1
Методология DevOps
Описание слайда:
HighLoad. Лекция №1 Методология DevOps

Слайд 46





HighLoad. Лекция №1
Роли в рамках различных лекций
Описание слайда:
HighLoad. Лекция №1 Роли в рамках различных лекций

Слайд 47





HighLoad. Лекция №1
Получить требования от продуктовых менеджеров
Сформулировать требования в конкретных метриках
(время ответа, % ошибок в ответах, uptime)
Проверить измеримость исполнения требований
Зафиксировать в Service Level Agreement (SLA)
Описание слайда:
HighLoad. Лекция №1 Получить требования от продуктовых менеджеров Сформулировать требования в конкретных метриках (время ответа, % ошибок в ответах, uptime) Проверить измеримость исполнения требований Зафиксировать в Service Level Agreement (SLA)

Слайд 48





HighLoad. Лекция №1
Прогноз по росту проекта в продуктовых метриках
План запуска новых функций
Статистика по проекту за предыдущий период
Ограничения (бюджет) по расходам на ИТ
Ограничения по качеству работы сервиса (SLA)
Описание слайда:
HighLoad. Лекция №1 Прогноз по росту проекта в продуктовых метриках План запуска новых функций Статистика по проекту за предыдущий период Ограничения (бюджет) по расходам на ИТ Ограничения по качеству работы сервиса (SLA)

Слайд 49





HighLoad. Лекция №1
Доступность %		      Время простоя в год	Время простоя в месяц
99% ("две девятки")	         3.65 дней		7.20 часов
99.5%			         1.83 дней		3.60 часов
99.9% ("три девятки")	         8.76 часов		43.2 минут
99.95%			         4.38 часов		21.56 минут
99.99% ("четыре девятки”)      52.56 минут		4.32 минут
99.999% ("пять девяток")	         5.26 минут		25.9 секунд
99.9999% ("шесть девяток”)      31.5 секунд		2.59 секунды
Описание слайда:
HighLoad. Лекция №1 Доступность % Время простоя в год Время простоя в месяц 99% ("две девятки") 3.65 дней 7.20 часов 99.5% 1.83 дней 3.60 часов 99.9% ("три девятки") 8.76 часов 43.2 минут 99.95% 4.38 часов 21.56 минут 99.99% ("четыре девятки”) 52.56 минут 4.32 минут 99.999% ("пять девяток") 5.26 минут 25.9 секунд 99.9999% ("шесть девяток”) 31.5 секунд 2.59 секунды

Слайд 50





HighLoad. Лекция №1
Какую нагрузку может выдержать сервис в текущей конфигурации ?
Какую нагрузку сервис выдержит если добавить N дополнительных серверов ?
Сколько и каких серверов нужно чтобы обслуживать заданную нагрузку в заданных условиях ?
Как планировать закупки оборудования исходя из планирующегося роста ?
Описание слайда:
HighLoad. Лекция №1 Какую нагрузку может выдержать сервис в текущей конфигурации ? Какую нагрузку сервис выдержит если добавить N дополнительных серверов ? Сколько и каких серверов нужно чтобы обслуживать заданную нагрузку в заданных условиях ? Как планировать закупки оборудования исходя из планирующегося роста ?

Слайд 51





HighLoad. Лекция №1
Разработка ПО это только первый (небольшой) шаг
Дальнейшая эксплуатация и модификация системы это большая часть работы
Условия эксплуатации диктуют требования к ПО (а не наоборот)
ПО не проверенное боевой эксплуатацией не считается рабочим
Описание слайда:
HighLoad. Лекция №1 Разработка ПО это только первый (небольшой) шаг Дальнейшая эксплуатация и модификация системы это большая часть работы Условия эксплуатации диктуют требования к ПО (а не наоборот) ПО не проверенное боевой эксплуатацией не считается рабочим

Слайд 52





HighLoad. Лекция №1
Самое распространенное приложение: веб-сервер
Самый распространенный веб-сервер: Apache
Самый быстрый веб-сервер: nginx
На примере этой задачи будем учиться писать ПО для высоких нагрузок
Описание слайда:
HighLoad. Лекция №1 Самое распространенное приложение: веб-сервер Самый распространенный веб-сервер: Apache Самый быстрый веб-сервер: nginx На примере этой задачи будем учиться писать ПО для высоких нагрузок

Слайд 53





HighLoad. Лекция №1
Блокирующая обработка соединений
Описание слайда:
HighLoad. Лекция №1 Блокирующая обработка соединений

Слайд 54





HighLoad. Лекция №1
fork
prefork
threads
threads prefork
pooling
coroutines
Описание слайда:
HighLoad. Лекция №1 fork prefork threads threads prefork pooling coroutines

Слайд 55





HighLoad. Лекция №1
Неблокирующая обработка соединений
Описание слайда:
HighLoad. Лекция №1 Неблокирующая обработка соединений

Слайд 56





HighLoad. Лекция №1
Статистика по распространенности серверов
Описание слайда:
HighLoad. Лекция №1 Статистика по распространенности серверов

Слайд 57





HighLoad. Лекция №1
Домашнее задание №1
Описание слайда:
HighLoad. Лекция №1 Домашнее задание №1

Слайд 58





HighLoad. Лекция №1
Список литературы
Описание слайда:
HighLoad. Лекция №1 Список литературы

Слайд 59





HighLoad. Лекция №1
Список литературы
Описание слайда:
HighLoad. Лекция №1 Список литературы

Слайд 60





СПАСИБО ЗА ВНИМАНИЕ
Быков Александр
bykov@corp.mail.ru
Описание слайда:
СПАСИБО ЗА ВНИМАНИЕ Быков Александр bykov@corp.mail.ru



Похожие презентации
Mypresentation.ru
Загрузить презентацию