2012-01-11 106 views
1

有什麼辦法從memcache獲取隨機項目?從Memcache獲取隨機項目 - Google App Engine

+1

你想解決什麼問題?你需要什麼樣的隨機性統計特性?沒有內置的方式來詢問memcache的隨機值。但是,如果沒有此功能,可能有辦法實現您的目標。 – 2012-01-11 17:22:07

+0

我正在做類似於這個解決方案http://stackoverflow.com/a/3451052/281021。我只是想知道它是否可以從使用memcache的任何優化中受益。 – Albert 2012-01-16 11:46:45

回答

2

不,沒有辦法從memcache中選擇一個隨機元素。它也不是爲此設計的。

+0

您幫助提供此解決方案http://stackoverflow.com/a/3451052/281021。 memcache可以以任何方式幫助嗎? – Albert 2012-01-16 11:49:12

+1

@Albert不,因爲無法在memcache上查詢,只能通過鍵獲取。 – 2012-01-16 12:09:54

3

不是直接通過API。

但是,您可以爲memcache中的所有圖像創建圖像鍵列表,然後從該列表中隨機選擇。列表本身也需要存儲在memcache中。

+0

您如何知道在memcache中存在哪些圖像,以創建您的列表? memcache中的項目可以在任何時候消失,不會有任何警告。 – 2012-01-11 17:13:52

+0

像往常一樣,您嘗試從緩存中獲取它,如果不可用從數據存儲加載它。額外的工作是在從memcache添加/刪除圖像時添加/刪除列表中的條目。 – 2012-01-11 18:25:54

+0

我認爲去數據存儲是不可接受的。對我來說,問題是「我現在可以得到一個在memcache中的隨機項目,而不需要去數據存儲區」 – 2012-01-11 21:21:37