Elxis
, который происходит от варианта Joomla (PHP). nGinx
с участием PHP-FPM
При запуске определенного запроса через строку URL-адреса запрос выполняется немедленно. Однако при запуске через ajax (через jQuery) тот же запрос ведет себя очень странно.
А именно: первый запрос (в медиа-менеджере) на просмотр деталей изображения должен быть запущен с помощью Ajax. Он регистрируется в браузере, но не на сервере ... Еще нет ... Через несколько хороших 40-50 секунд запрос появляется на сервере, а затем немедленно откликается.
Все последующие запросы выполняются немедленно, без проблем. Только первый грубый ..
У меня проблемы, потому что нигде не регистрируется никаких ошибок: все кажется нормальным, за исключением задержки первого запроса на доступ к серверу ...
Это не маршрутизация (сайт уже запущен и запросы обслужены), это не разрешение (ip находится в моем файле / etc / hosts).
И чтобы добавить немного вишенки поверх торта, попытка захвата пакетов (tcpdump) на сервере не дает результата: запрос еще не здесь ... Пробовал также на клиенте: нет вывода - по крайней мере 40 секунд .. .
Это все в браузере, консоль разработчика не показывает ошибок, только ожидающий запрос.
Что-нибудь из этого звонит кому-нибудь?
The server:
nginx version: nginx/1.6.2
PHP 5.6.7-1 (cli)
PHP 5.6.7-1 (fpm-fcgi)
jQuery версии 1.11
Клиент: пробовал на Firefox 39 (ubuntu) и Chromium 41
Примечание: я задал тот же вопрос о stackoverflow, так как не могу четко понять, виноват ли это код или архитектура ...
Я столкнулся с подобной проблемой, и в итоге я увеличил количество рабочих php-fpm. Я использовал следующие настройки в www.conf (pool.d), чтобы решить проблему, с которой я столкнулся. У меня была настройка сервера аналитики, который отслеживал просмотры страниц, и была задержка в 15-20 секунд в API, записывающем просмотры страниц. Настройка следующих параметров решила мою проблему, возможно, это может вам помочь.
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3