1

Unixでは、通常、アプリケーションサーバーの前のVarnishの前にnginxをデプロイします。ここでは、nginxとVarnishの両方がリバースプロキシとして機能しています。Varnishはキャッシュを維持し、If-Modified-Since、Cache-Control応答ヘッダー、アプリケーションからのPURGE要求などをサポートします。nginxは多くの接続を受信するのが得意です。また、静的コンテンツを提供したり、gzip圧縮を有効にしたりするためにも使用します。

Windowsでは、IISの前でSquidを使用して管理できます。(Python)アプリケーションをISAPIワイルドカードフィルターとして(isapi-wsgiパッケージを使用して)展開することを計画しているため、アプリケーションはIISによって管理されるスレッドプールに存在します。

ただし、WindowsでのSquidの開発は停滞しているようです。ディスクから直接特定のものを提供できるように、IISをポート80のままにしておくことをお勧めします。また、IISは、Windows上のSquidよりも多くの接続を処理する際の回復力が高いと思います。

人々はここで通常何を使用しますか?1つのオプションは、IISの前で別の独立したキャッシングプロキシを使用することです。もう1つのオプションは、ISAPIフィルターとしてインストールされたもので、リクエストをインターセプトし、If-Modified-Since、画像やその他のキャッシュリソースの要求、アプリケーションからのPURGEリクエストなどに応答します。

そのようなものは存在しますか?または、SquidとMS ISA(高すぎる)の唯一の本当の選択肢です。

乾杯、マーティン

4

1 に答える 1

0

アプリケーション要求ルーティングを使用するIIS7(http://www.iis.net/download/ApplicationRequestRoutingを参照)は、同じボックスまたは中間層の前にあるキャッシュサーバーでの完全なプロキシキャッシュをサポートします。

ARRをインストールしたら、コマンドラインからプロキシキャッシュを有効にするには、次の手順を実行します。

%windir%\System32\inetsrv\appcmd.exe set config  -section:system.webServer/diskCache /+"[path='C:\MyCacheFolder',maxUsage='0']" /commit:apphost

クエリ文字列に基づいてキャッシュを変更するには、次のコマンドを実行します。

%windir%\System32\inetsrv\appcmd.exe set config  -section:system.webServer/proxy /cache.queryStringHandling:"Accept"  /commit:apphost 

詳細については、上記のドキュメントリンクを参照してください。静的コンテンツと動的コンテンツでは、キャッシュ戦略などが異なる可能性があることに注意してください。これを使用する場合は、特定の質問をフォローアップしてください。きめ細かい制御を探している場合は、すべてを並べるのは少し難しいかもしれません。

于 2012-08-31T16:03:16.160 に答える