параллельные загрузки в PHP - PullRequest
       10

параллельные загрузки в PHP

7 голосов
/ 28 октября 2010

Я хочу скачать (или просто file_get_contents) для 5 мест.Я жду, скажем, 1,2 секунды для каждого, что означает всего 1,2X5 = 6 секунд.Я хочу сэкономить время ожидания.Я думал, что я мог бы подождать 1,3 секунды достаточно.Как я могу подойти?

Ответы [ 4 ]

8 голосов
/ 28 октября 2010

Вы можете использовать функции curl_multi _ * для параллельной загрузки.

2 голосов
/ 28 октября 2010

это возможно, но только путем создания нескольких потоков вне PHP

Если PHP-скрипты выполняются в одном потоке, то есть они могут выполнять только 1 задачу за раз, единственный способ сделать это с помощью PHP - создать / использовать внешнее приложение, установленное / размещенное на вашем сервере, и использовать exec. сделать это и ждать ответа от exec, или использовать функции fork_ *, чтобы иметь возможность погружаться и погружаться в потоки.

1 голос
/ 28 октября 2010

Для начала вы можете запустить загрузки параллельно, разветвив их в фоновом режиме, используя php's popen: http://www.php.net/manual/en/function.popen.php

0 голосов
/ 28 октября 2010

http://code.google.com/p/multicurl-library/

Кстати. Вы ищете неблокирующие соединения.

...