Wallogit.com
2017 © Pedro Peláez
Lumen & Swoole
Lumen on Swoole, (*1)
composer require silentred/lumoon
Because Lumen does not use Http Kernel, you have to create a subclass of \Laravel\Lumen\Application under app directory.
In bootstrap directory, change Application in app.php to the new one as App\Application, (*2)
vendor/bin/lumoon start | stop | reload | restart | quit
In .env , use LUMOON_* to config swoole server. For example, (*3)
LUMOON_REACTOR_NUM=1 LUMOON_WORKER_NUM=4 LUMOON_BACKLOG=128 LUMOON_DISPATCH_MODE=1
LUMOON_PID_FILE=/path/to/lumoon.pid
default is at /lumen/storage/logs/swoole.pid, (*4)
LUMOON_GZIP=1
level is in the range from 1 to 9, bigger is compress harder and use more CPU time., (*5)
LUMOON_GZIP_MIN_LENGTH=1024
Sets the mINImum length of a response that will be gzipped., (*6)
Use this ONLY when developing, (*7)
LUMOON_DEAL_WITH_PUBLIC=true
Eexample:, (*8)
LUMOON_HOST=0.0.0.0
Default host is 127.0.0.1:9050, (*9)
See Swoole's document:, (*10)
简体中文, (*11)
English, (*12)
server {
listen 80;
server_name localhost;
root /path/to/lumoon/public;
location ~ \.(png|jpeg|jpg|gif|css|js)$ {
break;
}
location / {
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_pass http://127.0.0.1:9050;
}
}
MIT, (*13)