0
我們正在緩存一個以下類格式的對象。Memcached部分對象無效
公共類CachedObject {
@javax.persistence.Transient
public List<ObjectA> objectAs;
@javax.persistence.Transient
public Date cacheExpirationDate;
}
我們有檢查緩存對象的過期日期和到期前刷新高速緩存的過程。如果有更新,還有另一個進程使用replace(spymemcached)方法更新緩存的對象。在我們的情況下,更新通常發生在objectAs上。緩存的對象永遠不會被驅逐。我們還使用默認平板(1MB)大小設置啓動了memcached。
問題:當我們獲取一些對象時,我們發現緩存對象不是null,但是objectAs爲null。我們隨後在嘗試對objectAs執行任何操作時會得到空指針異常。我檢查過,並且在緩存/更新之前我們總是設置objectAs的值。我還從遠程登錄界面看到了不完整的緩存對象。當我刷新緩存時,它開始在緩存中顯示完整的對象。
有人可以請建議什麼可能會出錯嗎?