Задать вопрос
rexido
@rexido
Очень плохой человек )

Connection timed out after 15000 milliseconds?

Есть такая проблема (
При кроссерверных запросах иногда выпадает следующая ошибка "Connection timed out after 15000 milliseconds" , на php установлен timeout 15 сек.
Каждую минуту на удаленные хосты в среднем отправляется 300 запросов и в таком режиме каждые 15 мин происходит от 1 - 10 таких ошибок. Если после такой ошибки снова отправить такой же запрос, на тот же хост - он мгновенно пройдет . Это может возникать при запросах на любые удаленные хосты.
Установлен входящий nginx proxy .
Архитектура сервера : host (nginx proxy, kvm host) -> virtual machine (nginx, php ...) везде ubuntu server 16.04
Как решить эту проблему?
  • Вопрос задан
  • 2816 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 4
shambler81
@shambler81 Куратор тега Linux
нельзя выставлять столь длинные значения таймаута, смысл его тогда теряется.
Стольо длинные хиты это явно или выгрузки или работа по апи.
А следовательно наличие сервера с той стороны и доступности его не дело nginx
а легко решается в самом скрипте обмена.
Что же касается времяни то именно для этого скрипта можно сделать исключение позволяющее делать таймаут вплоть до -1
Но при этом общая система не пострадает.
Ответ написан
Комментировать
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
попробуйте увеличить число одновременно открытых дескрипторов файлов в /etc/security/limits.conf - по умолчанию - 1024
*		soft nofile	65535
*		hard nofile	65535

Ну и сами удаленные хосты тоже могут не отвечать иногда, их право!
Ответ написан
@younghacker
Запросы небольшие?
Что делает другой сервер при этом?
Проверьте использование памяти (свап), диска, нагрузку сети и процессора как на гипервизор так и на виртуалки.
Просмотрите логи виртуалки нет ли там ошибок от что виртуалка замирает.
Попробуйте отправлять ежесекундно мелкие udp/tcp запросы в обе стороны и пишите их в файл. Отправляемые данные пронумеруйте и затем посмотрите не выпадает ли что-то. Поснифьте tcpdump-ом трафик который отправляете/принимаете с обеих сторон.
Проверить драйвера сетевых карт.
Посмотреть настройки и статистику файрвола.
Ответ написан
Комментировать
rexido
@rexido Автор вопроса
Очень плохой человек )
Проверьте использование памяти (свап), диска, нагрузку сети и процессора как на гипервизор так и на виртуалки.
С этим все норм ...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
22 дек. 2024, в 20:40
10000 руб./за проект
22 дек. 2024, в 20:34
3000 руб./за проект
22 дек. 2024, в 20:12
10000 руб./за проект