Files
webman-buildadmin/config/process.php

101 lines
3.5 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
/**
* This file is part of webman.
*
* Licensed under The MIT License
* For full copyright and license information, please see the MIT-LICENSE.txt
* Redistributions of files must retain the above copyright notice.
*
* @author walkor<walkor@workerman.net>
* @copyright walkor<walkor@workerman.net>
* @link http://www.workerman.net/
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
use support\Log;
use support\Request;
use app\process\Http;
global $argv;
return [
'webman' => [
'handler' => Http::class,
'listen' => 'http://0.0.0.0:7979',
'count' => cpu_count() * 4,
'user' => '',
'group' => '',
'reusePort' => false,
'eventLoop' => '',
'context' => [],
'constructor' => [
'requestClass' => Request::class,
'logger' => Log::channel('default'),
'appPath' => app_path(),
'publicPath' => public_path()
]
],
// 游戏期号:自动创建下一期(依赖 game_config.period_auto_create_enabled
'gamePeriodAutoTicker' => [
'handler' => app\process\GamePeriodAutoTicker::class,
'count' => 1,
'reloadable' => false,
],
'gameLiveTicker' => [
'handler' => app\process\GameLiveTicker::class,
'count' => 1,
'reloadable' => false,
],
/** 热点缓存写队列消费者(与 GAME_HOT_CACHE_ENABLE_WRITE_QUEUE 配合) */
'gameHotDataQueueConsumer' => [
'handler' => app\process\GameHotDataQueueConsumer::class,
'count' => 1,
'reloadable' => false,
],
// 充值订单:超时未支付自动失败(每 10 秒扫描一次)
'depositOrderExpireTicker' => [
'handler' => app\process\DepositOrderExpireTicker::class,
'count' => 1,
'reloadable' => false,
],
// 渠道结算:按渠道周期自动结算(超管逻辑)
'channelAutoSettleTicker' => [
'handler' => app\process\ChannelAutoSettleTicker::class,
'count' => 1,
'reloadable' => false,
],
// 后台测试页 WebSocket 连接服务(供 /admin/test/gameCurrentStatus 联调)
'gameWebSocketServer' => [
'handler' => app\process\GameWebSocketServer::class,
'listen' => env('H5_WEBSOCKET_LISTEN', 'websocket://0.0.0.0:3131'),
'count' => 1,
'reloadable' => false,
],
// File update detection and automatic reload
'monitor' => [
'handler' => app\process\Monitor::class,
'reloadable' => false,
'constructor' => [
// Monitor these directories
'monitorDir' => array_merge([
app_path(),
config_path(),
base_path() . '/process',
base_path() . '/support',
base_path() . '/resource',
base_path() . '/.env',
], glob(base_path() . '/plugin/*/app'), glob(base_path() . '/plugin/*/config'), glob(base_path() . '/plugin/*/api')),
// Files with these suffixes will be monitored
'monitorExtensions' => [
'php', 'html', 'htm', 'env'
],
'options' => [
// Windows 下也需监测 PHP 变更并 reload否则长期占用旧版 Admin 等类
'enable_file_monitor' => !in_array('-d', $argv),
'enable_memory_monitor' => DIRECTORY_SEPARATOR === '/',
]
]
]
];