Запустите несколько файлов PHP с помощью командной строки PHP или SSH
У меня 137 php-файлов, я хочу запустить их одной командой (параллельно), а не последовательно. Но проблема в том, что каждый файл занимает 2-5 секунд. Поэтому я попытался создать файл (.sh) и поместить каждую строку как:
/usr/bin/php /files/file1.php
/usr/bin/php /files/file2.php
/usr/bin/php /files/file3.php
Он завершит файл1, а затем последовательно запустит файл2 и файл3. Поэтому, пожалуйста, назовите команду php или sh для запуска 137 файлов php одним щелчком мыши (параллельно).
2
Author: Qantas 94 Heavy, 2012-07-08
3 answers
Вы помещаете их в фоновый режим.
for ($i=1; $i<=137; $i++) {
exec("/usr/bin/php /files/file$i.php > /dev/null 2>&1 &");
}
4
Author: xdazz, 2012-07-08 08:09:48
Запустите сценарии в фоновом режиме, добавив "nohup" и "&"
nohup /usr/bin/php /files/file1.php &
nohup /usr/bin/php /files/file2.php &
nohup /usr/bin/php /files/file3.php &
1
Author: Mendhak, 2012-07-08 08:11:25
Вы можете использовать библиотеку pcntl, которая включает потоки в php, вы можете использовать ее и создать php-мастер-файл, который вызовет другой, а затем вы можете создать мастер-файл из командного файла
0
Author: ManMohan Vyas, 2012-07-08 08:11:27