У меня есть этот сайт PHP, который делает несколько сложных вызовов ajax. Они занимают около 8-10 секунд и общаются с большим количеством сторонних API через запросы cURL.
Когда эти вызовы ajax продолжаются, остальная часть сайта не отвечает. Не только эта страница, но и другая вкладка браузера на другой странице.
что я должен проверить, чтобы убедиться, что PHP способен развернуть несколько процессов, чтобы сайт не зависал?
PHP работает как PHP-fpm
location ~ \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name; fastcgi_buffers 256 64k; fastcgi_buffer_size 2400k; fastcgi_read_timeout 6000; uwsgi_read_timeout 6000; include fastcgi_params; }
И nginx имеет достаточные рабочие процессы
user www-data; worker_processes 16; pid /var/run/nginx.pid; events { worker_connections 8000; multi_accept on; }
Кроме того, я тестировал со сном () и длинным циклом. Оба они в порядке. Кажется, только вызовы cURL на внешние сайты, которые вызывают проблему.
Не уверен, чего не хватает.
Благодаря!