您好,登錄后才能下訂單哦!
分別使用MongoDB和Redis的有序集合來實現排行榜功能。對比傳統數據庫的排序功能,尋找有序集合實現排序功能的優點。
具體到一個實際例子,比如說直播網站觀眾向主播送禮物的排行版,如果直接在數據庫里面進行排序, 弊端有以下幾點:
????? 排行榜會實時更新,數據每一次變化都要排序,會對數據庫的性能造成影響。. 頻繁更新數據,導致數據庫性能下降。
????? 數據量太大時排序時間緩慢。
????? 對被排序字段添加索引會占用更多空間。
使用redis有序集合進行排序:
????(1).直接把MongoDB中的數據導入到Redis中名為rank的有序集合中:
????????
????????
????(2).顯示某一個特定用戶的排名,具體代碼如下:
????????
????(3).顯示全部用戶的排名,具體代碼如下:
????????
????(4).運行效果:
????????
????有序集合具有唯一性(假設rk為排行榜名稱,user1、user2等為玩家唯一標識)。score可以相同
????????
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。