103 lines
3.2 KiB
PHP
103 lines
3.2 KiB
PHP
<?php
|
||
|
||
use app\common\websocket\Handler;
|
||
use think\swoole\Table;
|
||
|
||
return [
|
||
'server' => [
|
||
'host' => env('SWOOLE_HOST', '0.0.0.0'), // 监听地址
|
||
'port' => env('SWOOLE_PORT', 20211), // 监听端口
|
||
'mode' => SWOOLE_PROCESS, // 运行模式 默认为SWOOLE_PROCESS
|
||
'sock_type' => SWOOLE_SOCK_TCP, // sock type 默认为SWOOLE_SOCK_TCP
|
||
'options' => [
|
||
'pid_file' => runtime_path() . 'swoole.pid',
|
||
'log_file' => runtime_path() . 'swoole.log',
|
||
'daemonize' => false,
|
||
// Normally this value should be 1~4 times larger according to your cpu cores.
|
||
'reactor_num' => swoole_cpu_num(),
|
||
'worker_num' => swoole_cpu_num(),
|
||
'task_worker_num' => swoole_cpu_num(),
|
||
'enable_static_handler' => true,
|
||
'document_root' => root_path('public'),
|
||
'package_max_length' => 20 * 1024 * 1024,
|
||
'buffer_output_size' => 10 * 1024 * 1024,
|
||
'socket_buffer_size' => 128 * 1024 * 1024,
|
||
'heartbeat_idle_time' => 600, // 一个连接如果600秒内未向服务器发送任何数据,此连接将被强制关闭
|
||
'heartbeat_check_interval' => 60, // 每60秒遍历一次
|
||
],
|
||
],
|
||
'websocket' => [
|
||
'enable' => true,
|
||
'handler' => Handler::class,
|
||
'ping_interval' => 25000,
|
||
'ping_timeout' => 60000,
|
||
'room' => [
|
||
'type' => 'table',
|
||
'table' => [
|
||
'room_rows' => 4096,
|
||
'room_size' => 2048,
|
||
'client_rows' => 8192,
|
||
'client_size' => 2048,
|
||
],
|
||
'redis' => [
|
||
'host' => '127.0.0.1',
|
||
'port' => 6379,
|
||
'max_active' => 3,
|
||
'max_wait_time' => 5,
|
||
],
|
||
],
|
||
'listen' => [
|
||
],
|
||
'subscribe' => [
|
||
],
|
||
],
|
||
'rpc' => [
|
||
'server' => [
|
||
'enable' => false,
|
||
'port' => 9000,
|
||
'services' => [
|
||
],
|
||
],
|
||
'client' => [
|
||
],
|
||
],
|
||
'hot_update' => [
|
||
'enable' => env('APP_DEBUG', false),
|
||
'name' => ['*.php'],
|
||
'include' => [app_path()],
|
||
'exclude' => [],
|
||
],
|
||
//连接池
|
||
'pool' => [
|
||
'db' => [
|
||
'enable' => true,
|
||
'max_active' => 3,
|
||
'max_wait_time' => 5,
|
||
],
|
||
'cache' => [
|
||
'enable' => true,
|
||
'max_active' => 3,
|
||
'max_wait_time' => 5,
|
||
],
|
||
//自定义连接池
|
||
],
|
||
//队列
|
||
'queue' => [
|
||
'enable' => false,
|
||
'workers' => [],
|
||
],
|
||
'coroutine' => [
|
||
'enable' => true,
|
||
'flags' => SWOOLE_HOOK_ALL,
|
||
],
|
||
'tables' => [],
|
||
//每个worker里需要预加载以共用的实例
|
||
'concretes' => [],
|
||
//重置器
|
||
'resetters' => [],
|
||
//每次请求前需要清空的实例
|
||
'instances' => [],
|
||
//每次请求前需要重新执行的服务
|
||
'services' => [],
|
||
];
|