SonkoDmitry
@SonkoDmitry
Веб разработчик

Ошибка 502 Bad Gateway на POST запросах. Почему?

В админке есть загрузчик изображений и их ресайз. Именно на пост запросах загрузки изображений стали появляться в логах 502е ошибки.
ab -n 1000 -c 10 host - не выдает ни одной. Куда в какую сторону копать?
listen.backlog, sysctl net.core.somaxconn, worker_connections все выставлены по 1024.
Нехватки памяти нет.

В логи сыпется следующее
[22-Dec-2015 17:15:03] WARNING: [pool takeguru] child 3275 exited on signal 9 (SIGKILL) after 89.296408 seconds from start
[22-Dec-2015 17:15:03] NOTICE: [pool takeguru] child 3299 started

2015/12/22 17:15:03 [error] 3097#0: *146 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 5.140.73.87, server: cp.takeguru.com, request: "POST /image/upload?guru_id=9 HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm-takeguru.sock:", host: "cp.takeguru.com", referrer: "cp.takeguru.com/image/create?guru_id=9"
  • Вопрос задан
  • 1287 просмотров
Пригласить эксперта
Ответы на вопрос 2
VladimirAndreev
@VladimirAndreev
php web dev
а что говорят логи бекэнда?
Ответ написан
@xtreme
Снимаю порчу по SSH :)
child 3275 exited on signal 9 (SIGKILL) after 89.296408 seconds from start

Что-то PHP делает с залитым вами файлом целых 90 секунд, после чего fpm его успешно убивает, как повисший. Смотрите обработку файла картинки при POST-запросе. Возможно не стоит обрабатывать его сразу, а для начала сохранить оригинал, чтобы отпустить коннект, а уже потом проводить над ним какие-то магические действия в виде обрезки, конвертации, накладывания водяных знаков и т.д.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы