傳統服務化(SOA)與微服務(Micro Service)的融合之道

傳統服務化(SOA)與微服務(Micro Service),並非相互排斥的,相反,它們是融合在一塊的。安全

國富論與IT企業組織架構

經濟學鼻祖亞當斯密在其《國富論》著做中,第一章就是論分工。亞當斯密認爲分工的做用有:促進勞動生產力的提高、提升勞動力操做熟練程度、強化勞動力技能、加強勞動力的判斷力。架構

既然分工是合理的,企業也採用分工理論,那麼根據IT企業所在服務的行業不一樣、所服務的客戶規模不一樣,IT企業內部必然出現適合企業自身的部門劃分,各部門各司其職、相互協做。運維

組織溝通形式與軟件設計的表達形式

康威定律爲你們所熟知,它的大概意思是:組織形式等同於系統設計。
圖片描述微服務

服務化與微服務實際上是組織形式的表現

將服務化或微服務運用的很好的企業或組織,必然,它們的組織形式是「服務化」的。每一個單元組織,都是實際負責一個或多個系統的生命週期。測試

舉個栗子,企業設立A、B兩個組織部門,分別負責1~2個軟件產品的生命週期,從產品設計到上線運維、產品改進直至最終產品消亡或被替換。每一個組織部門擁有完整的團隊建制,包括產品設計人員、開發、測試等等。固然,處於安全或效率的須要,也有一些職能是由公共服務組織提供支持的,好比運維、培訓等。雖然說是公共服務組織提供的服務,但公共服務組織仍是必定程度上對A、B不一樣給予了定製化的專門服務。如此一來,A、B組織就能夠很順暢地對外提供服務了,整個企業也就SOA化了。
圖片描述spa

微服務是相對的

根據筆者實際觀察,傳統SOA方式,是能夠在擁有數千名技術從業者的IT組織內運做良好的。每一個軟件產品都可以獲得良好的開發、維護與改進,產品之間協做良好,共同對外部客戶提供服務。這個規模的IT企業,擁有上千個軟件產品,或者稱之爲服務,每一個產品(服務)由一個幾乎全副武裝的小團隊負責,若干個小團隊組成一個個研發中心。從IT企業角度來看,研發中心之間是SOA,而從小團隊級別來看這不就是「微服務」了嗎?設計

相關文章
相關標籤/搜索