webdestroyasの答えの最も重要な点に同意するため、これをコメントに入れたかったのですが、少し長すぎました。
VPS環境にいるため、RAMが少なくなる可能性が高いことを意味します。この理由だけでも、メモリフットプリントがApacheよりも小さいため、Nginxが必要になります。
また、私は言及された議論のいくつかに同意しません。
構成の容易さ:
NginxはApacheほど難しくありません。違います。Apacheに慣れている場合、変更は常により困難になりますが、これは構成スタイル自体がより困難であることを意味するものではありません。1年以上前にApacheからNginxに完全に移行しましたが、今日ではNginxの設定が非常に簡単であると感じる一方で、Apacheサーバーの設定に苦労します。
Rubyの場合:
NginxにはPassengerがありますが、通常、Rubyに接続するための劣ったメソッドとして説明されています。私はRubyプログラマーではないので、これを検証することはできませんが、UnicornとThinがより良い代替手段として言及されているのをよく見ます。
結論:
Nginxはリバースプロキシになりました。最初は、静的ファイルを提供し、HTTP / 1.0経由でバックエンドサーバーにリバースプロキシを提供するだけでした。それ以来、fastcgi、負荷分散、その他のさまざまな機能が追加されましたが、最初の設計目的は静的ファイルとリバースプロキシを提供することでした。そして、これは本当にうまくいきます。
それに対して、Apacheは汎用のWebサーバーです。プロキシを完全にリバースできることは間違いありませんが、メモリフットプリントを最小限に抑えるように設計されていないため、Nginxよりも多くのリソースが必要です。つまり、最初のVPS環境の引数が有効になります。