Nginxインタビューで最も一般的な18の質問
Most Common 18 Questions Nginx Interview
Nginx
同じタイプのWebサーバーでの同時実行のパフォーマンスは比較的良好であるため、多くの企業に支持されています。Nginx
Webサイトの有名なユーザーには、Tencent、Taobao、Baidu、Jingdong、 Sina、Neteaseなど。Nginx
これは、Webサーバーの運用および保守担当者に必要なスキルの1つです。みんなによくある質問をいくつか紹介します。Nginx
関連する面接の質問、参照用のみ:
1. Nginx
とは何か説明してください。
Nginxは、HTTP
、HTTPS
、SMTP
、POP3
with IMAP
プロトコル用のWebサーバーおよびリバースプロキシサーバーです。
2、リストしてくださいNginx
いくつかの機能。
Nginx
サーバーの機能は次のとおりです。
リバースプロキシ/ L7ロードバランサー
埋め込まれたPerlインタープリター
動的バイナリアップグレード
非常に優れたPCREサポートでURLを書き換えるために使用できます
3、リストしてくださいNginx
with Apache
2つの違い。
Nginx:
1. nginxはより軽量で、Apacheよりも少ないメモリとリソースを消費します
2. nginx処理リクエストは非ブロッキング(非同期リクエスト)であり、Apacheはブロッキングタイプです
3.静的ファイルの処理にはnginxが適しています。動的ファイルを処理できません
4. nginxは、リバースプロキシサーバーとしての負荷分散として使用できます
5. nginx構成は、仮想ホスト構成にとってよりシンプルで便利です。
6.キャッシュ機能、proxy_cache(モジュール)、ニス、イカに参加できます
アパッチ:
1、apacheの書き換えはnginxよりも強力です。頻繁に書き換える場合は、apacheを使用してください。
2、Apacheモジュールはスーパーです、
3、Apacheはより成熟しており、バグが少ない
4、Apache超安定
5、PHPのApacheサポートは比較的単純です。nginxは他のバックエンドと協力する必要があります
6、Apacheには動的リクエストの処理に利点があります
注:epollネットワークIOモデルは、nginx処理の高性能の根本原因です。
4.説明してくださいNginx
対処方法HTTP
リクエスト。
Nginx
リアクターモードを使用します。メインイベントループは、オペレーティングシステムが準備イベントを通知するのを待って、データをソケットから読み取ることができるようにします。この場合、バッファが読み取られて処理されます。 1つのスレッドで、数万の同時接続を提供できます。
5、at Nginx
未定義のサーバー名を使用して処理要求をブロックするにはどうすればよいですか?
サーバーからリクエストを削除し、次のように定義するだけです。
Server { listen 80 server_name “ “ return 444 }
ここでは、サーバー名は空の文字列として保持され、「host」ヘッダーフィールドのない要求と一致し、特別なものNginx
非標準コード444
が返され、接続が終了します。 。
6.「リバースプロキシサーバー」を使用する利点は何ですか?
リバースプロキシサーバーは、ソースサーバーの存在と特性を隠すことができます。これは、インターネットクラウドとWebサーバーの間の中間層として機能します。これは、特にWebホスティングサービスを使用する場合のセキュリティに役立ちます。
7、リストしてくださいNginx
サーバーの最適な使用法。
Nginx
サーバーの最適な使用法は、ネットワークにダイナミクスをデプロイすることです。HTTP
コンテンツ、使用SCGI
、WSGI
アプリケーションサーバー、スクリプト作成FastCGI
プログラムの処理。ロードバランサーとしても機能します。
8、説明してくださいNginx
サーバー上Master
with Worker
プロセスは何ですか?
Master
プロセス:構成とメンテナンスを読んで評価します
Worker
プロセス:リクエストを処理しています
9.80以外のポートからNginxを開く方法を説明してください。
別のポート経由で開くにはNginx
入力する必要があります/etc/Nginx/sites-enabled/
これがデフォルトのファイルである場合は、名前“default”
ドキュメントを開く必要があります。ファイルを編集して、必要なポートに配置します。
Like server { listen 81 }
10.可能かどうか説明してくださいNginx
エラーに置き換えられました502
エラー503
?
502
=エラーゲートウェイ
503
=サーバーの過負荷
可能ですが、確実にfastcgi_intercept_errors
設定ON
そしてエラーページディレクティブを使用できます。
Location / { fastcgi_pass 127.0.01:9001 fastcgi_intercept_errors on error_page 502 =503/error_page.html #… }
11、at Nginx
で、どのように説明しますかURL
中央に二重スラッシュを入れますか?
に入るにはURL
二重スラッシュを保持するには、merge_slashes_off
を使用する必要があります
文法:merge_slashes [on/off]
デフォルト:merge_slashes on
周辺:http,server
12、説明してくださいngx_http_upstream_module
役割は何ですか?
ngx_http_upstream_module
合格を定義するために使用fastcgi
転送、proxy
転送、uwsgi
転送、memcached
参照されるサーバーグループへのパスおよびscgiパス命令。
13. C10K
問題とは何か説明してください。
C10K
問題は、多数のクライアント(10,000)を同時に処理できないネットワークソケットです。
14.次のように述べてくださいstub_status
with sub_filter
ディレクティブの役割は何ですか?
Stub_status
命令:このコマンドは、現在のアクティブな接続など、現在の状態の現在の状態を理解するために使用され、現在の読み取り/書き込み/待機接続の総数を受け入れて処理します
Nginx
ディレクティブ:応答のコンテンツを検索して置換し、古いデータをすばやく修正するために使用されます
15.説明Sub_filter
アップストリームへのリクエストの圧縮をサポートしていますか?
使用できますNginx
モジュールNginx
リクエストをアップストリームに圧縮します。gunzip
モジュールは、クライアントまたはサーバーの「コンテンツエンコーディング:gzip」を使用して応答を解凍するフィルターです。 'gzip'エンコーディングメソッドをサポートしていません。
16.方法を説明してくださいgunzip
現在の時刻を取得しますか?
Nginxの現在の時刻を取得するには、Nginx
Module、SSI
with $date_gmt
Variablesを使用する必要があります。
$date_local
Proxy_set_header
17、with THE-TIME $date_gmt
サーバーの説明Nginx
目的は何ですか?
実行用-s
パラメータの実行可能ファイル。
18.サーバーにモジュールを追加する方法を説明してくださいNginx -s
コンパイルプロセスでは、Nginx
モジュールを選択する必要があります。Nginx
モジュールの実行時の選択はサポートされていないためです。