Приветствую!
Приглашаем на обсуждение этакого публичного RFC для RoadRunner.
В RoadRunner 2024.3 планируется добавить динамический пул воркеров, который будет контролироваться специальной опцией dynamic_allocator
.
Эта опция будет включать три настройки:
🍬 max_workers
— максимальное количество рабочих, которые могут быть выделены динамически.
🍬 spawn_rate
— сколько воркеров накидывать при возникновении внутренней ошибки NoFreeWorkers
.
Например, если у вас 10 статических рабочих процессов, а spawn_rate
установлен на 5, то при NoFreeWorkers
RR выделит 5 дополнительных рабочих процессов. Один из них будет возвращен для обработки текущего запроса, а четыре других будут закинуты в пул.
🍬 idle_timeout
— после этого тайм-аута, если не возникнет ошибка NoFreeWorkers
, все динамически выделенные воркеры будут мягко уничтожены (без потери запросов).
Основное обсуждение в дискорде, но если дискорд — блокер, го сюда в комменты.
>>Click here to continue<<
