47 lines
1.7 KiB
PHP
47 lines
1.7 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
use App\Http\Kernel as HttpKernel;
|
|
use Hyperf\Server\Event;
|
|
use Hyperf\Server\Server;
|
|
use Swoole\Constant;
|
|
|
|
return [
|
|
'mode' => SWOOLE_PROCESS,
|
|
'servers' => [
|
|
[
|
|
'name' => 'http',
|
|
'type' => Server::SERVER_HTTP,
|
|
'host' => env('HTTP_SERVER_HOST', '0.0.0.0'),
|
|
'port' => (int) env('HTTP_SERVER_PORT', 9501),
|
|
'sock_type' => SWOOLE_SOCK_TCP,
|
|
'callbacks' => [
|
|
Event::ON_REQUEST => [HttpKernel::class, 'onRequest'],
|
|
],
|
|
],
|
|
],
|
|
'kernels' => [
|
|
'http' => HttpKernel::class,
|
|
],
|
|
'settings' => [
|
|
'document_root' => base_path('public'),
|
|
'enable_static_handler' => true,
|
|
Constant::OPTION_ENABLE_COROUTINE => true,
|
|
Constant::OPTION_WORKER_NUM => env('SERVER_WORKERS_NUMBER', swoole_cpu_num()),
|
|
Constant::OPTION_PID_FILE => base_path('runtime/hypervel.pid'),
|
|
Constant::OPTION_OPEN_TCP_NODELAY => true,
|
|
Constant::OPTION_MAX_COROUTINE => 100000,
|
|
Constant::OPTION_OPEN_HTTP2_PROTOCOL => true,
|
|
Constant::OPTION_MAX_REQUEST => 100000,
|
|
Constant::OPTION_SOCKET_BUFFER_SIZE => 20 * 1024 * 1024,
|
|
Constant::OPTION_BUFFER_OUTPUT_SIZE => 20 * 1024 * 1024,
|
|
Constant::OPTION_PACKAGE_MAX_LENGTH => 50 * 1024 * 1024
|
|
],
|
|
'callbacks' => [
|
|
Event::ON_WORKER_START => [Hyperf\Framework\Bootstrap\WorkerStartCallback::class, 'onWorkerStart'],
|
|
Event::ON_PIPE_MESSAGE => [Hyperf\Framework\Bootstrap\PipeMessageCallback::class, 'onPipeMessage'],
|
|
Event::ON_WORKER_EXIT => [Hyperf\Framework\Bootstrap\WorkerExitCallback::class, 'onWorkerExit'],
|
|
],
|
|
];
|