sw-fw-less
Description
Swoole http server without framework
Features
- Faster Router
- Router & Global Middleware
- Model(MySQL & EleasticsearchćJson SerializablećArray Accessable)
- Query Builder(MySQL & Elasticsearch)
- Connection Pool(MySQLćRedisćExperimental AMQP-0-9-1ćExperimental HBase)
- Storage(FilećQiniućAlioss)
- Full Coroutine
- Log(Based on Monolog)
- Distributed Lock(Based on Redis)
- Parameter Validator
- Monitor
- AMQP-0-9-1
- Zipkin Trace
- Dynamic Fault Injection
- Hot Reload(biz codećconfigćrouter)
Requirements
- PHP 7.1+
- Swoole 4.2.10+
Installation
composer create-project luoxiaojun/sw-fw-less-app=dev-master sw-fw-less --prefer-dist -vvv
Deployment
Nginx
Nginx Config Demo(Modify according to your requirements)
server {
listen 80;
## Modify according to your requirements
server_name www.sw-fw-less.dev;
location / {
## Modify according to your requirements
proxy_pass http://127.0.0.1:9501;
}
}
Docker
docker run -d -P luoxiaojun1992/sw-fw-less:latest
Usage
Start Server
php start.php
Demo Api
curl -i 'http://127.0.0.1:9501/ping'
Performance
Environment:
- OS: MacOS 10.14.1
- CPU: 2.3 GHz Intel Core i5 4 Cores
- Memory: 16 GB 2133 MHz LPDDR3
- Swoole: 4.2.9
- PHP: 7.2.8
- Redis: 4.0.11
- API: http://127.0.0.1:9501/redis?key=key
- Concurrent: 300
- Tool: JMeter 4.0 r1823414
Document
Please see document.