Подборка объединяет вопросы, отмеченные на этапах интервью в shtab. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: backend, database, optimization.
Разница между контейнером и виртуальной машиной виртуальная машина (ВМ) — полноценная гостевая ОС, работающая через гипервизор контейнер — изолированная среда внутри хост-ОС, использующая её ядро ВМ несёт накладные…
С какими проблемами сталкиваются контейнеры на разных аппаратных платформах Окружение: контейнер зависит от ядра хоста и архитектуры CPU Разные архитектуры (x86 и ARM) могут привести к несовместимости образов Бинарные…
Для каких задач вы использовали Celery? асинхронное выполнение фоновых операций запуск ресурсоёмких и длительных процессов за пределами пользовательского запроса настройка периодического запуска задач (cron-like)…
Реляционная СУБД с табличной организацией данных Базовая единица хранения — страница (page), как правило, размером 8 KB Информация размещается в heap-таблицах, состоящих из неотсортированных страниц Каждая страница…
Что представляет собой Redis и где его применяют? In-memory СУБД с моделью ключ-значение Очень высокая скорость за счёт хранения данных в оперативной памяти Работа с разными структурами данных: строками, списками,…
Подходы к оптимизации SQL-запросов Индексы: их создают для колонок, участвующих в частых фильтрах и JOIN, чтобы сократить число полных сканирований таблиц Минимизация JOIN: отказ от ненужных соединений,…
Как применять миграции в Django и справляться с типичными сложностями? Миграции — встроенный механизм версионирования схемы БД Для создания использую makemigrations, а для применения — migrate Контролирую…
Инфраструктура для горизонтального масштабирования добавление новых однородных узлов по мере роста нагрузки автоматическое распределение нагрузки (load balancing) применение бессостоя́тных сервисов, упрощающих…
Как Redis используется для кэширования данных? Redis представляет собой in-memory key-value хранилище предоставляет микросекундный доступ к данным поддерживает TTL, автоматически удаляя кэш по истечении срока…
Как prefetch_related и select_related помогают избежать проблемы N+1? Оптимизация запросов средствами Django ORM select_related: применяет SQL JOIN и сразу загружает связанные объекты используется с OneToOne и…
Как настроить Celery для выполнения задач по расписанию? Celery — асинхронный менеджер задач для Python За планирование отвечает Celery Beat — компонент, который запускает задачи по расписанию Расписание Beat может…
инструмент для исследования SQL-запроса выводит план выполнения запроса показывает последовательность операций (Seq Scan, Index Scan и т.п.) содержит оценку стоимости и предполагаемое число строк позволяет находить…