表示層
表示層將會(huì)是一個(gè)使用React框架的網(wǎng)絡(luò)前端。它會(huì)被部署成一套JavaScript和靜態(tài)HTML文件。React框架相當(dāng)新潮。你所在的企業(yè)可能不會(huì)使用React,但也可能會(huì)用例如Angular的其他框架來替代。不管怎樣,從部署和構(gòu)建方面來看,大多數(shù)的JavaScript框架都很類似。
業(yè)務(wù)層
業(yè)務(wù)層是一個(gè)使用Java平臺(tái)上的Clojure語言實(shí)現(xiàn)的后端。Java平臺(tái)在大型企業(yè)中非常流行,較小的企業(yè)可能傾向于使用其他基于Ruby或者Python的平臺(tái)。我們的例子基于Clojure,有點(diǎn)兒合二為一的感覺。
數(shù)據(jù)層
在我們的例子里,數(shù)據(jù)庫是用PostgreSQL來實(shí)現(xiàn)的。PostgreSQL是一個(gè)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。它確實(shí)不像MySQL那么流行,大型企業(yè)可能喜歡用Oracle數(shù)據(jù)庫。而PostgreSQL,在任何情況下都是一個(gè)健壯性很強(qiáng)的系統(tǒng),這就是企業(yè)選擇它的原因。
從一個(gè)DevOps的觀點(diǎn)來看,這個(gè)三層風(fēng)格起碼在表面上看起來像那么回事。應(yīng)該可以為這三層中的每一層單獨(dú)地部署變更,這會(huì)讓小變比較容易地部署上服務(wù)器。