http://m.wtbis.cn/doc/webman#/process?id=%e9%85%8d%e7%bd%ae%e6%96%87%e4%bb%b6%e8%af%b4%e6%98%8e
這里缺少一個(gè)配置services ,文檔里面沒(méi)有,這是看意思是想做進(jìn)程內(nèi)再開(kāi)一個(gè)端口監(jiān)聽(tīng)
不然start.php中 如下代碼不會(huì)起作用
foreach ($config['services'] ?? [] as $server) {
if (!class_exists($server['handler'])) {
echo "process error: class {$config['handler']} not exists\r\n";
continue;
}
$listen = new Worker($server['listen'] ?? null, $server['context'] ?? []);
if (isset($server['listen'])) {
echo "listen: {$server['listen']}\n";
}
$class = Container::make($server['handler'], $server['constructor'] ?? []);
worker_bind($listen, $class);
$listen->listen();
}
process.php
<?php
use support\view\Raw;
use support\view\Twig;
use support\view\Blade;
use support\view\ThinkPHP;
return [
// 文件更新檢測(cè)
'monitor' => [
'handler' => process\FileMonitor::class,
'constructor' => [
// 監(jiān)控這些目錄
'monitor_dir' => [
app_path(),
config_path(),
base_path() . '/process',
base_path() . '/support',
base_path() . '/resource'
],
// 監(jiān)控這些后綴的文件
'monitor_extenstions' => [
'php', 'html', 'htm'
]
],
'services'=>[ //注意這里
[
'handler' => process\Test::class,
'listen' => "http://127.0.0.1:8090",
],
]
],
// 其它進(jìn)程
/*'websocket' => [
'handler' => process\Websocket::class,
'listen' => 'websocket://0.0.0.0:8888',
'count' => 10,
],*/
];