詳解高并發(fā)

詳解高并發(fā)

深圳達內(nèi)教育      2022-04-24 01:56:01     7

詳解高并發(fā),其實【高并發(fā)】的意思和【并發(fā)】的意思不止是差了一個高字,而是個寬泛得多的概念。【高并發(fā)】是指可以讓軟件系統(tǒng)在一段時間內(nèi)能

課程價格 請咨詢

上課時段: 授課校區(qū):

詳細介紹

其實【高并發(fā)】的意思和【并發(fā)】的意思不止是差了一個“高”字,而是個寬泛得多的概念。【高并發(fā)】是指可以讓軟件系統(tǒng)在一段時間內(nèi)能夠處理大量的請求。比如每秒鐘可以完成10萬個請求。這是互聯(lián)網(wǎng)系統(tǒng)的一個重要的特征。

不像【并發(fā)】說的是“處理”,【并行】說的是“執(zhí)行”,【高并發(fā)】說的是最終效果。只要能達到效果,不管怎么實現(xiàn)都行。因此,極端一點【高并發(fā)】甚至并不一定需要【并行】,只要處理速度快的足夠滿足要求就可以。如啟動一個nginx的【OS進程】,它只能用到一個CPU核心,也就不可能【并行】。但是他如果能每秒能處理10萬個請求,而業(yè)務(wù)需求只要求8萬個請求就可以了,那么這個單進程的nginx本身就算【高并發(fā)】了。

當(dāng)然,現(xiàn)實當(dāng)中【高并發(fā)】的要求會相當(dāng)“高“(雙十一都刷過吧),說的也是完整的業(yè)務(wù)流程請求,而非簡單的HTTP轉(zhuǎn)發(fā)。這樣的系統(tǒng)大量應(yīng)用各種【并發(fā)】的集中人類智慧的各種方法,并盡可能的【并行】。

除了【并發(fā)】和【并行】,【高并發(fā)】還需要:

數(shù)據(jù)表普遍被分庫分表,否則單機放不下,或者查詢性能不足

解決分布式事務(wù)

因為機器都可能壞,為了保證少數(shù)機器壞掉不會影響處理的性能,必須引入HA機制

因為系統(tǒng)都有極限,超過極限響應(yīng)能力就會急劇下降。因此必須引入限流的方案來保護系統(tǒng)

這么復(fù)雜的系統(tǒng)會涉及到N個service,N個存儲,N個隊列…… 這些資源的管理又成為了新的問題,這又需要對集群和服務(wù)做管理

這么多服務(wù),肯定要解決分布式的Tracing和報警問題

……

當(dāng)面試的時候提起【高并發(fā)】,大概率是希望面試者聊聊上面這些主題。但請?zhí)貏e特別留意,不同領(lǐng)域的【高并發(fā)】實際的意思(怎么算“高”,如何達成,哪些問題是關(guān)鍵問題)會非常不同。電商的高并發(fā),抖音的高并發(fā),12306賣火車票的高并發(fā),基金交易系統(tǒng)的高并發(fā),海量數(shù)據(jù)處理的高并發(fā),這些問題其實都很不同。所以我很建議每次都討論具體的問題,而非泛泛談?wù)摗靖卟l(fā)】這個名詞。

拓展一下,從商業(yè)上考慮【高并發(fā)】,其實際的意思是“用盡可能少的資源實現(xiàn)足夠滿足需要的并發(fā)請求數(shù)量,以形成競爭優(yōu)勢。能用有限資源短時間內(nèi)處理大量請求,也就意味著:

1)單個請求處理成本的降低。比如傳統(tǒng)企業(yè)處理一單交易成本是10元,而互聯(lián)網(wǎng)企業(yè)壓低到了0.1元。這就形成了“規(guī)模經(jīng)濟下的低成本結(jié)構(gòu)“,是一種碾壓式的競爭優(yōu)勢。

2)提高轉(zhuǎn)化效率。為了獲客,市場部門都會拼命做如做拼團、發(fā)紅包的工作。假設(shè)兩家公司花同樣的預(yù)算做獲客。公司A的下單系統(tǒng)只能支持1000單/s;而B公司能做到成本不比A公司多很多的情況下實現(xiàn)10000單/s,那么過一段時間,A公司將被徹底打垮。如果你是老板,并且對用戶需求很有信息,你會玩命砸技術(shù)投入,避免系統(tǒng)成為商業(yè)閉環(huán)的瓶頸(如果發(fā)生了,真坑?。?/p>

這也就是為啥有些公司突然火起來,然后玩命招技術(shù)人員,我們的機會也變得多了起來的原因。在本站的多線程教程里,詳細為大家講解了各種高并發(fā)的知識,想提升自己的小伙伴千萬不要錯過哦!

培訓(xùn)啦提醒您:交易時請核實對方資質(zhì),對于過大宣傳或承諾需謹慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險,謹防上當(dāng)。