Изменить размер пула приложений Passenger во время выполнения

Можно ли изменить размер пула приложений Passenger во время выполнения? Т.е. без перезапуска apache и без нарушения работы активных посетителей?

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

1 ответ

Решение

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

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

Нет переменной PoolSize. Однако существует MaxPoolSize, но этот предел не должен быть достигнут, если вы не получаете большой трафик.

Вы можете найти все переменные вместе с тем, что они делают здесь: http://www.modrails.com/documentation/Users%20guide.html

Если вы действительно хотите изменить настройки динамически, вы можете попробовать позвонить sudo /etc/init.d/apache2 reload, Это сообщит apache о необходимости перезагрузить его настройки, включая конфигурацию пассажира.

Удачи!

Другие вопросы по тегам