mirror of
https://github.com/lsky-org/lsky-pro.git
synced 2025-01-07 03:16:46 +08:00
239 lines
7.2 KiB
PHP
239 lines
7.2 KiB
PHP
<?php
|
|
|
|
use Laravel\Octane\Contracts\OperationTerminated;
|
|
use Laravel\Octane\Events\RequestHandled;
|
|
use Laravel\Octane\Events\RequestReceived;
|
|
use Laravel\Octane\Events\RequestTerminated;
|
|
use Laravel\Octane\Events\TaskReceived;
|
|
use Laravel\Octane\Events\TaskTerminated;
|
|
use Laravel\Octane\Events\TickReceived;
|
|
use Laravel\Octane\Events\TickTerminated;
|
|
use Laravel\Octane\Events\WorkerErrorOccurred;
|
|
use Laravel\Octane\Events\WorkerStarting;
|
|
use Laravel\Octane\Events\WorkerStopping;
|
|
use Laravel\Octane\Listeners\CollectGarbage;
|
|
use Laravel\Octane\Listeners\DisconnectFromDatabases;
|
|
use Laravel\Octane\Listeners\EnsureUploadedFilesAreValid;
|
|
use Laravel\Octane\Listeners\EnsureUploadedFilesCanBeMoved;
|
|
use Laravel\Octane\Listeners\FlushTemporaryContainerInstances;
|
|
use Laravel\Octane\Listeners\FlushUploadedFiles;
|
|
use Laravel\Octane\Listeners\ReportException;
|
|
use Laravel\Octane\Listeners\StopWorkerIfNecessary;
|
|
use Laravel\Octane\Octane;
|
|
use Swoole\Constant;
|
|
|
|
return [
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Octane Server
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| This value determines the default "server" that will be used by Octane
|
|
| when starting, restarting, or stopping your server via the CLI. You
|
|
| are free to change this to the supported server of your choosing.
|
|
|
|
|
| Supported: "roadrunner", "swoole"
|
|
|
|
|
*/
|
|
|
|
'server' => env('OCTANE_SERVER', 'roadrunner'),
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Force HTTPS
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| When this configuration value is set to "true", Octane will inform the
|
|
| framework that all absolute links must be generated using the HTTPS
|
|
| protocol. Otherwise your links may be generated using plain HTTP.
|
|
|
|
|
*/
|
|
|
|
'https' => env('OCTANE_HTTPS', false),
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Octane Listeners
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| All of the event listeners for Octane's events are defined below. These
|
|
| listeners are responsible for resetting your application's state for
|
|
| the next request. You may even add your own listeners to the list.
|
|
|
|
|
*/
|
|
|
|
'listeners' => [
|
|
WorkerStarting::class => [
|
|
EnsureUploadedFilesAreValid::class,
|
|
EnsureUploadedFilesCanBeMoved::class,
|
|
],
|
|
|
|
RequestReceived::class => [
|
|
...Octane::prepareApplicationForNextOperation(),
|
|
...Octane::prepareApplicationForNextRequest(),
|
|
//
|
|
],
|
|
|
|
RequestHandled::class => [
|
|
//
|
|
],
|
|
|
|
RequestTerminated::class => [
|
|
// FlushUploadedFiles::class,
|
|
],
|
|
|
|
TaskReceived::class => [
|
|
...Octane::prepareApplicationForNextOperation(),
|
|
//
|
|
],
|
|
|
|
TaskTerminated::class => [
|
|
//
|
|
],
|
|
|
|
TickReceived::class => [
|
|
...Octane::prepareApplicationForNextOperation(),
|
|
//
|
|
],
|
|
|
|
TickTerminated::class => [
|
|
//
|
|
],
|
|
|
|
OperationTerminated::class => [
|
|
FlushTemporaryContainerInstances::class,
|
|
// DisconnectFromDatabases::class,
|
|
// CollectGarbage::class,
|
|
],
|
|
|
|
WorkerErrorOccurred::class => [
|
|
ReportException::class,
|
|
StopWorkerIfNecessary::class,
|
|
],
|
|
|
|
WorkerStopping::class => [
|
|
//
|
|
],
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Warm / Flush Bindings
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| The bindings listed below will either be pre-warmed when a worker boots
|
|
| or they will be flushed before every new request. Flushing a binding
|
|
| will force the container to resolve that binding again when asked.
|
|
|
|
|
*/
|
|
|
|
'warm' => [
|
|
...Octane::defaultServicesToWarm(),
|
|
],
|
|
|
|
'flush' => [
|
|
//
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Octane Cache Table
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| While using Swoole, you may leverage the Octane cache, which is powered
|
|
| by a Swoole table. You may set the maximum number of rows as well as
|
|
| the number of bytes per row using the configuration options below.
|
|
|
|
|
*/
|
|
|
|
'cache' => [
|
|
'rows' => 1000,
|
|
'bytes' => 10000,
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Octane Swoole Tables
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| While using Swoole, you may define additional tables as required by the
|
|
| application. These tables can be used to store data that needs to be
|
|
| quickly accessed by other workers on the particular Swoole server.
|
|
|
|
|
*/
|
|
|
|
'tables' => [
|
|
'example:1000' => [
|
|
'name' => 'string:1000',
|
|
'votes' => 'int',
|
|
],
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| File Watching
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| The following list of files and directories will be watched when using
|
|
| the --watch option offered by Octane. If any of the directories and
|
|
| files are changed, Octane will automatically reload your workers.
|
|
|
|
|
*/
|
|
|
|
'watch' => [
|
|
'app',
|
|
'bootstrap',
|
|
'config',
|
|
'database',
|
|
'public/**/*.php',
|
|
'resources/**/*.php',
|
|
'routes',
|
|
'composer.lock',
|
|
'.env',
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Garbage Collection Threshold
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| When executing long-lived PHP scripts such as Octane, memory can build
|
|
| up before being cleared by PHP. You can force Octane to run garbage
|
|
| collection if your application consumes this amount of megabytes.
|
|
|
|
|
*/
|
|
|
|
'garbage' => 50,
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Maximum Execution Time
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| The following setting configures the maximum execution time for requests
|
|
| being handled by Octane. You may set this value to 0 to indicate that
|
|
| there isn't a specific time limit on Octane request execution time.
|
|
|
|
|
*/
|
|
|
|
'max_execution_time' => 0,
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Swoole
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| The Swoole options
|
|
|
|
|
*/
|
|
'swoole' => [
|
|
'options' => [
|
|
'max_request' => env('SWOOLE_MAX_REQUEST', 100000),
|
|
'package_max_length' => env('SWOOLE_PACKAGE_MAX_LENGTH', 50) * 1024 * 1024,
|
|
'buffer_output_size' => env('SWOOLE_BUFFER_OUTPUT_SIZE', 50) * 1024 * 1024,
|
|
]
|
|
]
|
|
|
|
];
|