微服務 微服務怎么實現?是前端還是后端的事?
微服務怎么實現?是前端還是后端的事?微服務只是一個概念,是一種架構設計思想,并不是什么新技術。原理就是化整為零,把一個軟件應用,拆分為一個個可獨立運行的"微"服務,跟常規(guī)意義的插件、擴展之類類似,不同
微服務怎么實現?是前端還是后端的事?
微服務只是一個概念,是一種架構設計思想,并不是什么新技術。原理就是化整為零,把一個軟件應用,拆分為一個個可獨立運行的"微"服務,跟常規(guī)意義的插件、擴展之類類似,不同之處在于"微服務"是一個可獨立運行的應用程序,一般采用容器化部署比如Docker之類。以下從優(yōu)點、缺點以及適用場景三方面來拆解。
優(yōu)點,有效解決單體軟件隨著時間的推移的維護災難,可按需加載,最大程度釋放系統(tǒng)資源。跟開發(fā)語言無關,采用容器化獨立部署,無論使用什么開發(fā)語言都可無縫集成。可以細粒度拆分軟件項目,完美的持續(xù)集成。
缺點,微服務是一個分布式系統(tǒng),如果拆分粒度過細,容易形成連環(huán)故障。各模塊之間需要維護數據的一致性,要規(guī)劃好通信,對整個系統(tǒng)架構要求比較高。在測試層面來講,相對單體軟件,測試工作量有一定程度的增加。應用部署相對來說比較復雜一點。
適用場景,業(yè)務層面,應對多客戶需求,通常每個客戶總有一部分需求是不一樣的。性能層面,應對高并發(fā)、高負載。
總之,軟件互聯網行業(yè)知識體系更新比較頻繁,新概念、新技術層出不窮,我們探其本質,不要被表象所迷惑。機械科班出身的IT人共勉。