Русский
Открыть в Telegram

Пост Как собрать LRU-кеш с приоритетами и сроком жизни на Python

15 сентября 2026
Z
Zen of Python
Ссылка
нажмите — покажем
Как собрать LRU-кеш с приоритетами и сроком жизни на Python Обычный LRU-кеш удаляет давно не использовавшиеся записи. Здесь порядок сложнее: сначала просроченные элементы, потом записи с меньшим приоритетом, при равенстве — давно не запрашиваемые. Автор начинает со словаря с операциями в среднем за O(1) и добавляет структуры для срока жизни, приоритета и истории обращений. Наивная очередь хранится в отсортированном списке: минимум легко прочитать, но вставка и удаление с начала требуют линейного времени. Затем очередь ускоряют через bisect, без куч и деревьев. Разбор Адриана на death and gravity показывает, как согласовать несколько структур данных и проверить сроки через внедряемые часы. Это пример разработки от простого рабочего варианта к более быстрому только на стандартной библиотеке.
12 · 1.5K ·

Рядом в ленте

ZZen of PythonКак ускорить сериализацию в Django Rest Framework В бенчмарке на Python 3.7, Django 2.1.1 и DRF 3.9.4 объект User сериализовали 5000 раз без обращений к БД. ModZZen of PythonКак тестировать HTTP-запросы в Python без хрупких моков У асинхронного запроса через HTTPx есть четыре способа проверки. Можно вручную подменить AsyncClient.pos
это сообщение
ZZen of PythonКак ждать корутины в asyncio Два последовательных await не дают конкурентности: вторая корутина запустится после первой. Создание двух объектов корутин тоже не ZZen of PythonКак сделать параметризованные тесты pytest читаемыми Обычный список кортежей в @pytest.mark.parametrize быстро усложняет чтение: значения приходится сопоставлят
ZZen of PythonZen of Python@zen_of_python · канал · Технологии
18 712подписчиков1 104средний охват поста
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем