為什么說(shuō)redis不是單線程 redis原理,單線程怎么做到高并發(fā)的?
redis原理,單線程怎么做到高并發(fā)的?但是,線程只能依賴于單個(gè)處理器的速度、內(nèi)存的速度、處理器上緩存的速度以及總線傳輸?shù)乃俣?。剩下的是你的網(wǎng)絡(luò)io。然而,線程的高并發(fā)性完全取決于程序的運(yùn)行速度。Re
redis原理,單線程怎么做到高并發(fā)的?
但是,線程只能依賴于單個(gè)處理器的速度、內(nèi)存的速度、處理器上緩存的速度以及總線傳輸?shù)乃俣取JO碌氖悄愕木W(wǎng)絡(luò)io。然而,線程的高并發(fā)性完全取決于程序的運(yùn)行速度。Redis絕對(duì)不是線程。連接就是一根線。你不應(yīng)該正確理解它。
單線程的redis如何實(shí)現(xiàn)并發(fā)訪問(wèn)?
Redis以單進(jìn)程的形式運(yùn)行,命令一個(gè)接一個(gè)的執(zhí)行,解決了程序的并發(fā)問(wèn)題。所以當(dāng)數(shù)據(jù)涉及到并發(fā)問(wèn)題時(shí),比如秒殺,我們將數(shù)據(jù)行存儲(chǔ)在redis中,然后用戶請(qǐng)求減少redis中的庫(kù)存。Redis是單線程,所以Redis reduction成功后不會(huì)減少庫(kù)存,后續(xù)請(qǐng)求被拒絕,然后在數(shù)據(jù)庫(kù)中減少庫(kù)存,這樣就不會(huì)出現(xiàn)負(fù)庫(kù)存的問(wèn)題。這是基本的工作原理