93 lines
3.1 KiB
PHP
93 lines
3.1 KiB
PHP
<?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,
|
||
],
|
||
|
||
// 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' => [
|
||
'enable_file_monitor' => !in_array('-d', $argv) && DIRECTORY_SEPARATOR === '/',
|
||
'enable_memory_monitor' => DIRECTORY_SEPARATOR === '/',
|
||
]
|
||
]
|
||
]
|
||
];
|