Как увеличить количество потоков для Rails, использующих Passenger? - PullRequest
0 голосов
/ 27 июня 2018

У меня есть приложение Ruby on Rails, которое получает очень большой объем запросов в очень специфические моменты времени, и иногда очередь запросов Пассажира превышает 100, а пользователи получают 503.

Как установить большее количество потоков?

Я использую Passenger и Nginx, развертывание с Capistrano с использованием самоцвета capistrano-passenger.

1 Ответ

0 голосов
/ 27 июня 2018

Эта статья в Phusion Passenger, кажется, прямо отвечает на ваш вопрос и дает некоторые рекомендации по связанным вопросам.

Шаг 3: настроить Пассажира

Чисто однопоточные многопроцессные сценарии

Настройка:

passenger_max_pool_size <desired_app_processes>;
passenger_min_instances <desired_app_processes>;
passenger_pre_start to have your app started automatically at web server boot.

Многопоточные сценарии

Чтобы использовать многопоточность, вы должны использовать Passenger Enterprise. версия Passenger с открытым исходным кодом не поддерживает многопоточность.

Настройка:

passenger_max_pool_size <CHOSEN_NUMBER_OF_PROCESSES>;
passenger_min_instances <CHOSEN_NUMBER_OF_PROCESSES>;
passenger_concurrency_model thread;
passenger_thread_count <desired_app_threads_per_process>;
passenger_pre_start to have your app started automatically at web server boot.
If desired_app_processes is 1, then you should set passenger_spawn_method direct. By using direct spawning instead of

умное порождение, Пассажир не будет держать процесс Preloader вокруг, экономя память (узнайте больше о методах Spawn). Это потому что процесс Preloader бесполезен, когда есть только 1 приложение процесс.

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