原文出處: 泥瓦匠BYSocket編程
來自dubbo的用戶手冊中的一句話:隨着互聯網的發展,網站應用的規模不斷擴大,常規的垂直應用架構已沒法應對,分佈式服務架構以及流動計算架構勢在必行,亟需一個治理系統確保架構有條不紊的演進。
後端
常規的垂直應用架構就至關於傳統的那種,現階段傳統垂直架構改造的核心就是對應用作服務化改造,服務話改造使用的核心技術架構就是分佈式服務框架。架構
其實這篇是概念上的總結,技術概念軟文,紀錄此文讓本身更明白什麼是微服務化架構。mvc
請看下圖,也來自dubbo的用戶手冊,圖中偏偏少了微服務架構的圖。負載均衡
那什麼是微服務架構呢?
先從第一個圖中第一個提及吧。框架
1.orm – 單一應用架構分佈式
我認爲是一個高內聚版本,全部功能部署在一塊兒。數據訪問框架(orm)成爲關鍵。這個架構不多被人使用,幾乎接近滅絕了吧。ide
優勢:成本低,適合功能少又簡單 缺點:不少,好比沒法適應高流量,二次開發難,部署成本高模塊化
2.mvc架構 - 垂直應用架構微服務
當訪問量漸漸增大,慢慢演化成用的不少的mvc架構。雖然仍是全部的功能都是部署在同一個進程中,可是能夠經過雙機或者前置負載均衡來實現負載分流。這樣應用也能夠拆分紅不一樣的幾個應用,以提高性能和效率。
此時,mvc架構用於分離先後端邏輯。一方面,有必定的模塊化。另外一方面,加速和方便了開發。
3.rpc架構 - 分佈式服務架構
當mvc垂直應用分紅不一樣應用時,愈來愈多的狀況下。不可避免的事應用a與應用b之間的交互。此時將核心和公共的 業務功能抽出來,做爲單獨的服務,並實現先後端邏輯分離。
此時則就須要提升業務的複用及整合的分佈式rpc框架,例如dubbo等。
4.soa架構 - 流動計算架構
當rpc架構中的服務愈來愈多時,服務的生命週期的管控,容量的評估等各類問題會出現,使服務化成爲瓶頸。須要增長一個調度中心來進行對服務管控,監督等。
而後,提到關鍵的 --
問:什麼是微服務架構?
答:它就是將功能分散到各個離散的服務中而後實現對方案的解耦。服務更原子,自治更小,而後高密度部署服務。
下面是對微服務架構的圖解:
伴隨敏捷開發,持續交付,DevOps,Docker等高速發展,微服務必然是將來演進方向。加油~ 多瞭解吧。
問啊-定製化IT教育平臺,牛人一對一服務,有問必答,開發編程社交頭條 官方網站:www.wenaaa.com 下載問啊APP,參與官方懸賞,賺百元現金。
QQ羣290551701 彙集不少互聯網精英,技術總監,架構師,項目經理!開源技術研究,歡迎業內人士,大牛及新手有志於從事IT行業人員進入!