從單機(jī)結(jié)構(gòu)到集群結(jié)構(gòu),你的代碼基本無需要作任何修改,你要做的僅僅是多部署幾臺香港服務(wù)器,每臺香港服務(wù)器上運(yùn)行相同的代碼就行了。但是,當(dāng)你要從集群結(jié)構(gòu)演進(jìn)到微服務(wù)結(jié)構(gòu)的時候,之前的那套代碼就需要發(fā)生較大的改動了。所以對于新系統(tǒng)我們建議,系統(tǒng)設(shè)計之初就采用微服務(wù)架構(gòu),這樣后期運(yùn)維的成本更低。但如果一套老系統(tǒng)需要升級成微服務(wù)結(jié)構(gòu)的話,那就得對代碼大動干戈了。所以,對于老系統(tǒng)而言,究竟是繼續(xù)保持集群模式,還是升級成微服務(wù)架構(gòu),這需要你們的架構(gòu)師深思熟慮、權(quán)衡投入產(chǎn)出比。
下面開始介紹所謂的分布式結(jié)構(gòu)。
分布式結(jié)構(gòu)就是將一個完整的系統(tǒng),按照業(yè)務(wù)功能,拆分成一個個獨(dú)立的子系統(tǒng),在分布式結(jié)構(gòu)中,每個子系統(tǒng)就被稱為“服務(wù)”。這些子系統(tǒng)能夠獨(dú)立運(yùn)行在web容器中,它們之間通過RPC方式通信。
舉個例子,假設(shè)需要開發(fā)一個在線商城。按照微服務(wù)的思想,我們需要按照功能模塊拆分成多個獨(dú)立的服務(wù),如:用戶服務(wù)、產(chǎn)品服務(wù)、訂單服務(wù)、后臺管理服務(wù)、數(shù)據(jù)分析服務(wù)等等。這一個個服務(wù)都是一個個獨(dú)立的項目,可以獨(dú)立運(yùn)行。如果服務(wù)之間有依賴關(guān)系,那么通過RPC方式調(diào)用。
這樣的好處有很多:
系統(tǒng)之間的耦合度大大降低,可以獨(dú)立開發(fā)、獨(dú)立部署、獨(dú)立測試,系統(tǒng)與系統(tǒng)之間的邊界非常明確,排錯也變得相當(dāng)容易,開發(fā)效率大大提升。
系統(tǒng)之間的耦合度降低,從而系統(tǒng)更易于擴(kuò)展。我們可以針對性地擴(kuò)展某些服務(wù)。假設(shè)這個商城要搞一次大促,下單量可能會大大提升,因此我們可以針對性地提升訂單系統(tǒng)、產(chǎn)品系統(tǒng)的節(jié)點(diǎn)數(shù)量,而對于后臺管理系統(tǒng)、數(shù)據(jù)分析系統(tǒng)而言,節(jié)點(diǎn)數(shù)量維持原有水平即可。
服務(wù)的復(fù)用性更高。比如,當(dāng)我們將用戶系統(tǒng)作為單獨(dú)的服務(wù)后,該公司所有的產(chǎn)品都可以使用該系統(tǒng)作為用戶系統(tǒng),無需重復(fù)開發(fā)。
要做分布式結(jié)構(gòu)的項目例如視頻直播網(wǎng)站,下載分發(fā)網(wǎng)站可以考慮使用香港服務(wù)器。
USA-IDC特推出香港SEO服務(wù)器首月半價活動數(shù)量有限,售完即止
三大配置隨心選