概述:
學(xué)習(xí)使用Redis,其實(shí)并不需要去研究其底層數(shù)據(jù)的實(shí)現(xiàn)。我們只需要了解他有哪些常用的數(shù)據(jù)類(lèi)型,然后熟練使用,就可以很好的掌握Redis 這個(gè)工具了。但是這樣的學(xué)習(xí)方法只適合Redis 的入門(mén),“工欲善其事必先利其器”,我們想要用好Redis,則必須深入了解Redis 的底層到底是如何實(shí)現(xiàn)的,我們?cè)谶x擇數(shù)據(jù)結(jié)構(gòu)的時(shí)候才能做出正確的選擇。
在上一篇博客《深入淺出Redis-redis底層數(shù)據(jù)結(jié)構(gòu)(上)》中,我們已經(jīng)講解了Redis 中的 動(dòng)態(tài)字符串,鏈表,字典
在這里我們簡(jiǎn)單回顧一下他們的特點(diǎn):
1、動(dòng)態(tài)字符串SDS:區(qū)別于C語(yǔ)言字符串,具有良好的伸縮性,在獲取字符串長(zhǎng)度,字符串修改,防止緩存區(qū)溢出等性能都比C語(yǔ)言字符串好
2、鏈表:順序存儲(chǔ)對(duì)象信息,有用于緩存鏈表長(zhǎng)度的屬性,在插入刪除對(duì)象功能中有良好性能,避免環(huán)的產(chǎn)生
3、字典:key-value 存儲(chǔ)方式,通過(guò)hash值計(jì)算,判斷key的存儲(chǔ),當(dāng)容量過(guò)大,會(huì)通過(guò)rehash重新分配字典大小