現在、さまざまなgetパラメーターに基づいてXMLページを作成するサービスがあります。パラメータの数が増え、さまざまな組み合わせの数も増えているため、ニスキャッシュのヒット率が低下しています。TTLを増やしたため、ヒット率は上がりましたが、私は次のことを考えています。
Edge Side Includesに出くわし、考えています。毎回50個の要素を含むXMLのページを作成する場合、ニスが1つのドキュメントに結合される50個のESIを含むページを生成できますか?
なぜあなたが尋ねる50のESI要素?各XML要素自体は1つのURLによって非常に簡単にキャッシュされますが、フィルターの組み合わせにより、多数の異なる完全なXMLドキュメントが生成されるためです。
したがって、1つのリクエストが最初の10個のXML要素を除外したとしても(get paramsを確認しないため)、ESIが使用されるため、各要素はキャッシュからフェッチされます。
これはサーバー上でどのくらい重いでしょうか?これを行うのは理にかなっていますか?ESIは非常に高価であり、その場合は意味がありません。
アップデート
まず、メモリが不足することはなく、Nukeはゼロです。現在、ヒット/ミスの比率は0,4で、ttlは4時間です。これは、私の意見ではひどいものです...これらすべての組み合わせ(国、ロケールなど)が原因です。さらに悪いことに、Tomcatは100%の使用率になり、ワニスが1〜3%の調査に留まっている間にハングしました。私の直感では、ESIにニスを塗ると、サブドキュメントによってTomcatがさらに保護され、容量が増えることを覚えておいてください。アイテムを奇妙にNukeする必要はありませんでした。つまり、最大1GBのキャッシュでは、キャッシュエントリの有効期限が切れる前にアイテムがいっぱいになることはありません。各サブドキュメントをキャッシュすると、メモリ制限に達してアイテムの削除を開始する可能性があると確信しています...しかし、ニスは、最近使用されていないアルゴリズムを使用していませんか?