什么是微服務(wù)贡这?
1.微服務(wù)(Microservices Architecture)是一種架構(gòu)風(fēng)格,一個大型復(fù)雜軟件應(yīng)用由一個或多個微服務(wù)組成厂榛。系統(tǒng)中的各個微服務(wù)可被獨(dú)立部署盖矫,各個微服務(wù)之間是松耦合的。每個微服務(wù)僅關(guān)注于完成一件任務(wù)并很好地完成該任務(wù)击奶。在所有情況下辈双,每個任務(wù)代表著一個小的業(yè)務(wù)能力。
2.微服務(wù)是指開發(fā)一個單個 小型的但有業(yè)務(wù)功能的服務(wù)柜砾,每個服務(wù)都有自己的處理和輕量通訊機(jī)制湃望,可以部署在單個或多個服務(wù)器上。
3.微服務(wù)也指一種種松耦合的痰驱、有一定的有界上下文的面向服務(wù)架構(gòu)证芭。也就是說,如果每個服務(wù)都要同時修改担映,那么它們就不是微服務(wù)废士,因?yàn)樗鼈兙o耦合在一起;如果你需要掌握一個服務(wù)太多的上下文場景使用條件另萤,那么它就是一個有上下文邊界的服務(wù)湃密。
微服務(wù)的優(yōu)點(diǎn)?
1.每個微服務(wù)都很小四敞,這樣能聚焦一個指定的業(yè)務(wù)功能或業(yè)務(wù)需求泛源。
2.微服務(wù)能夠被小團(tuán)隊(duì)單獨(dú)開發(fā),這個小團(tuán)隊(duì)是2到5人的開發(fā)人員組成忿危。
3.微服務(wù)是松耦合的达箍,是有功能意義的服務(wù),無論是在開發(fā)階段或部署階段都是獨(dú)立的铺厨。
4.微服務(wù)能使用不同的語言開發(fā)缎玫。
5.微服務(wù)易于被一個開發(fā)人員理解,修改和維護(hù)解滓,這樣小團(tuán)隊(duì)能夠更關(guān)注自己的工作成果赃磨。無需通過合作才能體現(xiàn)價值。
6.微服務(wù)允許你利用融合最新技術(shù)洼裤。
7.微服務(wù)只是業(yè)務(wù)邏輯的代碼邻辉,不會和HTML,CSS 或其他界面組件混合。
微服務(wù)架構(gòu)的缺點(diǎn)?
1.微服務(wù)架構(gòu)可能帶來過多的操作值骇。
2.需要DevOps技巧 (http://en.wikipedia.org/wiki/DevOps)莹菱。
3.可能雙倍的努力。
4.分布式系統(tǒng)可能復(fù)雜難以管理吱瘩。
5.因?yàn)榉植疾渴鸶檰栴}難道伟。
6.當(dāng)服務(wù)數(shù)量增加,管理復(fù)雜性增加使碾。
非原創(chuàng)蜜徽,轉(zhuǎn)載方便以后查看