Автор заметили, что Rust-сервис после обработки всплеска событий не возвращает память операционной системе - RSS остается высоким, хотя настоящих утечек в коде нет.
Оказалось, что стандартный аллокатор glibc плохо подходит для его сценария: короткоживущие задачи Tokio выделяют и освобождают память вперемешку, и даже один "живой" кусок может заблокировать возврат целой страницы ОС, а освобожденные блоки оседают в кешах аллокатора. Переход на jemalloc исправил ситуацию - он группирует блоки одного размера в отдельные страницы и фоновым потоком возвращает полностью освободившиеся страницы обратно системе, не дожидаясь новой аллокационной активности
Знать как работают аллокаоры - важно
25.06.2026
Похожее
29.09.2026
zedis
Нативный Redis GUI, написанный на Rust с использованием GPUI. Тот же движок ренд...
25.09.2026
Робоутка
Microduck от Pollen Robotics - это открытый репозиторий "мозга" крошечного двуно...
22.09.2026
Реверс самоката
Автор занимается реверс-инжинирингом своего электросамоката. Через Bluetooth-...
04.09.2026
Оптимизация DNS-кэша
Ребята из Cloudflare рассказывают, как пять последовательных оптимизаций расклад...