https://github.com/tigerb/naruto
An object-oriented multi process manager for PHP :robot:
https://github.com/tigerb/naruto
php php-cli php-framework php-library php-multi-process php-task task-manager
Last synced: 13 days ago
JSON representation
An object-oriented multi process manager for PHP :robot:
- Host: GitHub
- URL: https://github.com/tigerb/naruto
- Owner: TIGERB
- License: mit
- Created: 2017-11-17T00:35:29.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-05-19T08:13:35.000Z (11 months ago)
- Last Synced: 2024-10-29T11:11:20.746Z (6 months ago)
- Topics: php, php-cli, php-framework, php-library, php-multi-process, php-task, task-manager
- Language: PHP
- Homepage: http://naruto.tigerb.cn
- Size: 60.5 KB
- Stars: 135
- Watchers: 12
- Forks: 33
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
```
_
| |
_ __ __ _ _ __ _ _| |_ ___
| '_ \ / _` | '__| | | | __/ _ \
| | | | (_| | | | |_| | || (_) |
|_| |_|\__,_|_| \__,_|\__\___/ .TIGERB.cn
An object-oriented multi process manager for PHPVersion: 0.5.0
```
# How to use?
### Install
```
composer create-project tigerb/naruto naruto --prefer-dist && cd naruto
```### Business code
```php
new Manager([], function (Process $worker) {
// mock business logic
(new Test())->businessLogic();
}
);
```### Run
> echo export NARUTO_PATH=$(pwd) >> ~/.profile && echo 'export PATH="$PATH:$NARUTO_PATH/bin"' >> ~/.profile && source ~/.profile
> composer install
```
naruto start/reload/quit/stop
```### Manager process
- start \ \: start the naruto
- reload: gracefully quit&start the worker process
- quit: gracefully exit
- stop: forcefully exit# Specification
- [中文](./docs/specification-zh.md)
- English# TODO
- [x] Implement a shell script to control the process
- [x] Implement a daemon for worker by the master
- [x] Optimize log
- [x] Use a lightweight Orm [Metoo](https://github.com/catfan/Medoo)
- [x] Implement max execute times for the worker process
- [x] Add config file
- [x] Remove a lightweight Orm [Metoo](https://github.com/catfan/Medoo) for keep lightweight @2019/03/23
- [ ] Implement email send when the worker in a exception&error
- [ ] Add config reload strategy