@eugeneledenev

Почему VPS по API получает 300 запросов и потом перестает получать ответы от сервера?

Есть скрипт, который получает данные по API.(см.ниже)
Объем данных большой(30тыс товаров). За каждый Запуск получается информация на 100 товаров, время работы примерно 40сек/100товаров. Запускается через крон.
На локалке работает. А вот на сервере происходит получение 300-500 товаров и источник как-бы перестает отдавать данные. Первоначально скрипт просто подвисал, затем я добавил тайм-аут на соединение CURLOPT_CONNECTTIMEOUT в 5 сек и все соединения рвутся по таймауту(стандартное время отдачи 0,2-0,8 сек в зависимости от загрузки сервера-источника). Время выполнения 502-503сек, как раз 5сек*100товаров.
Не могу понять почему на локалку все отдается, а на VPS сервер немецкий ограниченное количество по выдаче. Так же пробовал на другой VPS(в РФ), отработал около 1200 товаров, полет нормальный. Впечатление что проблемные настройки сервера.

if ($curl = curl_init()) {
        // устанавливаем параметры предстоящего запроса
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_HTTPHEADER, array("Accept: application/xml", "Content-Type: application/xml", "Authorization: Basic " . base64_encode($USER_NAME.":".$USER_PASS)));
        curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
        curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5);//Сколько времени ждем ответ от сервера в секундах.
        $out = curl_exec($curl);
  • Вопрос задан
  • 88 просмотров
Пригласить эксперта
Ответы на вопрос 2
dimonchik2013
@dimonchik2013
non progredi est regredi
fail2ban например

банит хецнеры и тп
Ответ написан
Комментировать
opium
@opium
Просто люблю качественно работать
Кончились ресурсы на впс
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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