сервер достиг настройки pm.max_children при использовании событий на стороне сервера

Я использую сервер Oracle Ampere 4 core 16 ГБ для размещения моего веб-приложения php. Для сервера я выбрал NGINX с PHP FPM, там я использую простой цикл обработки событий на стороне сервера, чтобы установить постоянное соединение с каждым клиентом. Но когда несколько пользователей одновременно вошли в систему, сервер перестает отвечать на запросы. В журнале ошибок FPM отображается следующее:

сервер достиг настройки pm.max_children (5), рассмотрите возможность ее повышения
ВНИМАНИЕ: Прекращение…
ВНИМАНИЕ: выходя, пока-пока!

Мой веб-сайт обычно должен обрабатывать более 200 одновременных подключений. Поэтому я выбрал SSE, так как было упомянуто, что он более эффективен, чем короткий опрос.
Можно ли решить эту проблему увеличением количества детей?
Есть ли риск превышения ресурсов сервера при этом?
Должен ли я прекратить использовать SSE или каковы ваши рекомендации?

Большое спасибо! Упрощенная версия моего php-скрипта приведена ниже,

<?php
ob_implicit_flush(1);
ob_end_clean();
set_time_limit(0);

header('X-Accel-Buffering: no');
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');

$var = $_GET["something"];


//SQL qry to write a value to database



    while (true) {
        if (connection_aborted() == 1) {
            break;
        }

        //another sql qry to check for changes in a value;
        //if value has changed echo 'something';

        sleep(100);
              
    }

    mysqli_close($con);
    exit();

?>

nginx ubuntu php-fpm

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *