微服務和數據層
一種看待微服務的方式是每個微服務都是一個隱式的三層獨立系統。不過我們通常不為每一個微服務都實現所有的層。了解之后,我們便能發現每個微服務都可以實現自己的數據層。這樣的優勢在于增加了各服務之間的隔離。
【以我的經驗看,把企業的所有數據都放在一個單獨的數據庫或至少
相同的數據庫類型里更加普遍。這種做法更常見,但不見得更好。
種方式各有利弊。若是系統之間的隔離很明顯,部署變更就會更簡單。反之,把所有數據都存在同一個數據庫會讓數據模型更為簡單。
DevOpS、架構和彈性
我們已經從DevOps的角度看到微服務架構有許多值得擁有的特質。DevOps的一個重要目標是更快地為用戶交付新特性。這是微服務提供的大量模塊化所帶來的結果。
那些擔心微服務會提供一個毫無瑕疵的完美解決方案從而讓生活變得沒意思的人可以解脫了。微服務有它自己的挑戰。
我們想要能夠盡快部署新代碼,但是我們也想要可靠的軟件。
微服務在系統間有更多的集成點,比起單塊系統來說更有可能失敗。