_
| |
_ __ __ _ _ __ _ _| |_ ___
| '_ \ / _` | '__| | | | __/ _ \
| | | | (_| | | | |_| | || (_) |
|_| |_|\__,_|_| \__,_|\__\___/ .TIGERB.cn
An object-oriented multi process manager for PHP
Version: 0.3.5
composer create-project tigerb/naruto naruto --prefer-dist && cd naruto
use Naruto\Manager;
use Naruto\Process;
use Exception as Ex;
use App\Demo\Test;
/**
* example
*
* $config = [
* 'passwd' => '123456', // unix user passwd
* 'worker_num' => 5, // worker start number,
* 'os' => 'Linux' // os type
* ]
* new Manager($config, $closure)
*/
$instance = new Manager([], function (Process $worker) {
// mock business logic
$instance = new Test();
$instance->businessLogic();
$instance->dbTest();
}
);
export NARUTO_PATH=$(pwd) && export PATH="$PATH:$NARUTO_PATH/bin"
composer install
naruto start/reload/quit/stop
- start <worker-num> <passwd>: start the naruto
- reload: gracefully quit&start the worker process
- quit: gracefully exit
- stop: forcefully exit
- δΈζ
- English
- Implement a shell script to control the process
- Implement a daemon for worker by the master
- Optimize log
- Use a lightweight Orm Metoo
- Implement max execute times for the worker process
- Add config file
- Implement email send when the worker in a exception&error
- Add config reload strategy