PHP Classes

File: README.md

Recommend this page to a friend!
  Classes of Alexandre Sinício   PHP Async Executor   README.md   Download  
File: README.md
Role: Documentation
Content type: text/markdown
Description: Documentation
Class: PHP Async Executor
Run PHP scripts in parallel using the CLI version
Author: By
Last change:
Date: 2 years ago
Size: 1,328 bytes
 

Contents

Class file image Download

Async Processor

This a simple class that can help spawning CLI processes, either as "run-and-forget" or "run-and-keep-running" modes.

Usage

Run-and-forget

Useful when you want to spawn a CLI process and make it run in the background. You will NOT get any return from the process itself.

Basic usage:

$async = new AsyncExecutor('/usr/bin/php');
$async->runProcess('path_to_script', ['param01', 'param02']);

Run-and-keep-running

Useful when you want to spawn CLI processes and keep them running no matter what.

The class monitors the PID of the processes to check if they are still running, and restarts automatically if needed.

Basic usage:

$async = new AsyncExecutor('/usr/bin/php');
$multiAsync = new AsyncMultiProcess($async);
$multiAsync->addProcess(new AsyncProcess('instance_01', 'path_to_script_01', ['param01']));
$multiAsync->addProcess(new AsyncProcess('instance_02', 'path_to_script_02', ['param02', 'param03']));
$multiAsync->keepRunningProcesses();

If a process fails to execute due to a non-existing script, you can set the time the class will wait to retry the execution (default, 5 seconds).

You can also configure the AsyncMultiProcess to abort execution if non-existing script is detected, effectively canceling everything (running processes will not be closed, though).