На этот раз Podlodka погрузилась в мир высоких нагрузок, и помог нам в этом Алексей Акулович, разработчик в команде backend инфраструктуры ВКонтакте. Разобрались в том, когда начинается highload, с какими типовыми проблемами сталкиваются разработчики высоконагруженных систем и как с этим справляться. Варианты масштабирования, оптимизация работы с данными, шардирование, кэширование, мониторинги - тема масштабная, и разговор получился насыщенный. Не обещаем, что после выпуска вы сразу напишите свой первый production-ready высоконагруженный сервис, но понимание того, что происходит под капотом на бэкенде у крупных сервисов точно увеличится!
Поддержи лучший подкаст про мобильную разработку:
www.patreon.com/podlodka
Также ждем вас, ваши лайки, репосты и комменты в мессенджерах и соцсетях!
Telegram-чат: t.me/podlodka
Telegram-канал: t.me/podlodkanews
Страница в Facebook: www.facebook.com/podlodkacast/
Twitter-аккаунт: twitter.com/PodlodkaPodcast
Содержание:
- 00:00:42 - Знакомство с гостем
- 00:02:25 - Что такое хайлоад?
- 00:05:05 - Ищем бутылочное горлышко
- 00:08:50 - Ожидание при обработке запросов
- 00:11:10 - О выборе языка
- 00:18:50 - Как эффективно работать с ожиданиями
- 00:22:30 - Первые шаги для оптимизации
- 00:31:30 - Варианты масштабирования
- 00:33:40 - Как правильно профилировать
- 00:37:10 - Немножко про ВК, монолилиты и микросервисы
- 00:39:05 - Масштабируемая архитектура: фронты
- 00:46:30 - Флуд-контроль
- 00:48:18 - Работа с данными: шардирование, денормализация и уменьшение связности
- 00:59:50 - Кеширование и консистентность данных
- 01:09:30 - С чего начать, когда все плохо
- 01:14:20 - Контролируемая деградация
- 01:18:25 - Как избежать проблем: мониторинги
- 01:27:20 - Когда нужно задуматься о масштабировани
- 01:30:00 - Об организации команды
- 01:44:15 - С чего начать погружение в хайлоад
- 01:46:40 - Подведение черты
Полезные ссылки:
- Junior highload, расшифровка докладов с конференции highload++
http://highload.guide/blog/
- Сайт: ruhighload.com
https://ruhighload.com/
- Как работают крупные сервисы
https://www.insight-it.ru/highload/
Плейлист
Podlodka Podcast
Рассказать хорошую историю – сложно. Сделать увлекательный геймплей – тоже сложно. Ну а сделать так, чтобы повествование и игровые механики друг друга органично дополняли – это уже другой уровень и ра...
Инженерная культура компании пронизывает нашу работу от и до. Какими критериями бизнес руководствуется при найме и почему собеседования устроены именно так а не иначе? Сколько времени у вас уйдет на...
В выпуске мы придумали идеальное описание языка программирования Zig – это DSL для машинного кода. И за этим определением кроется куча интересных концепций, начиная от брутальной простоты в синтаксисе...
С Сашей Зиминым поговорили про его опыт работы и жизни в Британии. В начале как наемного сотрудника, а теперь уже как исключительного таланта. В релокационном выпуске традиционно прошлись по климату,...
В некоторых выпусках мы уже обсуждали, как работы ученых и инженеров в 60-70-е годы повлияли на современное программирование. Сейчас мы пошли еще дальше! Вместе с Виталием Брагилевским обсуждаем выдаю...
Дата и время – не самый простой домен. То зимнее-летнее время, то часовые пояса не кратны часу. А что, если не надо привязываться к часовому поясу? Еще в чате распределенной команды написали, что мити...
Все ведущие подкаста недавно релоцировались в другие страны. А некоторые – даже несколько раз. Мы по себе знаем, насколько сложен процесс адаптации, и насколько просто вместо интеграции в новую культу...
FemTech — технологии, которые улучшают жизнь и здоровье женщин. Если вы думаете, что дело заканчивается трекерами цикла… То, поверьте, этот выпуск вас удивит! Gender data gap — огромная и далеко не ед...
Продолжаем разбираться, за что отвечают разные C-level менеджеры, и в этот раз фокус на деньгах – говорим про CFO. Готовьте кошельки!
Поговорили про финансирование, планирование, управление рисками –...
Мы уже несколько выпусков посвятили тому, как правильно “готовить” тесты — составлять тест-кейсы, реализовывать и оптимизировать автотесты, поддерживать тестовую документацию. Но один вопрос остается...
Результат работы программистов – код. Дизайнеров – макеты и красивые иконки. А вот с тестировщиками все намного интереснее! Вместе с Анастасией Заречневой, тестировщицей из JetBrains и создательницей...
В выпуске обсудили нескучные правила шахмат, а также разновидности шахмат. Рассмотрели шахматы как вид спорта, или даже киберспорта. Узнали как AI играет в шахматы, оценивает силу ходов, помогает сове...
И стартап, и пет-проект проще начинать с кем-то, например, другом или родственником. Сначала вы просто делаете что-то прикольное, но с ростом проекта растут и ставки. Как не навредить проекту и сохран...
Мы много времени уделяем обсуждению того, как писать код классно — спорим про технологии, языки, фреймворки, IDE и т. п. При этом все мы знаем, что реализация фичи — это лишь верхушка айсберга. А что...
Мало кого из тех, кто становится тимлидом, жизнь как-то к этому готовила. Управлению людьми и командами редко учат в университетах, работа рядовым программистом тоже не приносит нужных знаний. Мы реши...
У нас уже был выпуск про VR, потому мы обсудили, что произошло с индустрией за прошедшие годы. В центральной части выпуска подняли тему NeRF — технологии, которая позволяет делать фотореалистичные сни...
Иногда технологии — это не только про сложные инженерные задачи, но и про непростые моральные и этические вопросы без правильных ответов. В этом выпуске обсуждаем с Александром Нотченко дипфейки — как...
Скорее включайте этот новогодний эпизод и заряжайтесь хорошим настроением! Обсуждаем любимые выпуски по версии наших слушателей и нас самих, делимся открытиями и фейлами 2023 года, неловко шутим и, ко...
Изначально мы планировали говорить о QT исключительно в контексте кроссплатформенной десктопной разработки. Но в процессе осознали, что такое представление слишком ограничено, и возможности QT гораздо...
Возможно, вы знаете, что все ведущие нашего подкаста неровно дышат к Kotlin. Почему? Чем так хорош этот язык? Разбираемся со Светой Исаковой, Developer Advocate в JetBrains.
Облако КРОК – надежная и...
Часто карьерную лестницу технических менеджеров представляют исключительно через количественный рост в зоне ответственности, горизонте планирования и числе людей. Почему это не так и в чем есть качест...
В этом выпуске Катя Петрова рассказала про особенности переезда, легализации и жизни на острове глазами человека из IT. Прошлись по всем аспектам, которые могут повлиять на ваш выбор: климат, жилье, ш...
В какой момент продукт перестает быть безумной идеей фаундеров и встает на ноги? По каким метрикам и что нужно сделать, чтобы пройти этот путь? На эти и другие вопросы нам ответил Илья Мартын – управл...
У TypeScript – очень интересная история. Это первый крупный опенсорсный проект Microsoft, которые до этого воспринимались исключительно как империя зла. Он соревновался сразу с несколькими другими язы...
Пополняем коллекцию выпусков про профессии! В этот раз мы вместе с Владиславом Соловьевым разобрались в том, что такое motion design.
А там есть в чем поразбираться, ведь моушн-дизайн включает в себя...
Стартуем серию выпусков посвященных десктоп разработке, и первый на очереди великий и ужасный… Electron! Вместе с Ильей Ермошиным разобрались в устройстве фреймворка, сравнивали его с нативной разраб...
Представьте, что можно взять свой любимый язык программирования, а внутри него сделать другой язык, который будет понятными словами описывать вашу предметную область. А нам и представлять не надо, мы...
Преобразования, которые происходят с текстом для его отображения на экране – одна из самых проклятых вещей в программировании. Никита Прокопов вернулся к нам в гости, чтобы рассказать про то, какие ин...
Юмор – это то, что помогает налаживать социальные связи, справляться со стрессом и трудностями жизни. Поэтому особенно интересно заглянуть в мир стендапа, где юмор – это профессиональный навык. Разбир...
ИТ-рекрутмент знаком нам всем — как соискателям работы. Но мало кто представляет, что скрывается за завлекающими сообщениями рекрутеров в соц. сетях, ведь это лишь маленькая верхушка айсберга. Как зар...