我在我的應用程序中使用ehcache和兵馬俑。當我用兵馬俑使用ehcache時,我的響應時間增加了700倍。我認爲兵馬俑需要時間測量物體的大小,因爲它給我的警告:當使用ehcache和兵馬俑時IgnoreSizeOf註釋
net.sf.ehcache.pool.sizeof.ObjectGraphWalker checkMaxDepth 警告: 1000所對象引用的配置的限制已達到而 試圖計算對象圖的大小。如果調整操作繼續,則可能發生嚴重的性能下降。 這可以通過設置CacheManger或緩存 元件maxDepthExceededBehavior爲「中止」或加入終止點 與@IgnoreSizeOf註解來避免。如果在配置的限制下性能下降不是 問題,請使用CacheManager或緩存元素maxDepth屬性提高限制值。有關 的更多信息,請參閱Ehcache配置文檔。
當我在我的課上使用了@IgnoreSizeOf註釋時,響應時間減少了很多。我的問題是使用@IgnoreSizeOf註釋有什麼缺點。爲什麼它正在使用以及它如何減少我的應用程序的響應時間請幫助。 在此先感謝。
雅很深遠OOME,這就是爲什麼我設置maxBytesLocalHeap。認爲它可以解決我的OOM問題 – user1147070
這就是事實......再說一次,在使用註釋時沒有性能影響,相反。然而,它們是測試添加到緩存中的對象圖表的一種性能影響(放置)。影響有多大,可能大部分取決於圖表的大小......但通常這些並不太大,但條目可以引用「共享」圖表。在確定尺寸時應該忽略這一點,使用該註釋。 –