云帶來(lái)的變化
亞馬遜云、國(guó)內(nèi)的阿里云,這些快速建設(shè)的云以及帶來(lái)的變化就是云技術(shù)的蓬勃發(fā)展啤斗。云本質(zhì)上就是社會(huì)分工棉饶,專業(yè)分工為云的提供者和云的使用者厦章,作為云的提供者有提供者的相關(guān)技術(shù),大多數(shù)人作為云的使用者照藻,那么要明白在云環(huán)境下分布式技術(shù)袜啃。例如Pass環(huán)境下docker、k8s幸缕、kv數(shù)據(jù)庫(kù)等群发,而redis就是kv數(shù)據(jù)庫(kù)的一種,代碼量很少发乔,卻性能強(qiáng)大熟妓。作為技術(shù)人員,不僅要眼界廣闊栏尚,但還是要踏踏實(shí)實(shí)的閱讀一些開(kāi)源代碼起愈。
為何選擇讀redis
實(shí)際上高速緩存還有memcache等優(yōu)秀的代碼,而且memcache译仗、redis也被用go告材、java等重寫(xiě),而且可以看到用go寫(xiě)的memcache比c寫(xiě)的更加精簡(jiǎn)古劲,這都是語(yǔ)言上的優(yōu)勢(shì)。實(shí)際上缰猴,不管怎么樣产艾,只要寫(xiě)的好,用c寫(xiě)的代碼效率會(huì)最高滑绒,因?yàn)閏的本質(zhì)上是直接操作機(jī)器操作系統(tǒng)的模型闷堡;而用其它語(yǔ)言寫(xiě)的會(huì)更加精簡(jiǎn),但是會(huì)損失效率疑故。任何語(yǔ)言都是有美的杠览,如果要?jiǎng)?chuàng)立一門語(yǔ)言,c肯定是繞不開(kāi)的纵势。選擇redis作為重溫c代碼的突破口踱阿,是一個(gè)很好的選擇。
redis源碼
按照這個(gè)順序去閱讀代碼钦铁。
REDIS
數(shù)據(jù)結(jié)構(gòu)
sds
adlist
dict
t_zset
hyperlog
內(nèi)存
intset
ziplist
數(shù)據(jù)類型
object
t_string
t_list
t_hash
t_set
t_zset
數(shù)據(jù)庫(kù)
db
notify
rdb
aof
客戶端與服務(wù)器
ae
networking
redis
分布式
replication
sentinel
cluster