Nginxについてもっと学びました。以前は同じシステム上に1つのWebアプリケーションを提供していましたが、別々にスケールアウトしたいと思っていました。私はFlaskアプリケーションを実行している2 GunicornサーバーでNginxロードバランサをセットアップすることができました。私の質問は、これらのGunicornサーバーのそれぞれからNginxの静的なサービス機能を使用するように設定する方法です。複数のWSGIサーバーから静的ファイルを提供するNginxロードバランサ
私は3つのバーチャルプライベートサーバを持っていますが、私は払っています。ナンバー1はロードバランサ/リバースプロキシとして2番と3番のWebアプリケーションを複製するリクエストをルーティングするNginxを持っています。私は静的なディレクトリを含めて、アプリケーションを実行するために必要なものすべてでこれらを単独で欲しいと思っています。したがって、ロードバランサ/リバースプロキシに静的ディレクトリを持たせる代わりに、すべてWebアプリケーションディレクトリ構造に含まれています。
現在、それは次のようになります。
Gunicorn -> Flask
/
Nginx loadbalancer/reverseproxy
\
Gunicorn -> Flask
私は静的なディレクトリにアクセスし、nginxのロードバランサー/リバースプロキシに静的ファイルを返すために、各Gunicornサーバー上でnginxのを配置する必要がありますか?したがって、次のようになります:
Nginx -> Gunicorn -> Flask
/
Nginx loadbalancer/reverseproxy
\
Nginx -> Gunicorn -> Flask
多分私はこれをすべて間違っており、上記は過度なことであり、パフォーマンスが向上しない可能性があります。もしそうなら、ロード・バランシングとキャッシングを1つのメイン・エントリー・ポイントで行い、Gunicornにルーティングするための優れた構造は何ですか?
私が本当に望むのは、Web Appのすべてをインストールしたサーバーを用意して、必要に応じてさらに追加して、ロードバランサをこれらのアップストリームサーバーに向けるだけだということです。
提案が役に立ちます。一日の終わりの前にnginxのを、これは生産上だろうと仮定し、限りgunicornの私の理解が私を取るとして、あなたは静的なファイルを提供するためにユニコーン自体を使用してはならない、
フィードバックに感謝します。私はあなたの提案をチェックアウトします。私はその展開が開発に合っていることを賞賛します。あなたのウェブアプリケーションは、ウェブサーバーなしでは何もできません。はい私は静的なコンテンツ(css、javascript、htmlコンテンツ)に特化していますが、これはすべてのコードです。 –
Asdあなたは、プログラミングとは関係ない設定からトラブルシューティングまで多くのAnaconda関連の質問に答えますが、パッケージ管理のためのソフトウェアです。これらの質問は投票されていないようです。 –