Возможно ли включить в продукт фичи angie?

Maxim Dounin mdounin на mdounin.ru
Сб Авг 23 13:15:21 UTC 2025


Hello!

On Sat, Aug 23, 2025 at 12:54:13PM +0300, Peter Volkov wrote:

> Да, этот модуль мы смотрели, у него есть проблема с
> производительностью. Прямо в readme написано, что нужно исправлять, но
> пока этого никто не сделал.
> 
> TODO:
> Add an implementation that periodically updates computed statistic in
> each worker processes to shared memory to reduce the contention due to
> locks when using ngx_shmtx_lock().

А вы эти проблемы с производительностью наблюдали, или сделали 
вывод исходя из записи TODO?  Потому как получить lock contention 
при большом количестве процессоров и рабочих процессов конечно, 
можно, но это не очень тривиальная задача.

И, скажем, какой-нибудь proxy_cache от той же проблемы страдает 
примерно так же, ибо тоже использует зону разделяемой памяти для 
хранения ключей.  Простой метод лечения, если вдруг lock 
contention действительно наблюдается - сделать несколько зон 
разделяемой памяти и поделить запросы между ними.  Насколько я 
вижу по коду, VTS это должен уметь.

Собирать статистику через промежуточные хранилища в рабочих 
процессах, безусловно, эффективнее, чем напрямую в разделяемую 
память, но и сложнее технически, так что вполне понятно, почему 
этого пока не сделано, особенно если на практике проблемы нет.

-- 
Maxim Dounin
http://mdounin.ru/


Подробная информация о списке рассылки nginx-ru