gemfireキャッシュに保存されているオブジェクトのサイズを確認する方法を知っている人はいますか?または、リージョン自体のサイズ(含まれるオブジェクトの数ではなく、MB単位)。
いくつかのオブジェクトの構成を微調整しているので、Gemfireがそれらをシリアル化するのにかかる時間と最終製品のサイズにどのような余分な/少ない負担をかけているのかを確認したいと思います...
乾杯、デイブ。
gemfireキャッシュに保存されているオブジェクトのサイズを確認する方法を知っている人はいますか?または、リージョン自体のサイズ(含まれるオブジェクトの数ではなく、MB単位)。
いくつかのオブジェクトの構成を微調整しているので、Gemfireがそれらをシリアル化するのにかかる時間と最終製品のサイズにどのような余分な/少ない負担をかけているのかを確認したいと思います...
乾杯、デイブ。
他の人がこの道を歩む場合に備えて、この質問に関連する可能性のある最近投稿された記事をいくつか示します。
Data Sizer Javaユーティリティクラス:http ://communities.vmware.com/docs/DOC-20695
おそらく、十分に具体的ではありませんが、それでも非常に役立つのは、 GemFireメモリサイジングガイドラインです: http: //communities.vmware.com/docs/DOC-20714
質問に答えるのは少し遅いかもしれませんが、次のいずれかを試して、キャッシュ内のオブジェクトのサイズを取得できます。
1)vmwareWebサイトからダウンロードできるGFMonを使用します。各リージョンのサイズがバイト単位で表示されます。
2)メソッドCachedDeserializableFactory.calcSerializedMemSize(object)を使用します。これにより、シリアル化された後のメモリ内のオブジェクトのサイズがわかります。
オブジェクトが常にシリアル化された形式でキャッシュに保存されるとは限らないことに注意する必要があります。オブジェクトをキャッシュで強制的にシリアル化するには、システムプロパティgemfire.PREFER_SERIALIZED=trueを使用できます。
例:java -Dgemfire.PREFER_SERIALIZED = true com.example.MyCacheServer