PHP curl получить запрос медленная скорость - PullRequest
0 голосов
/ 10 мая 2018

Я использую curl в пользовательской Zend Framework библиотеке, чтобы сделать GET запрос к Drupal веб-сайту. На конце Drupal я использую остальные страницы экспорта, которые получают запрос get и возвращают некоторые данные.

Это моя curl структура запроса в ZF2

$this->chanel = curl_init();
curl_setopt($this->chanel, CURLOPT_URL, "SOME URL LINK");
curl_setopt($this->chanel, CURLOPT_TIMEOUT, 30); 
curl_setopt($this->chanel, CURLOPT_RETURNTRANSFER,1);
curl_setopt($this->chanel, CURLOPT_USERAGENT, 'Mozilla/5.001 (windows; U; NT4.0; en-US; rv:1.0) Gecko/25250101');
$result=curl_exec ($this->chanel);
curl_close ($this->chanel);

Оба Drupal и Zend Framework веб-сайта расположены на моем localhost .

Время выполнения обычно составляет около 15 секунд . Это слишком долго.

Я попробовал ту же ссылку с клиентом рестлета (расширение Chrome) , и для выполнения и получения данных требуется около 1 секунда или меньше.

У вас есть предложения, почему он такой медленный и как я могу улучшить скорость?

Ответы [ 2 ]

0 голосов
/ 13 мая 2018

Пожалуйста, используйте ip address вместо hostname.Если ваш Drupal находится на одной машине с вашим приложением ZF2, вы можете использовать 127.0.0.1.Я думаю, что это может быть вызвано поиском DNS.

0 голосов
/ 10 мая 2018

Попробуйте добавить в свой код некоторые логгеры, поставить метки времени в различных блоках кода и внутри функций, проверить, занимает ли curl время или что-то еще?Для устранения проблемы с производительностью ставьте метки времени и регистраторы после каждой строки.

Также попробуйте использовать его из командной строки следующим образом:

curl --get "URL HERE"

И проверьте, быстро он или нет, если быстро,код, который вы считаете медленным, попробуйте выполнить прямую команду из вашего кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...