comos / qpm
PHP快速进程管理框架。简化PHP守护进程开发
Requires
- php: >=5.3.0
- psr/log: ~1.0
Requires (Dev)
- monolog/monolog: ~1.13
- phpunit/phpunit: ~4.0
Suggests
- monolog/monolog: an implementor of PSR-3
This package is not auto-updated.
Last update: 2024-09-15 23:27:05 UTC
README
QPM全名是PHP快速(或Q的)进程管理框架。PHP是强大的web开发语言,以至于人们常常忘记PHP可以用来开发健壮的命令行(CLI)程序,甚至守护进程程序。编写守护进程程序不可避免地要与各种进程管理打交道。QPM正是一个为了简化进程管理而开发的类库。
QPM是一个专门针对*nix CLI编程的框架,不适用于Windows环境和CGI编程。
QPM 目前包括4个主要的子模块:
- Process:基础进程管理,包括面向对象的fork封装;
- Supervision:进程监控,实现了OneForOne、MultiGroupOneForOne 和 TaskFactoryMode 三种模式;
- Pid:支持PID文件管理;
- Log:实现了用于测试的简易文件日志,同时支持接入Psr标准的日志实现,例如Monolog。
examples目录下有若干使用的示例,tests是测试用例所在的目录。
QPM也支持通过Composer安装:composer require comos/qpm
也可通过其他方式下载并部署QPM,参考安装和使用QPM。
QPM 运行时,必须使用autoloader,强烈建议使用Composer自带的autoloader,否则需要自行注册autoload回调,可参考:autoload.php
通过Wiki 可以获取更多信息。
QPM 最新版本是v1.0,与之前的v0.3有较大的变化,使用时请留意兼容性问题,如果没有修改代码的计划,请不要从v0.3升级到v1.0。
QPM的完整名称是PHP快速进程管理框架。
PHP在web开发中非常强大,以至于人们常常忘记它可以用来编写健壮的命令行(CLI)程序,甚至是守护进程程序。进程管理是守护进程编程的基础。QPM就是这样的一个库,用于简化进程管理。QPM是基于*nix系统的CLI编程框架。它不适用于Windows环境和CGI环境。
它包含四个主要组件
- Process:基础进程管理,包括pcntl_fork的面向对象封装;
- Supervision:进程监控,支持one-for-one模式、多组one-for-one模式和任务工厂模式;
- Pid:管理PID文件以防止守护进程重复启动。
- Log:包括用于测试的基于文件的简单Logger,同时支持接入PSR-3标准,因此您可以将QPM连接到任何PSR-3实现者,例如Monolog。
我们在‘examples’目录中提供了丰富的使用示例。
该库得到了良好的单元测试,所有测试都在‘tests’目录中。
您可以通过composer安装QPM
composer require comos/qpm
注意:最新版本v1.0与v0.3不兼容。如果您正在使用v0.3或更早的版本,请在重构和测试之前不要升级库。
获取和使用QPM的其他方式,请参阅入门。