Подборка объединяет вопросы, отмеченные на этапах интервью в Lesta. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: backend, database, async.
В RabbitMQ точка обмена (exchange) — это компонент, который принимает сообщения от производителей (producers) и маршрутизирует их в очереди (queues) согласно определённым правилам.
GIL (Global Interpreter Lock) в CPython ограничивает выполнение байткода Python одним потоком одновременно, что снижает эффективность многопоточных программ, особенно в CPU-bound задачах.
Mock объекты — это специальные заглушки, которые имитируют поведение реальных объектов в тестах. Они используются для изоляции тестируемого кода от внешних зависимостей (например, баз данных, сетевых сервисов).
Да, у меня был опыт работы с системами обмена сообщениями и брокерами сообщений. Например, я использовал RabbitMQ и Apache Kafka для организации асинхронного взаимодействия между микросервисами.
При использовании среза списка в Python создаётся поверхностная (shallow) копия исходного списка. Это значит, что создаётся новый список, но элементы внутри него ссылаются на те же объекты, что и в оригинальном списке.
Да, Redis часто используется в проектах для кеширования и обмена данными благодаря своей высокой производительности и поддержке различных структур данных.