Как настроить одновременный запуск include php?



@fokin_nikolay1989

Добрый вечер, подскажите, как настроить параллельный запуск
<?php
include "connect1.php";
include "connect2.php";
include "connect3.php";
?>

В сети нашел вот такой метод, только вот не пойму как его использовать

if (!isset($_GET['thread'])) {
    system('wget http://localhost/woman.php?thread=make_me_happy');
    system('wget http://localhost/woman.php?thread=make_me_rich');
} elseif ($_GET['thread'] == 'make_me_happy') {
    make_her_happy();
} elseif ($_GET['thread'] == 'make_me_rich') {
    find_another_one();
}


Решения вопроса 0


Ответы на вопрос 2



@sergiks Куратор тега PHP

хрустальный шар подсказывает (в вопросе-то ничего не указано), что речь идёт о параллельном выполнении нескольких веб-запросов. Это лучше делать с помощью curl_multi()

В обычном php не много вариантов для параллельных вычислений. Чтобы соединения с базами данных, запросы и прочие операции выполнялись без блокировки, можно посмотреть например, на Swoole – корутины и асинхронные операции в PHP.



@Vitsliputsli

То что вы описываете — это потоки, но нужен интерпретатор php с их поддержкой и навыки многопоточного программирования.
Как вариант, асинхронные запросы к БД, если драйвер позволяет.
Наиболее простой вариант, сделать независимые скрипты, которые будут забирать данные из БД параллельно, и на последнем этапе писать в 1 xls файл, разумеется, нужно добавить блокировку файла и ожидание ее снятия.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *