-
Notifications
You must be signed in to change notification settings - Fork 5
performance
millken edited this page Sep 23, 2018
·
11 revisions
server.conf
[swoole]
open_cpu_affinity=0
backlog=128
dispatch_mode=3
worker_num=3
daemonize = 0
open_tcp_nodelay = 1
task_worker_num=8
open_tcp_keepalive=1
tcp_keepidle=5
tcp_keepcount=3
tcp_keepinterval=3
heartbeat_check_interval=5,
heartbeat_idle_time=10,
task_max_request= 10000
log_file=/tmp/swoole.log
ssl_cert_file = a.crt
ssl_key_file = a.key
ssl_ciphers = ""
[server]
listen=*:9002
ssl_listen=*:9003
master_process_name=swoole-master
manager_process_name=swoole-manager
worker_process_name=swoole-worker-%d
task_worker_process_name=swoole-task-worker-%d
kernel parameter
ulimit -n 100000
sysctl -w net.ipv4.tcp_timestamps=1
sysctl -w net.ipv4.tcp_tw_recycle=1
sysctl -w net.unix.max_dgram_qlen=100
sysctl -w net.ipv4.tcp_tw_reuse=1
without gzip
[root@cloud Ypf]# wrk -t 12 -c 200 -d 30s "http://127.0.0.1:9002/?a=1&b=2&c=111134"
Running 30s test @ http://127.0.0.1:9002/?a=1&b=2&c=111134
12 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 8.96ms 15.76ms 1.42s 99.31%
Req/Sec 1.89k 754.67 7.69k 71.29%
671762 requests in 30.08s, 133.89MB read
Socket errors: connect 0, read 0, write 0, timeout 14
Requests/sec: 22330.01
Transfer/sec: 4.45MB
on centos7.2 ,kernel: 4.5, swoole 1.8.4
<?php
$http = new swoole_http_server("127.0.0.1", 9501);
$http->on('request', function ($request, $response) {
//$response->header("Server", "Swoole-Testing");
$response->end("<h1>Hello Swoole. #".rand(1000, 9999)."</h1>");
});
$http->start();
/*
[millken@localhost wrk]$ ./wrk -t 12 -c 200 -d 30s "http://127.0.0.1:9501/?a=1&b=2&c=111134"
Running 30s test @ http://127.0.0.1:9501/?a=1&b=2&c=111134
12 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 1.59ms 1.40ms 23.73ms 89.90%
Req/Sec 11.38k 1.25k 45.42k 84.09%
4080124 requests in 30.09s, 704.29MB read
Requests/sec: 135593.48
Transfer/sec: 23.41MB
*/
ypf clean 2018-9-20 20:33
wrk -t 20 -c 200 -d 30s "http://127.0.0.1:8080/"
Running 30s test @ http://127.0.0.1:8080/
20 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 2.16ms 1.94ms 40.97ms 88.56%
Req/Sec 5.50k 521.94 19.49k 86.64%
3289431 requests in 30.10s, 501.93MB read
Requests/sec: 109285.69
Transfer/sec: 16.68MB
ypf with https://github.com/middlewares/php-session 2018-9-20 21:44
$wrk -t 20 -c 200 -d 30s "http://127.0.0.1:8080/hello/aasdfadf"
Running 30s test @ http://127.0.0.1:8080/hello/aasdfadf
20 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 2.95ms 2.30ms 45.84ms 87.89%
Req/Sec 3.84k 212.67 4.83k 71.94%
2297222 requests in 30.11s, 365.86MB read
Requests/sec: 76305.63
Transfer/sec: 12.15MB
ypf with ypf/session 2018-9-21 23:42
$wrk -t 20 -c 200 -d 30s "http://127.0.0.1:8080/"Running 30s test @ http://127.0.0.1:8080/
20 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 2.53ms 2.04ms 32.63ms 88.24%
Req/Sec 4.53k 256.27 9.13k 79.40%
2710042 requests in 30.10s, 845.13MB read
Requests/sec: 90034.23
Transfer/sec: 28.08MB
ypf with template test
//latte 2018-9-23 23:52
# wrk -t 20 -c 200 -d 20s "http://cloud.test.com/server-price"
Running 20s test @ http://cloud.test.com/server-price
20 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 5.88ms 5.42ms 46.44ms 83.00%
Req/Sec 2.03k 202.62 4.57k 79.15%
811687 requests in 20.10s, 7.92GB read
Requests/sec: 40382.63
Transfer/sec: 403.26MB
//no template 2018-9-23 23:52
# wrk -t 20 -c 200 -d 20s "http://cloud.test.com/server-price"
Running 20s test @ http://cloud.test.com/server-price
20 threads and 200 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 2.99ms 2.76ms 29.52ms 86.89%
Req/Sec 4.00k 309.64 8.38k 82.24%
1598095 requests in 20.10s, 486.18MB read
Requests/sec: 79509.10
Transfer/sec: 24.19MB