Javaのキャッシュのどのようなタイプは、頻繁にケースデータの変更に使用する必要がありますか?
-
22-09-2019 - |
質問
私は多くの集計タイプによってJSP番組データを持っています。例えば。市場では、カテゴリー別、サーバーの種類、など。で私は何を持っていることはパブリッシャと時間によってデータがあります。出版社は、私の場合は、データの最も細かいレベルです。
さて、このデータは、すべての1/2時間に変更します。半分の時間あたりのデータ数は、ほぼ5Kと時間ルックスデータで誰でも24時間まで4時間です。サーバーがロードされるときにこれらのケースではJSPのロード時間が急激に増大します。私は、のLinkedHashMapを使用して、LRUキャッシュしようとしたが、それはパフォーマンスとして最適なソリューションはまだ良いではないではないようです。
使用するデータ構造に関する任意のアイデアは理解されるだろう。
解決
あなたは Ehcacheののようなキャッシュツールを使用することができます。
他のヒント
は、パフォーマンス、悪かったか、低いヒット率を持っていましたか?時にはキャッシュを維持するだけで直接データを照会よりも硬いです。これは、低ヒット率と特にそうです。
それはあなたが、あなたは唯一の各キャッシュ・ヒットのためには20msを集めている、キャッシュヒットを保存するために、キャッシュヒットを提供するためには10ms、および50msのキャッシュミスにサービスを提供するために、プラスの20msかかる場合は10安打のための200msのようにします。これは音GREATていますが、有効期限を追加、および無効化ではなく、記載のキャッシュの無効化に、突然、あなたはそれがキャッシュが有用である持っているすべてのミスのためにの少なくともの10本の安打をとるポイントです。
キャッシュがフラッシュモブのための素晴らしいですが、それは獲得として、アドホックツールのために、多くの時間が、それは多くのリソースとして無駄にすることができます。