ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ssl and worker_processes



On Thu, 1 Dec 2005, Anton Yuzhaninov wrote:

В документации по модулю ngx_http_ssl_module написано, что для
уменьшения загрузки процессора рекомендуется использовать только один
рабочий процесс.

Можно поподробнее с чем это связано?

Самая ресурсоёмкая часть SSL - это установление SSL сессий (handshake).
SSL поддерживает кэширование сессий, то есть, клиент может установить одну сессию, а затем использовать её в нескольких одновременных
или в будущих соединениях.

nginx поддерживает кэш сессий в только пределах одного процесса.
Собственно nginx'у для этого практически ничего не нужно делать,
только пара вызовов, всё остальное делает сам OpenSSL.

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

Дело в том, что есть нагруженный сервер, хочется добавить один хост с
https.

99,9% запросов будут идти по http

Сейчас воркеров 3 и уменьшать их не хочется, боюсь это плохо скажется
на обработке http запросов.

Какой характер нагрузки ? Часто ли nginx ходит к диску ? Если нет,
то одного рабочего процесса будет достаточно. Более того, в этом
случае один процесс будет лучше.

Скажется ли отрицательно на загрузке процессора количество воркеров
больше одного, в данном случае?

Если SSL мало, то не должно.


Игорь Сысоев
http://sysoev.ru




 




Copyright © Lexa Software, 1996-2009.