什么是分布式 有多少互聯(lián)網(wǎng)系統(tǒng)確實需要使用分布式架構?
有多少互聯(lián)網(wǎng)系統(tǒng)確實需要使用分布式架構?莫說互聯(lián)網(wǎng)實戰(zhàn)開發(fā),現(xiàn)在就連面試應屆生的時候,分布式方面的問題都基本是必出的了。分布式架構簡介以最簡單的架構來說,分布式可以通過部署多個功能相近的服務器節(jié)點來實
有多少互聯(lián)網(wǎng)系統(tǒng)確實需要使用分布式架構?
莫說互聯(lián)網(wǎng)實戰(zhàn)開發(fā),現(xiàn)在就連面試應屆生的時候,分布式方面的問題都基本是必出的了。
分布式架構簡介
以最簡單的架構來說,分布式可以通過部署多個功能相近的服務器節(jié)點來實現(xiàn)。在實際應用中,只暴露出一個域名給用戶,該域名地址通常對應的是一個Nginx,用于負載均衡。Nginx在收到請求后,會根據(jù)當前情況,將請求分配給不同的服務器節(jié)點來響應。這套系統(tǒng)的架構圖中,多個服務器節(jié)點的地位是相同。
分布式架構的優(yōu)點
從當前來看,分布式的架構主要有高并發(fā),高穩(wěn)定的特點。
高并發(fā)是指當單節(jié)點服務器的性能已經(jīng)達到了瓶頸之后,可以通過引入Nginx,部署多個服務器節(jié)點的方式來擴容,增加系統(tǒng)的吞吐量。這就是 1*N =N的意義。
高穩(wěn)定是指如果由于不可預測的原因,發(fā)生了單個或部分節(jié)點宕機,不會影響系統(tǒng)整體的功能服務,即M-N>0(其中M>N),對于用戶來說,系統(tǒng)可用永遠是最重要的。
以上兩點對評估系統(tǒng)性能,以及服務口碑方面有著非常重要的意義。
綜上,根據(jù)我個人的經(jīng)驗,目前不論是市場級產(chǎn)品還是公司級產(chǎn)品,只要是對服務質(zhì)量有追求的項目組,都會殊途同歸發(fā)展到分布式架構。
此外,對于功能不是非常復雜龐大的項目組來說,只要在最開始開發(fā)設計階段,就及時引入memcache或者Redis作為數(shù)據(jù)緩存,而不是使用server的內(nèi)存,那么后期切換為分布式系統(tǒng)的過程也會十分快捷。
以上是我的個人淺見,歡迎各位在下方評論區(qū)與我溝通。
我是蘇蘇思量,來自BAT的java開發(fā)工程師,每天分享科技類見聞,歡迎關注我,與我共同進步。