На странице собраны вопросы по Python — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: backend, database, async.
Что представляет собой Redis и где его применяют? In-memory СУБД с моделью ключ-значение Очень высокая скорость за счёт хранения данных в оперативной памяти Работа с разными структурами данных: строками, списками,…
Как Redis-кеширование используется для оптимизации? Redis — это In-Memory хранилище с минимальной задержкой Его применяют для хранения данных, которые запрашиваются особенно часто Наиболее распространённый вариант —…
Как query planner помогает выявлять причины проблем с производительностью? исследование плана выполнения SQL-операций обнаружение узких мест: полнотекстовый скан, джойны, индексы оценка стоимости (cost) и расчетного…
управление конкурентным доступом (Concurrency Control) уровни изоляции (Read Uncommitted → Serializable) блокировки (Locking): shared и exclusive мультиверсионность (MVCC) — хранение версий данных для чтения…
Почему асинхронность повышает число запросов, обрабатываемых одним потоком? Асинхронность — это модель выполнения, при которой операции могут идти без блокировки потока Пока I/O-операция не завершена, поток не…
Ограничения UNIQUE: запрещают повторение значений в столбце или их комбинации PRIMARY KEY: уникальный идентификатор строки, автоматически обеспечивающий UNQUE Уникальные индексы: ускоряют поиск и одновременно…
Как быстро отправить 10 000 запросов: подходы и оптимизация параллельная отправка запросов с помощью многопоточности или асинхронности применение пулов соединений (connection pooling) для повторного использования TCP…
компонент для взаимодействия с БД, гарантирующий атомарность операций применяется модуль django.db.transaction доступны декораторы и менеджеры контекста: @transaction.atomic — помещает блок кода внутрь транзакции with…
контекст: устройство словаря (dict) в CPython применяется метод открытой адресации с двойным хешированием при совпадении хешей новая позиция определяется с помощью вторичного хеша непредсказуемый шаг поиска помогает…
Многопоточность, асинхронность и мультипроцессинг в Python Многопоточность: одновременная работа нескольких потоков в рамках одного процесса. Потоки используют общую память и требуют сравнительно небольших ресурсов.…
Пример решения 10 CPU-bound и 10 IO-bound задач на Python CPU-bound-задачи: вычислительная нагрузка приходится на CPU, поэтому требуется распределение работы по ядрам IO-bound-задачи: выполнение замедляется из-за…
Как связаны переменные, ссылки и объекты в Python Python использует динамическую типизацию, а управление объектами в памяти основано на ссылках. Переменная представляет собой имя-ссылку на объект в памяти, а не…