我有一個網站需要在其主頁上顯示「隨機」選項。這個列表生成起來有點貴,所以我想研究一下緩存,這個緩存仍然允許列表對於未經訓練的眼睛仍然顯得有些隨意。高速緩存「隨機」數據的一般策略
我的想法是在一個給定的範圍內使用一個隨機選擇的數字(假設爲10,作爲參數)作爲緩存鍵的一部分。僞代碼看起來像這樣:
randomCacheVariation = (random number between 1 and 10)
cacheKey = "myRandomList_" + randomCacheVariation
If cache.contains(cacheKey) Then
return existing random list
Else
generate new radom list
add to cache
return list
End If
有沒有人有更好的建議,應該如何實現這樣的東西?
更新:
只是要清楚,我不是在尋找的緩存服務的實現,但如何通過存儲我的名單變化的一些有限數量的緩存僞隨機數據的策略緩存。
這是一個很好的建議......選擇一個大的初始抽樣,並將它緩存,然後選擇較小在每次請求時都會大聲喧譁。 – DanP 2011-04-20 16:25:05
@DanP:如果沿着這條路線走下去,那麼當您生成隨機數據時,它不會減慢每個單獨的頁面請求。 *但是*,我會確保AppDomain在閒置時不會被卸載,否則下一個請求可能需要很長時間:http://stackoverflow.com/questions/838318/how-to-keep-asp-net -assemblies功能於AppDomain的活 – 2011-04-20 19:43:19