2014-09-02 85 views
0

Google對共享內存緩存中memcache條目何時可能過期的含義非常模糊。這是完全可以理解的,因爲它是免費和共享的,但是有沒有人對我的條目在從共享緩存中刪除之前可能存在的時間有任何實際指導? 1小時? 1天? 1周? 1個月?GAE「盡力而爲」內存緩存通常持續多長時間?

我打算存儲一些會話令牌,並試圖找出會話可以重新訪問多長時間。

+0

您可以在這裏找到的解答: http://stackoverflow.com/questions/2649747/how-often-does-memcache-on-google-appengine-lose-data/39140823#39140823 – cat 2016-08-25 09:05:57

回答

0

我已經誠實地看到了memcache持續了一天,最多隻有一個小時....而且我從未主動監控過memcache,所以如果您在memcache中擁有更大或更小的時間範圍,我不會感到驚訝。

這真的很難說,因爲(我猜)它取決於您的實例使用的計算機的內部使用情況以及其他計算機需要多少資源。

不幸的是,這個問題還沒有真正的答案:代碼防禦性,總是檢查memcache,然後如果你沒有在memcache中找到你的數據,你從永久數據(數據存儲我猜?或雲存儲)然後將其推回到memcache以供下次使用

1

memcache可以隨時丟棄所有數據。你無法真正相信到期時間。

根據Google的說法,即使沒有或使用memcache,您的應用程序也必須正常工作。 memcache只是一個優點,可以避免進行大量數據存儲查詢並正確管理您的配額。

對你而言,memcache不是存儲會話標記的地方。 如果您使用Python,則可以使用webapp2會話。 AppEngine的功能非常棒。

+0

感謝回答,但這不回答這個問題。我知道Google party有關memcache可用性的一行,但我正在尋找關於GAE memcache中實際存在多長時間的真實世界體驗。 – 2014-09-03 15:49:24

+0

我回答了你最後一句話。有時項目會在1小時後過期,有時在1天后過期。 – 2014-09-03 19:47:51