Моим фаворитом является wrr (взвешенный циклический алгоритм). Действительно ли я прав в предположении, что Вы используете подход DR (прямая маршрутизация)?
В этом случае ipvsadm не видит соединение как таковое, так как ответ от RS (реальный сервер) перейдет непосредственно к клиенту - не назад через LB.
У вас есть pm.min_spare_servers = 20
, и он опускается ниже предела в 20 бездействующих детей и порождает больше, чтобы вернуться к количеству min_spare_servers. Уменьшите это, чтобы уменьшить частоту этого. Он призван противодействовать скачкам нагрузки и иметь достаточное количество детей, чтобы удовлетворить спрос.
почему дети порождаются, даже если я не достигаю значения max_children?
Потому что это максимум. Как только вы достигнете максимума, больше не будет создаваться, но до этого момента PHP-FPM будет добавлять рабочих, когда ему потребуется дополнительная мощность. С вашими настройками у вас всегда будет не менее 20 серверов, не более 161, и FPM добавит серверы, когда менее 20 простаивают, и удалит серверы, когда более 40 простаивают.
больше не будет создаваться, но до этого момента PHP-FPM будет добавлять рабочих, когда ему потребуется дополнительная мощность. С вашими настройками у вас всегда будет не менее 20 серверов, не более 161, и FPM добавит серверы, когда менее 20 простаивают, и удалит серверы, когда более 40 простаивают. больше не будет создаваться, но до этого момента PHP-FPM будет добавлять рабочих, когда ему потребуется дополнительная мощность. С вашими настройками у вас всегда будет не менее 20 серверов, не более 161, и FPM добавит серверы, когда менее 20 простаивают, и удалит серверы, когда более 40 простаивают.