diff --git a/gogv/README.md b/gogv/README.md new file mode 100644 index 0000000000000000000000000000000000000000..601b80b0cde6f7683011ef7318fea2f87d520fd2 --- /dev/null +++ b/gogv/README.md @@ -0,0 +1,76 @@ +# KeenTune敏感参数识别——https long + +```bash +[root@localhost ~]# keentune param tune -j https_long -i 10 +[ok] Running Param Tune Success. + + iteration: 10 + name: https_long + + see more details by log file: "/var/log/keentune/https_long.log" +[root@localhost ~]# cat /var/log/keentune/https_long.log +Step1. Parameter auto tuning start, using algorithm = random. + +Step2. Run benchmark as baseline: + + [Requests_sec] (weight: 100.0) average scores = 20873.721 + +Step3. AI Engine is ready. + +Step4. Start tuning, total iteration is 10. + +[Iteration 1] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 22224.381 + Current optimal iteration: [Iteration 1]: + [Requests_sec] Improved by 6.471% +[Iteration 2] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 22379.289 + Current optimal iteration: [Iteration 2]: + [Requests_sec] Improved by 7.213% +[Iteration 3] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 6989.610 + Current optimal iteration: [Iteration 2]: + [Requests_sec] Improved by 7.213% +[Iteration 4] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 23041.230 + Current optimal iteration: [Iteration 4]: + [Requests_sec] Improved by 10.384% +[Iteration 5] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 22584.010 + Current optimal iteration: [Iteration 4]: + [Requests_sec] Improved by 10.384% +[Iteration 6] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 21795.680 + Current optimal iteration: [Iteration 4]: + [Requests_sec] Improved by 10.384% +[Iteration 7] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 22064.230 + Current optimal iteration: [Iteration 4]: + [Requests_sec] Improved by 10.384% +[Iteration 8] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 5245.370 + Current optimal iteration: [Iteration 4]: + [Requests_sec] Improved by 10.384% +[Iteration 9] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 6981.430 + Current optimal iteration: [Iteration 4]: + [Requests_sec] Improved by 10.384% +[Iteration 10] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 22423.350 + Current optimal iteration: [Iteration 4]: + [Requests_sec] Improved by 10.384% + +Step5. Best configuration dump successfully. File list: + /var/keentune/keentuned/tuning_workspace/https_long/https_long_group1_best.json + + +Step6. Tuning is finished, checking benchmark score of best configuration. + +[BEST] Benchmark result: + [Requests_sec] (weight: 100.0) average scores = 22689.119 +[BEST] Tuning improvement: + [Requests_sec] Improved by 8.697% +[root@localhost ~]# keentune param dump -j https_long +[ok] dump successfully, file list: + /var/keentune/keentuned/profile/https_long_group1.conf +``` \ No newline at end of file diff --git a/gogv/https_long_group1.conf b/gogv/https_long_group1.conf new file mode 100644 index 0000000000000000000000000000000000000000..6b5ecbb307daf7fa8f3f8be50cb628dea2472a3b --- /dev/null +++ b/gogv/https_long_group1.conf @@ -0,0 +1,29 @@ +[nginx_conf] +sendfile: "on" +client_body_buffer_size: "16k" +keepalive_requests: 109638316755 +multi_accept: "on" +client_header_buffer_size: "8k" +worker_rlimit_nofile: 29376351 +gzip_buffers: "8 8k" +ssl_session_timeout: "10m" +gzip_min_length: 48537 +client_max_body_size: "64m" +proxy_send_timeout: 21 +tcp_nodelay: "on" +gzip: "off" +keepalive_timeout: 29 +proxy_read_timeout: 23 +open_file_cache_min_uses: 8 +worker_connections: 25726 +ssl_session_cache: "builtin:1000" +client_body_timeout: 35 +open_file_cache: "max=10240 inactive=10s" +ssl_buffer_size: "64k" +open_file_cache_valid: "120s" +client_header_timeout: 41 +gzip_comp_level: 2 +tcp_nopush: "off" +send_timeout: 40 +proxy_connect_timeout: 42 +sendfile_max_chunk: "700k" diff --git a/gogv/https_long_group1_best.json b/gogv/https_long_group1_best.json new file mode 100644 index 0000000000000000000000000000000000000000..aa915b617acf9a545aef801d0327fe5663eac6e0 --- /dev/null +++ b/gogv/https_long_group1_best.json @@ -0,0 +1,393 @@ +{ + "parameters": [ + { + "domain": "nginx_conf", + "name": "sendfile", + "options": [ + "on", + "off" + ], + "dtype": "string", + "value": "on", + "base": "on" + }, + { + "domain": "nginx_conf", + "name": "client_body_buffer_size", + "options": [ + "8k", + "16k", + "32k", + "64k", + "128k", + "526k", + "1024k" + ], + "dtype": "string", + "value": "16k", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "keepalive_requests", + "range": [ + 1000, + 161061273600 + ], + "dtype": "int", + "value": 109638316755, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "multi_accept", + "options": [ + "on", + "off" + ], + "dtype": "string", + "value": "on", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "client_header_buffer_size", + "options": [ + "2k", + "4k", + "8k", + "16k", + "32k", + "64k" + ], + "dtype": "string", + "value": "8k", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "worker_rlimit_nofile", + "range": [ + 655350, + 157286400 + ], + "dtype": "int", + "value": 29376351, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "gzip_buffers", + "options": [ + "4 4k", + "4 8k", + "8 8k", + "16 8k", + "16 16k", + "16 32k" + ], + "dtype": "string", + "value": "8 8k", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "ssl_session_timeout", + "options": [ + "2m", + "5m", + "10m", + "20m" + ], + "dtype": "string", + "value": "10m", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "gzip_min_length", + "range": [ + 1024, + 102400 + ], + "dtype": "int", + "value": 48537, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "client_max_body_size", + "options": [ + "4m", + "8m", + "16m", + "32m", + "64m", + "128m", + "256m" + ], + "dtype": "string", + "value": "64m", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "proxy_send_timeout", + "range": [ + 6, + 600 + ], + "dtype": "int", + "value": 21, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "tcp_nodelay", + "options": [ + "on", + "off" + ], + "dtype": "string", + "value": "on", + "base": "on" + }, + { + "domain": "nginx_conf", + "name": "gzip", + "options": [ + "on", + "off" + ], + "dtype": "string", + "value": "off", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "keepalive_timeout", + "range": [ + 10, + 100 + ], + "dtype": "int", + "value": 29, + "base": "65" + }, + { + "domain": "nginx_conf", + "name": "proxy_read_timeout", + "range": [ + 6, + 600 + ], + "dtype": "int", + "value": 23, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "open_file_cache_min_uses", + "range": [ + 2, + 10 + ], + "dtype": "int", + "value": 8, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "worker_connections", + "range": [ + 300, + 160000 + ], + "dtype": "int", + "value": 25726, + "base": "1024" + }, + { + "domain": "nginx_conf", + "name": "ssl_session_cache", + "options": [ + "off", + "none", + "builtin:1000", + "shared:SSL:1m" + ], + "dtype": "string", + "value": "builtin:1000", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "client_body_timeout", + "range": [ + 10, + 100 + ], + "dtype": "int", + "value": 35, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "open_file_cache", + "options": [ + "max=1024 inactive=10s", + "max=10240 inactive=10s", + "max=10240000 inactive=60s" + ], + "dtype": "string", + "value": "max=10240 inactive=10s", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "ssl_buffer_size", + "options": [ + "64", + "128", + "526", + "4k", + "64k", + "256k", + "1m", + "4m" + ], + "dtype": "string", + "value": "64k", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "open_file_cache_valid", + "options": [ + "10s", + "30s", + "60s", + "80s", + "90s", + "120s", + "150s" + ], + "dtype": "string", + "value": "120s", + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "client_header_timeout", + "range": [ + 10, + 100 + ], + "dtype": "int", + "value": 41, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "gzip_comp_level", + "range": [ + 1, + 9 + ], + "dtype": "int", + "value": 2, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "tcp_nopush", + "options": [ + "on", + "off" + ], + "dtype": "string", + "value": "off", + "base": "on" + }, + { + "domain": "nginx_conf", + "name": "send_timeout", + "range": [ + 10, + 100 + ], + "dtype": "int", + "value": 40, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "proxy_connect_timeout", + "range": [ + 1, + 50 + ], + "dtype": "int", + "value": 42, + "base": "None" + }, + { + "domain": "nginx_conf", + "name": "sendfile_max_chunk", + "options": [ + "100k", + "200k", + "300k", + "400k", + "500k", + "600k", + "700k", + "800k", + "900k", + "1024k" + ], + "dtype": "string", + "value": "700k", + "base": "None" + } + ], + "score": { + "Latency_90": { + "value": 31710, + "negative": true, + "weight": 0, + "strict": true, + "base": [ + 34780 + ] + }, + "Latency_99": { + "value": 243320, + "negative": true, + "weight": 0, + "strict": true, + "base": [ + 119090 + ] + }, + "Requests_sec": { + "value": 23041.23, + "negative": false, + "weight": 100, + "strict": false, + "base": [ + 20873.72 + ] + }, + "Transfer_sec": { + "value": 92090000, + "negative": false, + "weight": 0, + "strict": false, + "base": [ + 83430000 + ] + } + }, + "current_round": 4 +} \ No newline at end of file