很多人對微服務(wù)架構(gòu)是什么并不了解。想要知道微服務(wù)架構(gòu),先讓我們來看一下微服務(wù)是什么。微服務(wù)其實(shí)是一種架構(gòu)風(fēng)格,是由一個或者多個微服務(wù)組成,它是大型的復(fù)雜應(yīng)用軟件。在這個大型復(fù)雜的系統(tǒng)中,每個微服務(wù)都可以被獨(dú)立部署,而每個微服務(wù)之間是松耦合的,只要關(guān)心完成一件任務(wù)就可了。簡單的說就是講一個軟件系統(tǒng)進(jìn)行拆分,拆分之后,可以讓這個應(yīng)用系統(tǒng)變得更加的高效。
1.微服務(wù)架構(gòu)是什么
微服務(wù)架構(gòu)其實(shí)沒有一個非常準(zhǔn)確的定義,大概描述的是一個大型復(fù)雜軟件應(yīng)用系統(tǒng)由若干個微服務(wù)組成。系統(tǒng)中的各個微服務(wù)能被獨(dú)立部署和擴(kuò)展,每個微服務(wù)還能提供一個穩(wěn)固的模塊邊界。各個微服務(wù)之間是松耦合的,微服務(wù)很小,專注于做好一件事情。
微服務(wù)框架帶了良好的技術(shù)異構(gòu)性、彈性、擴(kuò)展性,它的簡化部署為持續(xù)交付提供了巨大推動力。但是它同時也帶來一些挑戰(zhàn),比如分布式事務(wù)一致性,網(wǎng)絡(luò)性能消耗等問題。所以選用的時候要結(jié)合實(shí)際業(yè)務(wù)考慮,若想深入學(xué)習(xí)的話建議使用些現(xiàn)成的一些大廠商開源的微服務(wù)框架開發(fā)試試手,用一用spring cloud、servicecomb。
2.架構(gòu)風(fēng)格
所謂的架構(gòu)風(fēng)格就是項目的一種設(shè)計模式。而我們常見的程序設(shè)計模式有以下的四種方式。后面對于每個模式的優(yōu)缺點(diǎn)進(jìn)行了詳細(xì)的比較。
常見的架構(gòu)風(fēng)格
客戶端與服務(wù)器端 :包括C/S 和B/S兩種,而B/S比較特殊。
基于組件模型的架構(gòu)(EJB)
分層架構(gòu)(MVC)
面向服務(wù)架構(gòu)(SOA)
3.微服務(wù)特點(diǎn)
1)系統(tǒng)是有多個服務(wù)構(gòu)成
2)每個服務(wù)可以單獨(dú)獨(dú)立部署
3)每個服務(wù)之間是松耦合的。服務(wù)內(nèi)部是高內(nèi)聚的,外部是低耦合的,也是比較符合軟件設(shè)計原則的,高內(nèi)聚就是每個服務(wù)內(nèi)部的關(guān)系是非常密切的,每個服務(wù)之間只關(guān)注完成一個功能。
4.微服務(wù)的優(yōu)點(diǎn)、缺點(diǎn)
優(yōu)點(diǎn):測試容易
可伸縮性強(qiáng)
可靠性強(qiáng)
跨語言程度會更加靈活
團(tuán)隊協(xié)作容易
系統(tǒng)迭代容易
缺點(diǎn):運(yùn)維成本過高,部署數(shù)量較多
接口兼容多版本
分布式系統(tǒng)的復(fù)雜性
分布式事務(wù)
通過上述介紹, 微服務(wù)架構(gòu)是什么相信大家已經(jīng)清楚了吧,想了解更多關(guān)于 微服務(wù)架構(gòu)的信息,請繼續(xù)關(guān)注中培偉業(yè)。