runtime/swoole
Swoole Runtime
A runtime for Swoole.
If you are new to the Symfony Runtime component, read more in the main readme.
Installation
composer require runtime/swoole
Usage
Define the environment variable APP_RUNTIME for your application.
APP_RUNTIME=Runtime\Swoole\Runtime
Pure PHP
// public/index.php
use Swoole\Http\Request;
use Swoole\Http\Response;
require_once dirname(__DIR__) . '/vendor/autoload_runtime.php';
return function () {
return function (Request $request, Response $response) {
$response->header("Content-Type", "text/plain");
$response->end("Hello World\n");
};
};
Symfony
// public/index.php
use App\Kernel;
require_once dirname(__DIR__) . '/vendor/autoload_runtime.php';
return function (array $context) {
return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
};
Using Options
You can define some configurations using Symfony's Runtime APP_RUNTIME_OPTIONS API.
| Option | Description | Default |
|---|---|---|
host |
The host where the server should binds to (precedes SWOOLE_HOST environment variable) |
127.0.0.1 |
port |
The port where the server should be listing (precedes SWOOLE_PORT environment variable) |
8000 |
mode |
Swoole's server mode (precedes SWOOLE_MODE environment variable) |
SWOOLE_PROCESS |
settings |
All Swoole's server settings (wiki.swoole.com/en/#/server/setting and wiki.swoole.com/en/#/http_server?id=configuration-options) | [] |
// public/index.php
use App\Kernel;
$_SERVER['APP_RUNTIME_OPTIONS'] = [
'host' => '0.0.0.0',
'port' => 9501,
'mode' => SWOOLE_BASE,
'settings' => [
'worker_num' => swoole_cpu_num() * 2,
'enable_static_handler' => true,
'document_root' => dirname(__DIR__) . '/public'
],
];
require_once dirname(__DIR__) . '/vendor/autoload_runtime.php';
return function (array $context) {
return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
};
Related Packages
doctrine/dbal
Powerful PHP database abstraction layer (DBAL) with many features for database s...
644,549,754
9,698
laravel/serializable-closure
Laravel Serializable Closure provides an easy and secure way to serialize closur...
423,477,751
607
nunomaduro/collision
Cli error handling for console/command-line PHP applications.
399,241,428
4,660
Version History
| Version | Released | PHP | License |
|---|---|---|---|
| 1.0.0 | >=8.1 | MIT | |
| 0.4.0 | >=8.1 | MIT | |
| 0.3.1 | MIT | ||
| 0.3.0 | MIT | ||
| 0.2.1 | MIT | ||
| 0.2.0 | MIT | ||
| 0.1.1 | MIT | ||
| 0.1.0 | MIT |