nginxのは、パフォーマンスを向上させます

まず、システムレベル
1、開いているファイルの数を調整しながら
20480 -nのulimitを
図2に示すように、TCPの最大数(SOMAXCONN)が接続された
エコー10000> / PROC / SYS / NET /コア/ SOMAXCONNを
3、直ちに回収TCP接続、(リサイクル、再使用、再利用)
1>は、/ proc / sys / net / IPv4の/ tcp_tw_reuseエコー
エコー1>は、/ proc / sys / net / IPv4の/ tcp_tw_recycle
4を、TCPの洪水は、レジストのない
エコー0> / procの/ SYS /ネット/ IPv4の/ tcp_syncookiesを
直接することができます最適化された構成を使用して、に/etc/sysctl.confに追加される:
net.core.somaxconn = 20480
net.core.rmem_default = 262144
net.core.wmem_default = 262144
のnet.core.rmem_max = 16777216
のnet.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 4096 16777216
net.ipv4.tcp_wmem = 4096 4096 16777216
net.ipv4.tcp_mem = 786432 2097152 3145728
net.ipv4.tcp_max_syn_backlog = 16384
net.core.netdev_max_backlog = 20000
net.ipv4.tcp_fin_timeout = 15
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_max_orphans = 131072
net.ipv4.tcp_syncookies = 0
使用:sysctlを-p生效
のsysctl -p


二、nginxのレベルは
nginxの設定ファイルを変更し、nginx.conf
work_rlimit_nofileとworker_connectionsの数を増やし、keepalive_timeoutを無効にします。
worker_processes 1;処理の#nginx番号は、それはCPUの数に応じて指定することが推奨され、それは一般の倍数である
worker_rlimit_nofile 20000;#のnginxのプロセスは、ファイル記述子の数を開き、理論値は、数(のulimit -n)ファイルとnginxのに開かなければなりませんプロセスの数で割った値が、nginxの割り当て要求は、のulimit -nの最良の値と一致するように均一ではない
イベント{
使用のepoll;#のファイルディスクリプタは、I / Oモデルの使用
コネクション#各プロセスの最大許容数、worker_connections 20000 、各サーバnginxのための接続の理論上の最大数は、* worker_connections worker_processes
multi_accept ON;
}
HTTP {
keepalive_timeout 0;
}


第三に、テスト
を再起動nginxのの
サービスnginxの再起動


使用AB压力测试
D:\ phpStudy \ Apacheの\ binに> ABの-r 150000 -n -c 10000 http://192.168.1.198/msg.php
1706008 $>:これはApacheBench、バージョン2.3 <$リビジョンである
著作権1996アダムTwiss 、ゼウス・テクノロジー株式会社、http://www.zeustech.net/は、
Apache Software Foundationのライセンスに、http://www.apache.org/

ベンチマーク192.168.1.198は(我慢して)
15000個の要求完了
30000個の要求が完了し
45000個の要求完了
完了を60000のリクエスト
75000個の要求が完了し
90000個の要求完了
105000のリクエスト完了
120000のリクエスト完了
135000のリクエスト完了
150000のリクエスト完了
150000のリクエストの完成


nginxの/ 1.10.1:サーバーソフトウェアを
サーバのホスト名:192.168.1.198
サーバーポート:80

ドキュメントパス:/msg.php
文書の長さ:955バイト

同時実行レベル:10000
テストにかかった時間:553.886秒
完全な要求:150000の
失敗した要求:74065
(接続:0、受信:0、長さ:74065、例外:0)
以外の2xx応答:74065
総転送:108769526バイト
HTML移し:85048014のバイト
毎秒要求:270.81 [#/秒(平均)
リクエスト当たりの時間:36925.756 [MS](平均)
時間当たり要求:(すべての同時要求にわたる平均)3.693 [ms]で
転送速度:191.77 [バイト/秒]は受信した

接続時間(ミリ秒)
分の平均[+/- SD]を最大メジアン
接続1:0 19.0 1 3004
処理:332 33370 25597.6 31689 92093
待機:163 32879 25640.0 31420 91598
合計:332 33370 25597.5 31689 92093

要求の割合が一定時間(ms)以内に配信
50%31689
66%60464
75%60730
80%60928
90%61319
95% 61790
98%62191
99%62640
100%92093(最長要求)

D:\ phpStudy \ Apacheの\ビン>

如果不优化、运行时间超过半个小时!!!
AB -r -n 150000 -c 10000 http://192.168.1.198/msg.php
これはApacheBench、バージョン2.3 <$リビジョン:1706008 $>は
著作権1996アダムTwiss 、ゼウス・テクノロジー株式会社、http://www.zeustech.net/は、
Apache Software Foundationのライセンスに、http://www.apache.org/

ベンチマーク192.168.1.198は(我慢して)
15000個の要求完了
30000個の要求が完了し
45000個の要求完了
完了を60000のリクエスト
75000個の要求が完了し
90000個の要求完了
105000のリクエスト完了
120000のリクエスト完了
135000のリクエスト完了
150000のリクエスト完了
150000のリクエストの完成


nginxの/ 1.10.1:サーバーソフトウェアを
サーバのホスト名:192.168.1.198
サーバーポート:80

ドキュメントパス:/msg.php
文書の長さ:955バイト

同時実行レベル:10000
テストにかかった時間:3136.477秒
完全な要求:150000の
失敗した要求:0
転送合計:168150000バイト
HTML転送:143250000バイト
47.82 [#/秒(平均):秒あたりの要求
の要求あたりの時間:209098.485を[MS](平均)
リクエスト当たりの時間:20.910 [MS]は(すべての同時要求を横切って、平均値)
52.35 [バイト/秒]:転送速度を受信された

接続時間(ミリ秒)、
minは平均[+/- SD]メジアン最大
接続:0~20 236.9 1 3045
処理:4178 202109 29524.0 208780 220830
待機:1246 105285 59956.2 104752 216204
合計:4179 202129 29523.9 208806 220831

要求の割合は一定時間(ms)以内に配信
50%208806
66%210991
75%211892
80%212733
90%213611
95%214917
98%217376
99%217451を
100%220831(最長要求)

おすすめ

転載: www.cnblogs.com/slqt/p/11231666.html
おすすめ