原文地址: itweknow.cn/detail?id=4… , 歡迎你們訪問。服務器
先來講一下概念,微服務就是一羣協同工做且小而自治的服務。在微服務中存在下面這些特徵:網絡
什麼是內聚性呢,就是將因相同緣由而改變的東西聚在一塊兒,因不一樣緣由而改變的東西分離開來,這麼一種隔離形態。架構
微服務這個名詞聽起來就有小的特色,那麼小到什麼程度才能叫作小呢,其實這個小的把控是微服務裏面很難把控的一個東西。其實,咱們只要可以保證在兩週左右可以對整個服務器進行重構甚至更換其技術棧,就能稱之爲小。微服務
服務之間獨立運行,相互之間不影響,不會由於某一個服務的不可用而致使整個系統的癱瘓,從新部署某一個微服務對其餘服務器不會產生仍和影響,其實這個也是微服務架構設計過程當中的一個黃金法則。性能
服務之間協同工做的方式是經過網絡通訊方式來進行數據交換等操做。架構設計
說完什麼是微服務,那麼咱們就來討論一下微服務有哪些優勢唄,爲啥如今互聯網公司廣泛都採用微服務的架構。設計
由於內聚性高,分工明確,因此當系統出現問題的時候,咱們很容易定位出是哪一個服務出現了問題,並很快修復。資源
修改了哪一個服務就發佈哪一個服務,不須要發佈整個系統,在操做和風險上都很棒。部署
一般一個微服務只須要幾我的的小團隊來維護就好,咱們你們應該也知道,一般狀況下小團隊的工做效率會比大團隊高上很多。get
實際上就是Java中的jar包吧,這個仍是會限制咱們的技術選型,由於通常共享庫的引入基本上都是要求同種語言退其次也要求同一平臺下的技術環境。還有一個問題就是共享庫的版本維護很困難,若是一個庫在多個項目中被引用,那麼咱們更新起來會很麻煩。
主流的Java8還不支持這一點。