我有大量的記錄,並且只顯示使用分頁的部分。沒關係。由於我在每個頁面上都有很多頁面,因此有沒有一種技術可以避免這種情況?對大量記錄分頁
我有一個redis作爲會話存儲和postgres數據庫。
我想或許在會話中保存查詢結果數(我只有一個搜索頁面)。
我確定這是一個很長時間以來這樣做的人經常發生。
可以做些什麼來優雅地解決這個問題? (不要每個頁面都得到這個數)
我有大量的記錄,並且只顯示使用分頁的部分。沒關係。由於我在每個頁面上都有很多頁面,因此有沒有一種技術可以避免這種情況?對大量記錄分頁
我有一個redis作爲會話存儲和postgres數據庫。
我想或許在會話中保存查詢結果數(我只有一個搜索頁面)。
我確定這是一個很長時間以來這樣做的人經常發生。
可以做些什麼來優雅地解決這個問題? (不要每個頁面都得到這個數)
你可以使用無限滾動。這是像Facebook使用的主要網站。
http://railscasts.com/episodes/114-endless-page-revised?view=asciicast
使用sorted_set來存儲你的記錄,你可以從一個極限的特定索引提取記錄。
從Postgres表triggers和單獨的服務器端進程(例如python腳本)使用NOTIFY和LISTEN。
保持你的redis數據是最新的,確保處理回滾事務。
您可以使用redis ZSET(有序集)來存儲易分頁的'索引'。 如果您有多種訂購數據的方式,您可以使用您的實際數據的HSET,您可以通過id從您的ZSETs中引用該數據。 在redis Lua腳本中,您可以在一次調用中獲得快速結果,該調用使用ZSET ID收集HSET數據。
致敬,TW