DRY原則與微服務的矛盾:共享複用會導致耦合 - AllenHolub

發表於2020-12-02

DRY(不重複自己)原則不是法律,而是經驗法則。例如,在微服務中,最重要的是能夠更改單個服務並孤立地重新部署該單個服務。

如果使用共享庫迫使您重新編譯/重新部署多個服務,即使當前服務未使用剛更改的庫的一角,則您違反了?Service微服務原則。

因此,在微服務世界中,我們要麼不使用共享庫,要麼使它們非常細粒度,達到單個(無伺服器/ lambda)函式的水平。

同樣,通過增加複雜性以換得“靈活性”或“重用”是合理的。我們在許多層面上的最大敵人是不必要的複雜性。

 

眾說紛紜:

DRY的另外一面是耦合!

 

我看到的軟體越多,發現不適當的耦合是更多的錯誤來源。

 

耦合是當今軟體領域唯一的設計問題

服務依賴惹的禍:亞馬遜雲端計算又雙叒叕當機了,一半網際網路中斷 -The Verge

banq注:DRY是不要重複,實際目的是為了追求複用,但是如果純粹為了複用而複用肯定導致耦合,如果中臺概念是為了複用,肯定導致耦合,複用/可重用性第一的思維已經落後。

相關文章