問題タブ [varnish-4]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
caching - なぜ多くの人がワニスに合格するのですか?
バックエンドが時々「遅く」なるワニスキャッシュ(バージョン4)があります。このバックエンドが飽和しないように「遅い」場合、ヘルスチェックを使用して、ワニスがキャッシュから古いコンテンツを提供するように強制します。
したがって、mi バックエンドが定義されます。
}
}
そして、猶予モードを構成します。
}
ただし、この構成でのみ、バックエンドが異常でオブジェクトがキャッシュに存在しない場合、varnish は 503 を返します (バックエンドから取得したい)。この動作を回避するには、同じ conf を vcl_miss に配置して、「問題のある」バックエンドからコンテンツを強制的に取得する必要があります。
}
このようにして、結果は期待どおりです。バックエンドが遅い場合、ワニスはキャッシュから古いコンテンツを提供し、応答時間が改善されます。
しかし、私は今、より多くの「合格」要求を持っていることを発見しました. もちろん、ワニスがキャッシュする必要があることを要求します(そしてキャッシュする前に)。約 *100 以上。そのため、問題を修正しましたが、別の問題を作成しました。
cookie は (recv とバックエンド応答の両方で) 設定解除され、varnish をキャッシュに強制します。
では、私の質問は... なぜパスのリクエストが多いのですか? どうすれば回避できますか?
html - Varnish でエンコードされた HTML エンティティを含む ESI URL を参照するにはどうすればよいですか?
Varnish 4.1.2 を使用しており、ESI コンテンツを含めようとしています。'
含まれるコンテンツの URL に、 ( )などのエンコードされた HTML エンティティが含まれる場合があります'
。
たとえば、外部シェル用にアプリから返された HTML には次のものがあります。
これにより、3 つのセグメントを持ち、クエリ文字列を持たないパスの ESI リクエストが生成されます。これを完全にデコードすると、次のようになります。
esi
map
alice's house
3 番目のセグメントのアポストロフィは、HTML ドキュメントで送信されるため、HTML エンコードされます。スペースは URL の一部であるため、URL エンコードされます。
ただし、Varnish は、ESI 要求を行う前に HTML エンコードされたエンティティをデコードしないようです。に対してリクエストを送信しますが、パスまたは URL で が正当でない/esi/map/alice's%20house
ため、これは不適切なリクエストです。&
Varnish でこれらの ESI リンクを適切に処理するにはどうすればよいですか?
caching - Varnish4 - PURGE 応答ヘッダーを変更する
Varnish4 で PURGE 応答ヘッダーを変更しようとしています
vcl_recv、vcl_deliverの" Server: Varnish " を変更しました。PURGE 以外の他のリクエストで機能しているようです。
サーバーヘッダーを変更するか、少なくともカスタム応答ヘッダーを追加する必要があります
それに関するドキュメントが見つからないので、以前に誰かがそれをやったのか、それともハードコードされたオプションなのか疑問に思っていました.
symfony - sitemap.xml をキャッシュするのは良い考えですか?
Symfony アプリケーションによって動的に生成される sitemap.xml ページがあります。ワニスも使用しています。sitemap.xml ページをキャッシュするのが良い考えなのか、それとも役に立たないのか知りたいです。
ありがとう。