Асинхронные Запросы HTTP в PHP

Regexps намного быстрее для использования, конечно, и они только проверяют то, что определяется в RFC. Записать пользовательский синтаксический анализатор? Что? Требуется 10 секунд для использования regexp.

15
задан Alix Axel 20 May 2010 в 15:29
поделиться

2 ответа

Да, в зависимости от трафика вашего сайта создание отдельного процесса PHP для запуска скрипта может быть разрушительным. Было бы более эффективно использовать shell_exec () для запуска фонового процесса, который сохраняет вывод в имя файла, которое вам уже известно, но даже это может потребовать значительных ресурсов.

Вы также можете сохранить очередь запросов в базе данных. Одиночный, отдельный фоновый процесс извлечет задание, выполнит его и сохранит вывод, возможно, установив флаг в БД, который может проверить ваш веб-процесс.

Если вы собираетесь использовать подход очереди БД, используйте curl_multi * класс функций для одновременной отправки всех запросов в очереди. Это ограничит время выполнения каждой итерации в фоновом процессе самым длинным временем запроса.

9
ответ дан 1 December 2019 в 04:47
поделиться

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

Ознакомьтесь со следующей статьей: «Разработка многозадачных приложений с PHP V5» из IBM DeveloperWorks. Вы можете найти его здесь http://www.ibm.com/developerworks/web/library/os-php-multitask/

3
ответ дан 1 December 2019 в 04:47
поделиться
Другие вопросы по тегам:

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