On Tuesday 06 November 2018 06:25:36 kseleznyov wrote: > Добрый день! > > Проблема такая. Мы используем библиотеку libfcgi. Она популярная, хорошо про > тестированная и т.д. и т.п., но... она не поддерживает переиспользование > соединений. Может быть посоветуете другую библиотеку для c++? > > Если же использовать libfcgi, то поясню свой предыдущий вопрос. Допустим > nginx уже открыл N соединений FastCGI и по каждому из них уже обрабатывается > FastCGI-запрос. Допустим приходит ещё один HTTP-запрос и у nginx есть три > пути: либо открывать ещё одно FastCGI-соединение для обработки нового > HTTP-запроса, либо откладывать этот HTTP-запрос (пока не отработает один из > N запросов), либо вообще возвращать ошибку. Как поступает nginx? Какие > настройки на это влияют? >
1. nginx по умолчанию _всегда_ открывает новое соединение. И это должно работать с libfcgi без проблем. 2. Если вы настроили keepalive (http://nginx.org/r/keepalive/ru), то при наличии свободного соединения (в котором не обрабатывается запрос) - будет использоваться это соединение, в противном случае открываться новое. 3. Если вы установили параметр max_conns у директивы server, то при превышении данного значения nginx будет пытаться выбрать другой сервер, а при неудаче - возвращать ошибку. 4. Откладывать nginx умеет только в коммерческой версии с помощью директивы queue (http://nginx.org/r/queue/ru). -- Валентин Бартенев _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru