ホームページ  >  記事  >  バックエンド開発  >  nginx管理構成の最適化

nginx管理構成の最適化

不言
不言オリジナル
2018-05-08 10:31:271786ブラウズ

この記事では主に nginx 管理構成の最適化について紹介します。これは、必要な友人に参考にしていただけるようになりました

nginx の最適化


基本的な最適化nginx管理構成の最適化

1.調整パラメータは、nginx ソフトウェアのバージョン番号情報を隠します

server_tokens off;

2. nginx サービスのデフォルトのユーザーを変更します

user nginx nginx;

3. nginx サービスのワーカープロセスの数を最適化します

worker_processes cpu*核数;

4. 異なる nginx プロセスの異なる CPU へのバインドを最適化します。 5. nginx 時間処理モデルの最適化

worker_cpu_affinit 0001 0010 0100 1000 0001 0010 0100 1000;

6. 単一プロセス内の最大接続数を調整

use epoll

7. nginx ワークプロセスで開くファイルの最大数

worker_connections 20480;

8. 効率的なファイル転送モードを有効にする

worker_rlimit_nofile 65535;

効率的なファイル転送モードを有効にするために使用され、tcp_nopush 命令と tcp_nolay 命令を同時にオンに設定すると、ネットワークとディスク I/O のブロックを防ぎ、nginx の作業効率を向上させることができます。

9号の最適化を最適化します

14 、拡張子に基づいてプログラムとファイルのアクセスを制限します。

sendfile on;

15. アンチホットリンク

keepalive_timeout 0;          //结束响应后立即断开tcp连接。

システムレベルの最適化

2. nginx と php-fpm の最適化設定

nginx が多くのリクエストを転送する場合、php- fpm プロセスが足りない場合は、子プロセスが生成されます。

ただし、子プロセスの生成にはカーネルのスケジューリングが必要であり、時間がかかります。

Web サイトの同時実行数が比較的大きい場合は、一度に複数のサブプロセスを静的に生成し、メモリ内に保持できます。

phjp-fpm.conf を変更する

gzip on;
gzip_min_length 1k;
gzip_buffers 4 32k;
gzip_comp_level 9;
gzip_vary on;

3. PHP と mysql の最適化
カーネル レベル: 接続数を増やし、TCP リサイクルを高速化する

mysql レベル: 接続数を増やす

php レベル: 長い接続を使用し、数を保存する接続数

メモリ キャッシュ (memcached) を使用して、mysql への負荷を軽減します

メモリ キャッシュは、複雑な SQL クエリのキャッシュに適しています。 phpmemcached も TCP 接続を確立する必要があるため、単純な SQL クエリにはキャッシュが必要ありません。




以上がnginx管理構成の最適化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。