成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

redis緩存在項(xiàng)目中的使用 Redis可以作為一個(gè)數(shù)據(jù)庫使用嗎?

Redis可以作為一個(gè)數(shù)據(jù)庫使用嗎?R分布式redis緩存如何部署使用?我的標(biāo)題號在一篇文章中有詳細(xì)討論希望對你有幫助。redis怎么緩存用戶列表,做到可以分頁展示?普通尋呼一般是直接找到分頁緩存,按

Redis可以作為一個(gè)數(shù)據(jù)庫使用嗎?

R

分布式redis緩存如何部署使用?

我的標(biāo)題號在一篇文章中有詳細(xì)討論

希望對你有幫助。

redis怎么緩存用戶列表,做到可以分頁展示?

普通尋呼

一般是直接找到分頁緩存,按頁放入緩存,但是這種緩存有很多缺點(diǎn)。

如果緩存不能及時(shí)更新,一旦數(shù)據(jù)發(fā)生變化,之前的所有分頁緩存都將失效。

比如微博這樣的場景,現(xiàn)在微博下面有一個(gè)排名靠前的。這在傳統(tǒng)的分頁中很難處理。

思路

最近想到了另一種思路。

數(shù)據(jù)緩存在Redis中,ID作為鍵;

將數(shù)據(jù)ID和排序分?jǐn)?shù)存儲在Redis的跳轉(zhuǎn)列表中,即zset

查找數(shù)據(jù)時(shí),先從Redis中的skip list中取出對應(yīng)的分頁數(shù)據(jù),得到ID列表。

使用multi get一次從redis中獲取ID列表中的所有數(shù)據(jù)。如果有任何數(shù)據(jù)缺少某個(gè)ID,就從數(shù)據(jù)庫中查找,再次返回給用戶,并根據(jù)ID在Redis中緩存找到的數(shù)據(jù)。

在最后一步,你可以有一些提示:

比如在某些ID數(shù)據(jù)缺失的情況下,直接先返回給用戶,然后前端用ajax請求缺失的ID數(shù)據(jù),再動態(tài)刷新。

還有一些優(yōu)化可能會使用Lua腳本合并操作,但考慮到Lua腳本運(yùn)行速度較慢,可能需要仔細(xì)測試。

如果使用Lua腳本,可以在一個(gè)請求中完成以下操作:

查找一個(gè)頁面上的所有文章,返回緩存文章的ID和內(nèi)容,以及未緩存文章的ID列表。

其他事情:

Lua支持LRU模式,也就是說,它像Memcached一樣工作。但似乎我還沒有 沒見過有人這樣用,很奇怪。

可能redis已經(jīng)準(zhǔn)備好存儲了,我不知道 不要擔(dān)心記憶的容量。