@KRHD

Что быстрей file_get_contents | Sockets | cURL?

Или есть варианты лучше чем перечисленные выше?
  • Вопрос задан
  • 1263 просмотра
Пригласить эксперта
Ответы на вопрос 3
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
разница в пределах погрешности, все три варианта используют сокеты так или иначе и упретесь вы I/O тех самых сокетов.
Ответ написан
alekciy
@alekciy
Вёбных дел мастер
Если основная задача это получение данных по сети, то, как уже сказали выше, все равно все будет идти через сокеты. Так что скорость тут реально в пределах погрешности. Поэтому выбирать нужно исходя из удобства использования и задачи. file_get_contents с заданием контекста довольно высокоуровневый, подходит в принципе только для задачи "что-то получить из сети, таймаут на действия такой-то". Sockets напротив низкоуровневый. Позволяет очень многое, но требует хорошего понимания работы с сетью. cURL по середине. Он достаточно высокоуровневый что бы сказать ему "возьми вот этот тут" не погружаясь в тонкости установления соединения, но при этом позволяет подкручивать низкоуровневые места в случае надобности.

Т.е. принцип выбора достаточно прост: 1) нужно что-то получить из сети с возможность задать таймаут и результат "ответ получен ок"/"возникла проблема" и нужно запилить в одну строку, то file_get_contents; 2) нужно больше возможностей при установлении соединения, то cURL; 3) если точно известно, почему cURL не подходит, то начинаем использовать Sockets.
Ответ написан
Комментировать
@SerdarAD
У меня была большая разница между cURL и file_get_contents , в ~10 секунд
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
25 апр. 2024, в 14:44
10000 руб./за проект
25 апр. 2024, в 14:44
250 руб./в час