Stefan Tilkov:跳过单体应用,从微服务开始
在過去的幾個月中,許多人都宣稱微服務架構應該總是從單體應用開始,其中包括Martin Fowler和Sam Newman,但Stefan Tilkov認為,那經常是錯誤的,構建一個模塊邊界清楚、結構良好的單體應用然后再遷移到微服務在大多數情況下都非常困難,幾乎不可能。
\\Tilkov是innoQ的聯合創始人兼首席顧問。雖然他贊同只有在理由充分的情況下才選擇分布式系統的觀點,但在他看來,最重要的原因是它可以推動大型系統的單個部分快速、獨立的交付。他認為,微服務的主要優點是在系統的不同部分之間創建了清晰嚴格的邊界,使連接不同部分增加耦合度的風險最小化。他指出,如果遵循嚴格的規則,那么在單體應用中也可以做到這點,但是根據他的經驗,這種情況很少出現。
\\在Tilkov看來,單體應用的基本思想是系統不同部分之間互連。從技術的角度來看,系統的所有部分使用同樣的平臺、抽象概念和庫,并以同一個過程中的所有東西為基礎進行通信。從業務的角度來看,所有的領域對象在系統的任何部分都可以使用,不同部分使用同樣的持久化模型,事務總是可以覆蓋所有變化。在他看來,所有這些事實都增加了耦合度,他再次強調,分解現有的單體應用極其困難。
\\Tilkov認為,當系統足夠大時,我們從開始就應該考慮構建單個的子系統,并盡可能地提高它們的自治程度,而不是總是從單體設計開始。
\\作為由微服務組成的系統的一個例子,Tilkov提到了Otto.de。這是德國的一家電子商務網站。在去年的QCon倫敦大會上,他就此作過演講。
\\早些時候,Tilkov比較了不同類型系統的特點,并新創了一個術語“自包含系統(Self-Contained System,縮寫SCS)”來描述明顯比微服務更大的自治服務,但只是針對一個特定的領域。
\\查看英文原文:Stefan Tilkov: Skip the Monolith, Start with Microservices
總結
以上是生活随笔為你收集整理的Stefan Tilkov:跳过单体应用,从微服务开始的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux软件源
- 下一篇: The application coul