123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 |
- <?php
- return [
- /*
- |--------------------------------------------------------------------------
- | HTTP server configurations.
- |--------------------------------------------------------------------------
- |
- | @see https://www.swoole.co.uk/docs/modules/swoole-server/configuration
- |
- */
- 'server' => [
- 'host' => env('SWOOLE_HTTP_HOST', '127.0.0.1'),
- 'port' => env('SWOOLE_HTTP_PORT', '6430'),
- 'public_path' => base_path('public'),
- // Determine if to use swoole to respond request for static files
- 'handle_static_files' => env('SWOOLE_HANDLE_STATIC', true),
- 'access_log' => env('SWOOLE_HTTP_ACCESS_LOG', false),
- // You must add --enable-openssl while compiling Swoole
- // Put `SWOOLE_SOCK_TCP | SWOOLE_SSL` if you want to enable SSL
- 'socket_type' => SWOOLE_SOCK_TCP,
- 'process_type' => SWOOLE_PROCESS,
- 'options' => [
- 'pid_file' => env('SWOOLE_HTTP_PID_FILE', base_path('storage/logs/swoole_http.pid')),
- 'log_file' => env('SWOOLE_HTTP_LOG_FILE', base_path('storage/logs/swoole_http.log')),
- 'daemonize' => env('SWOOLE_HTTP_DAEMONIZE', false),
- // Normally this value should be 1~4 times larger according to your cpu cores.
- 'reactor_num' => env('SWOOLE_HTTP_REACTOR_NUM', swoole_cpu_num()),
- 'worker_num' => env('SWOOLE_HTTP_WORKER_NUM', swoole_cpu_num()),
- 'task_worker_num' => env('SWOOLE_HTTP_TASK_WORKER_NUM', swoole_cpu_num()),
- 'task_enable_coroutine' => true,
- // The data to receive can't be larger than buffer_output_size.
- 'package_max_length' => 20 * 1024 * 1024,
- // The data to send can't be larger than buffer_output_size.
- 'buffer_output_size' => 10 * 1024 * 1024,
- // Max buffer size for socket connections
- 'socket_buffer_size' => 128 * 1024 * 1024,
- // Worker will restart after processing this number of requests
- 'max_request' => 3000,
- // Enable coroutine send
- 'send_yield' => true,
- // You must add --enable-openssl while compiling Swoole
- 'ssl_cert_file' => null,
- 'ssl_key_file' => null,
- ],
- ],
- /*
- |--------------------------------------------------------------------------
- | Enable to turn on websocket server.
- |--------------------------------------------------------------------------
- */
- 'websocket' => [
- 'enabled' => env('SWOOLE_HTTP_WEBSOCKET', false),
- ],
- /*
- |--------------------------------------------------------------------------
- | Hot reload configuration
- |--------------------------------------------------------------------------
- */
- 'hot_reload' => [
- 'enabled' => env('SWOOLE_HOT_RELOAD_ENABLE', false),
- 'recursively' => env('SWOOLE_HOT_RELOAD_RECURSIVELY', true),
- 'directory' => env('SWOOLE_HOT_RELOAD_DIRECTORY', base_path()),
- 'log' => env('SWOOLE_HOT_RELOAD_LOG', true),
- 'filter' => env('SWOOLE_HOT_RELOAD_FILTER', '.php'),
- ],
- /*
- |--------------------------------------------------------------------------
- | Console output will be transferred to response content if enabled.
- |--------------------------------------------------------------------------
- */
- 'ob_output' => env('SWOOLE_OB_OUTPUT', true),
- /*
- |--------------------------------------------------------------------------
- | Pre-resolved instances here will be resolved when sandbox created.
- |--------------------------------------------------------------------------
- */
- 'pre_resolved' => [
- 'view', 'files', 'session', 'session.store', 'routes',
- 'db', 'db.factory', 'cache', 'cache.store', 'config', 'cookie',
- 'encrypter', 'hash', 'router', 'translator', 'url', 'log',
- ],
- /*
- |--------------------------------------------------------------------------
- | Instances here will be cleared on every request.
- |--------------------------------------------------------------------------
- */
- 'instances' => [
- 'auth',
- ],
- /*
- |--------------------------------------------------------------------------
- | Providers here will be registered on every request.
- |--------------------------------------------------------------------------
- */
- 'providers' => [
- Illuminate\Pagination\PaginationServiceProvider::class,
- ],
- /*
- |--------------------------------------------------------------------------
- | Resetters for sandbox app.
- |--------------------------------------------------------------------------
- */
- 'resetters' => [
- SwooleTW\Http\Server\Resetters\ResetConfig::class,
- SwooleTW\Http\Server\Resetters\ResetSession::class,
- SwooleTW\Http\Server\Resetters\ResetCookie::class,
- SwooleTW\Http\Server\Resetters\ClearInstances::class,
- SwooleTW\Http\Server\Resetters\BindRequest::class,
- SwooleTW\Http\Server\Resetters\RebindKernelContainer::class,
- SwooleTW\Http\Server\Resetters\RebindRouterContainer::class,
- SwooleTW\Http\Server\Resetters\RebindViewContainer::class,
- SwooleTW\Http\Server\Resetters\ResetProviders::class,
- ],
- /*
- |--------------------------------------------------------------------------
- | Define your swoole tables here.
- |
- | @see https://www.swoole.co.uk/docs/modules/swoole-table
- |--------------------------------------------------------------------------
- */
- 'tables' => [
- // 'table_name' => [
- // 'size' => 1024,
- // 'columns' => [
- // ['name' => 'column_name', 'type' => Table::TYPE_STRING, 'size' => 1024],
- // ]
- // ],
- ],
- ];
|