Nginxの設定ファイルのテストとパフォーマンスを上げる設定
はじめに
はじめまして、youtuber系エンジニアのやっすんです!
今回は、パフォーマンスに関する部分を説明します!
具体的には、以下の内容です。
- 設定ファイルの検証
- パフォーマンスに影響を与えるディレクティブ
Youtubeでも説明しているので、作業用としてお使いください!
【YouTube動画】NGINXの設定ファイルのテスト、パフォーマンスを上げる設定
設定ファイルの検証
Nginxでは、設定ファイルの文法チェックをコマンド1つで確認できます。
$ nginx -t
文法が正しければ、次のような結果になります。
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
使えるOSは限られますが、次のコマンドでも実行できます。
$ service nginx configtest
Webサイト上で確認する方法
locationの書き方は、Webサイト上で試すこともできます。
https://nginx.viraptor.info
パフォーマンスに影響を与えるディレクティブ
Nginxのパフォーマンスに影響を与える基本的なディレクティブについて紹介します。
久保達彦・道井俊介著『nginx実践入門』に他にも有益なディレクティブがあるので、ぜひ読んでみてください。
sendfile
有効にすると、ファイルの読み込み・レスポンス送信にsendfile()システムコールを使用できます。
これを使うと、ファイル送信が効率的になります。
sendfile on;
tcp_nopush
sendfileディレクティブが有効な場合、パケットサイズを最大にし、送信するパケット数を最小にできます。
tcp_nopush on;
open_file_cache
一度配信したファイル情報 (ファイルの更新日時、ディレクトリの存在有無など) を一定期間保存できるようになります。
maxでキャッシュする最大数、inactiveで保持する時間を設定できます。
open_file_cache max=1000 inactive=20s;
pcre_jit
正規表現のJITコンパイルを有効にし、正規表現の処理速度を向上させることができます。
pcre_jit on;
gzip / gzip_static
リクエストのたびにgzip圧縮する。
圧縮したコンテンツを配信することで、WEBサイトを高速にし、サーバーの負荷を減らすことができます。
gzip on;
gzipファイルが存在すれば、ブラウザが圧縮転送に対応するようにできます。
gzip_static on;
keepalive
保持するコネクション数を指定することができます。
コネクションが維持されるため、通信が高速になります。
upstream http_backend {
...
keepalive 16;
}
ただ、これを使用するためには、HTTP/1.1である必要があります。
server {
...
proxy_http_version 1.1;
}
まとめ
今回はNginxの設定ファイルの文法チェックのやり方、パフォーマンスに影響を与えるディレクティブを紹介しました。
ディレクティブの紹介で出てきた用語については、別途説明する予定です。
また、何か間違いや指摘がありましたら、コメントよろしくお願いします。
Author And Source
この問題について(Nginxの設定ファイルのテストとパフォーマンスを上げる設定), 我々は、より多くの情報をここで見つけました https://qiita.com/yassun-youtube/items/ca19b62ba7885e4881a7著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .