我在使用java運行庫的appengine上使用objectify。我也通過@Cached註釋爲幾個實體使用memcache。我的問題是關於將對象放入數據存儲區時的物化行爲。放置具有@Cached批註的實體時,是否更新了內存緩存?或者該實體的任何現有緩存數據現在與數據存儲不同步。我希望在將對象放入數據存儲區時更新memcache,但是我不知道objectify默認是這樣做,還是需要我自己寫這個。如果更新了內存緩存,那麼我的數據可能會有更高的到期時間(或沒有到期)。僅供參考我不使用交易。Appejeine memcache與Objectify到期
-1
A
回答
6
當您使用@Cached時,Objectify以接近事務安全的方式處理您對memcache的所有更新。這是「近乎事務性的」,因爲雖然它在爭用中不會分崩離析,但在極少數情況下它可能會不同步 - 例如,如果您遇到DeadlineExceededException或OutOfMemoryException並且Google終止您的VM。
大多數類型的緩存數據的過期時間都是合理的。
0
使用Objectify,您在Memcache中的數據永遠不會與數據存儲不同步(除了一些較舊的版本和特殊情況下,例如真正不幸的截止日期)。我只是無效Memcache版本(所以下一個「get」將去數據存儲並寫入Memcache),而不是更新它,雖然我不知道這一點。無論哪種方式,Objectify都會爲你排序。
相關問題
- 1. Objectify保存沒有碰到Memcache
- 2. PHP Memcache密鑰到期
- 3. 的Memcache ::得到不與鍵
- 4. Memcache過期時間
- 5. Memcache的最大密鑰到期時間
- 6. Google App Engine Memcache - 滑動到期
- 7. 與交易的Memcache?
- 8. 過期的memcache項目autodelete?
- 9. 轉移到Memcache
- 10. 如何使用光標與Objectify
- 11. 與PHP和Python共享Memcache
- 12. Memcache與內存中的MySQL
- 13. 與php和nodejs共享memcache
- 14. Objectify無法找到數據存儲與緩存上的實體
- 15. lxml [.objectify] documentElement tagName
- 16. GWT-Objectify:基本
- 17. Objectify LoadException(將V4.1.3升級到V5後)期望的屬性值,但找到...
- 18. 通過正則表達式過期memcache
- 19. CakePHP的memcache項目過期太早
- 20. Objectify - 將@Id添加到任何類
- 21. GAE Java Objectify找不到父母
- 22. Objectify Ofy()沒有找到「查詢」方法
- 23. 從AppEngine Objectify到Google搜索索引 - OutOfMemory
- 24. 在php中獲取memcache項目的到期時間?
- 25. Zend Doctrine2 memcache vs PHP Memcache類
- 26. memcache和memcache java客戶端
- 27. Objectify模擬框架?
- 28. 時髦緩存與Memcache相比...?
- 29. 在高性能網站與PHP的Memcache
- 30. Google App Engine ndb memcache何時使用memcache
感謝您的快速響應!這就是我所希望的答案,我相信你是那個如何做出客觀化的人,所以你當然知道你在說什麼。感謝您的工作,它使數據存儲更易於使用! – Patrick 2012-04-06 18:55:34
這個關於直接訪問數據存儲的問題,通過物化來實現?這意味着memcache更新將在數據存儲區回調中處理,因此工作得非常好!我不確定我是否真的瞭解你們在這裏: – honzajde 2013-01-27 23:44:25