dreamcat / framework_swoole
喵框架核心支持swoole的版本
v0.1.1
2019-12-04 09:08 UTC
Requires
- php: >=7.2
- ext-swoole: >=4.4
- dreamcat/cat_frame_core: ^0.4
- dreamcat/chan_pool: ^1
- dreamcat/framework_db_factory: ^1
- dreamcat/swoole_http_2_psr: ^1
Requires (Dev)
- phpunit/phpunit: ^8
- swoole/ide-helper: ^4.4
This package is auto-updated.
Last update: 2024-11-13 14:22:16 UTC
README
介绍
喵框架核心支持swoole的版本
安装教程
composer require dreamcat/framework_swoole
使用说明
使用如下代码即可。切忌,为了避免一些不必要的重启,尽最大可能利用reload,一定不要在 start 之前引入 autoload.php。
<?php
use DreamCat\FrameSwoole\SwooleEntrance;
require_once "src/main/SwooleEntrance.php";
SwooleEntrance::start();
基于上述代码中,除修改下述文件外均无需重启服务:
- 入口文件
- src/main/SwooleEntrance.php
- configs/swoole.php
- cache/configs/swoole.php
配置说明
swoole.php
为了尽量减少必须重启进程的必要,swoole 启动前引入的文件会最少化,所以启动前必须读取的配置就独立放在 configs/swoole.php
和 cache/configs/swoole.php
中。
host
string
选填,默认值127.0.0.1
,用来指定监听的ip地址。 如127.0.0.1
,或者外网地址,或者0.0.0.0
监听全部地址。port
int
选填,默认值0
,监听的端口。如果使用0则会随机使用一个可用端口号,并将端口号写入cache/swoole.port
文件中。name
string
选填,默认值cat_frame_swoole
,进程名前缀。configReader
string
选填,默认值DreamCat\FrameSwoole\Factory\Impl\SwooleConfigReader
。配置读取器创建工厂类,必须实现接口DreamCat\FrameSwoole\Factory\ConfigReaderFactory
。containerFactory
string
选填,默认值DreamCat\FrameSwoole\Factory\Impl\SwooleContainerFactory
。容器工厂的工厂类,必须实现接口DreamCat\FrameSwoole\Factory\RegeditContainerFactoryFactory
。settings
array
选填,可填的字段和相应值参考 swoole 选项文档,执行时会直接将此字段传入set
方法。 在不进行配置的情况下下述字段会设置为默认值:reactor_num
SWOOLE_CPU_NUM * 2
worker_num
SWOOLE_CPU_NUM * 2
daemonize
1
log_file
项目根目录下的cache/logs/swoole.log
log_level
4
,即 _SWOOLE_LOGWARNINGpid_file
项目根目录下的cache/swoole_server.pid
swooleModify.php
用来调整某些不适用于swoole的配置,会覆盖 config.php
。
todo
- 直接配置为bean的池子,而不用自己写工厂方法
- 加入自定义Worker进程类
- 加入自定义启动事件
- 加入task体系