redis為什么設(shè)計(jì)成單線程

問(wèn):假設(shè)此刻有任務(wù)A和任務(wù)B,有以下兩種執(zhí)行方式伏尼,請(qǐng)問(wèn)哪種方式執(zhí)行更快呢?

  • 方式一:一個(gè)線程尉尾,先執(zhí)行A爆阶,執(zhí)行完后再執(zhí)行B
  • 方式二:兩個(gè)線程,一個(gè)線程執(zhí)行A沙咏,另一個(gè)線程執(zhí)行B

答:方式一更快辨图。CPU在切換線程的時(shí)候,有一個(gè)上下文切換的事件肢藐,這個(gè)上下文切換是非常耗時(shí)的故河,假設(shè)一個(gè)CPU主頻是2.6GHz,這意味著每秒可以執(zhí)行2.6 * 10^9 個(gè)指令, 那么每個(gè)指令的時(shí)間大概是0.38ns吆豹!而一次上下文切換鱼的,就將近需要耗時(shí)2000ns理盆!在這個(gè)時(shí)間內(nèi),CPU什么都干不了凑阶,只是做了保存上下文的動(dòng)作猿规。

問(wèn): 為什么一般是在I/O操作的時(shí)候要用多線程呢?

答: 因?yàn)镮/O操作一般可以分為兩個(gè)階段晌砾,即等待I/O準(zhǔn)備就緒和真正操作I/O資源坎拐!以磁盤(pán)為例,磁盤(pán)上的數(shù)據(jù)是分磁道养匈,分簇存儲(chǔ)的哼勇,但是數(shù)據(jù)往往不是連續(xù)排列在同一磁道上的,所以磁頭在讀取數(shù)據(jù)時(shí)往往需要在磁道之間反復(fù)移動(dòng)呕乎,這里就有一個(gè)尋道耗時(shí)积担,盤(pán)面旋轉(zhuǎn)將請(qǐng)求數(shù)據(jù)所在扇區(qū)移至讀寫(xiě)頭下方也是需要時(shí)間的,同時(shí)這里還包含一個(gè)旋轉(zhuǎn)耗時(shí)猬仁,所以在這一段時(shí)間內(nèi)帝璧,線程是阻塞著等待磁盤(pán)的,此時(shí)操作系統(tǒng)可以將那個(gè)空閑的CPU核心用于服務(wù)其他線程湿刽。因此I/O操作的情況下的烁,使用多線程,效率會(huì)更高诈闺。
因?yàn)閞edis不涉及I/O操作渴庆,所以設(shè)計(jì)為單線程的效率是最高的!

問(wèn): redis的性能和CPU無(wú)關(guān)雅镊,那redis的性能瓶頸在哪呢襟雷?

答:redis的性能瓶頸在于:
1. 網(wǎng)絡(luò)帶寬
2. 機(jī)器內(nèi)存大小
redis客戶端執(zhí)行一條命令分為四個(gè)過(guò)程,發(fā)送命令仁烹,命令排隊(duì)耸弄,命令執(zhí)行,返回結(jié)果卓缰。其中發(fā)送命令+返回結(jié)果這一過(guò)程被稱(chēng)為Round Trip Time(RTT,往返時(shí)間)redis的客戶端和服務(wù)器计呈,可能部署在不同的機(jī)器上,例如客戶端在北京征唬,服務(wù)端在上海震叮,兩地直線距離約為1300公里,那么1次RTT時(shí)間=1300×2/300000×2/3)= 13毫秒(光在真空中傳輸速度為每秒30萬(wàn)公里鳍鸵,這里假設(shè)光纖為光速的2/3),那么客戶端在1秒內(nèi)大約只能執(zhí)行80次左右的命令尉间。

參考:https://blog.csdn.net/u010122604/article/details/92829855

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末偿乖,一起剝皮案震驚了整個(gè)濱河市击罪,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌贪薪,老刑警劉巖媳禁,帶你破解...
    沈念sama閱讀 222,464評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異画切,居然都是意外死亡竣稽,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,033評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)霍弹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)毫别,“玉大人,你說(shuō)我怎么就攤上這事典格〉夯拢” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,078評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵耍缴,是天一觀的道長(zhǎng)砾肺。 經(jīng)常有香客問(wèn)我,道長(zhǎng)防嗡,這世上最難降的妖魔是什么变汪? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,979評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮蚁趁,結(jié)果婚禮上裙盾,老公的妹妹穿的比我還像新娘。我一直安慰自己荣德,他們只是感情好闷煤,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,001評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著涮瞻,像睡著了一般鲤拿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上署咽,一...
    開(kāi)封第一講書(shū)人閱讀 52,584評(píng)論 1 312
  • 那天近顷,我揣著相機(jī)與錄音,去河邊找鬼宁否。 笑死窒升,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的慕匠。 我是一名探鬼主播饱须,決...
    沈念sama閱讀 41,085評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼台谊!你這毒婦竟也來(lái)了蓉媳?” 一聲冷哼從身側(cè)響起譬挚,我...
    開(kāi)封第一講書(shū)人閱讀 40,023評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎酪呻,沒(méi)想到半個(gè)月后减宣,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,555評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡玩荠,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,626評(píng)論 3 342
  • 正文 我和宋清朗相戀三年漆腌,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片阶冈。...
    茶點(diǎn)故事閱讀 40,769評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡闷尿,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出眼溶,到底是詐尸還是另有隱情悠砚,我是刑警寧澤,帶...
    沈念sama閱讀 36,439評(píng)論 5 351
  • 正文 年R本政府宣布堂飞,位于F島的核電站灌旧,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏绰筛。R本人自食惡果不足惜枢泰,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,115評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望铝噩。 院中可真熱鬧衡蚂,春花似錦、人聲如沸骏庸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,601評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)具被。三九已至玻募,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間一姿,已是汗流浹背七咧。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,702評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留叮叹,地道東北人艾栋。 一個(gè)月前我還...
    沈念sama閱讀 49,191評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像蛉顽,于是被迫代替她去往敵國(guó)和親蝗砾。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,781評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 一. 操作系統(tǒng)概念 操作系統(tǒng)位于底層硬件與應(yīng)用軟件之間的一層.工作方式: 向下管理硬件,向上提供接口.操作系統(tǒng)進(jìn)行...
    月亮是我踢彎得閱讀 5,974評(píng)論 3 28
  • 近乎所有與Java相關(guān)的面試都會(huì)問(wèn)到緩存的問(wèn)題拇泣,基礎(chǔ)一點(diǎn)的會(huì)問(wèn)到什么是“二八定律”、什么是“熱數(shù)據(jù)和冷數(shù)據(jù)” 矮锈,復(fù)...
    Java資訊庫(kù)閱讀 1,016評(píng)論 0 3
  • 覺(jué)得自己如煙花般在人海綻放,不會(huì)凋落睁蕾,不會(huì)變老苞笨;生活是一場(chǎng)盛宴,不會(huì)變涼不會(huì)有吃光的一天子眶。為什么擁有時(shí)不知道珍惜瀑凝,...
    無(wú)邪i閱讀 167評(píng)論 0 0
  • 挽起黃河浪,相伴長(zhǎng)城長(zhǎng)臭杰。西出陽(yáng)關(guān)古人在粤咪,圓夢(mèng)到敦煌。古道新驛站渴杆,絲路迎朝陽(yáng)寥枝。駝鈴換作風(fēng)笛唱,大漠飛鳳凰磁奖。
    蘇意峰閱讀 535評(píng)論 0 3
  • 聽(tīng)個(gè)故事:《兩個(gè)和尚挑水吃》囊拜。 從前有兩座山,一座山上住著“一休”和尚比搭,另一座山上住著“二休”和尚冠跷。 山上沒(méi)有水。...
    美麗之琴閱讀 664評(píng)論 0 1