2015-04-10 10 views
7
  • CMS to Elxis, który pochodzi z wariantu Joomla (PHP).
    • Serwer jest uruchomiony nGinx z PHP-FPM
    • Wszystkie prośby się zalogować i wykonywane, w końcu, B U T !!!

Podczas wypalania konkretny wniosek za pośrednictwem pasku adresu, żądanie zostanie wykonany natychmiast. Jednakże, gdy wystrzelony przez ajax (przez jQuery), to samo żądanie ma bardzo dziwne zachowanie.NGINX/PHP-FPM: Ajax powolne pierwsze żądanie, dobre następne

Mianowicie: Pierwsze żądanie (na menedżerze mediów), aby wyświetlić szczegóły obrazu, należy wystrzelić z Ajax. Jest zalogowany w przeglądarce, ale nie na serwerze ... Jeszcze nie ... Po dobrych 40-50 sekundach żądanie pojawia się na serwerze, a następnie natychmiast reaguje.

Wszystkie następujące żądania są wykonywane natychmiast, bez problemu. Tylko pierwszy z nich jest szorstka ..

Jestem w kłopocie, ponieważ nie ma żadnego błędu zalogowany wszędzie: Wszystko wydaje się rozsądny, z wyjątkiem lag na pierwsze żądanie połączenia z serwerem ...

Jest nie routing (strona już jest uruchomiona i żądania zostały dostarczone), to nie jest rozdzielczość (ip jest w moim pliku/etc/hosts).

I dodać trochę wiśni na wierzchu ciasta, próbując przechwycić pakiety (tcpdump) na serwerze nie produkuje wyjścia: Żądanie jeszcze nie ma ... Próbowano również na kliencie: brak danych wyjściowych - dla co najmniej 40 sekund ...

To wszystko w przeglądarce, programista pokazuje brak błędu, tylko oczekujące żądanie.

Czy którykolwiek z tych dźwięków dzwoni do kogoś?

The server: 
nginx version: nginx/1.6.2 
PHP 5.6.7-1 (cli) 
PHP 5.6.7-1 (fpm-fcgi) 

wersja jQuery 1.11
Klient: próbowałem na Firefox 39 (ubuntu) i chromu 41

+1

Duplikat pisał na serwerze błędu [nginx/PHP-FPM: Ajax zwolnić pierwszy wniosek, dobre następnymi] (http://serverfault.com/questions/681861/nginx-php-fpm-ajax-slow- first-request-good-next-ones). – Paul

+0

@Paul, stackoverflow jest dla kodu, błąd serwera dla usług. Proszę, pomóżcie mi wybrać, który z nich jest w danym przypadku, a ja wycofam nieistniejący jeden z dwóch stanowisk, o których dowiedziałeś się –

+0

? Mam bardzo podobny problem. – Nelssen

Odpowiedz

2

I w obliczu podobnego rodzaju problemu i skończyło się na zwiększenie liczby pracowników PHP-FPM. Użyłem następujących ustawień w www.conf (pool.d), aby rozwiązać problem, z jakim miałem do czynienia. Miałem konfigurację serwera analitycznego, która śledziła odsłony strony, a API odnotowało opóźnienia w wyświetlaniu odsłony 15-20 sekund. Dostrojenie poniższych ustawień rozwiązało mój problem, może mogłoby ci pomóc.

pm = dynamic 
pm.max_children = 5 
pm.start_servers = 2 
pm.min_spare_servers = 1 
pm.max_spare_servers = 3 
Powiązane problemy