網上關於微服務的設計原則有很多,並沒有一種統一說法。不過雖然說法千奇百怪,但是中心思想是差不多的。

下面列出設計原則:

1.單一職責原則

指一個單元只應關注整個系統功能中單獨、有界限的一部分。單一職責原則可以幫助我們更優雅地開發、更敏捷地交付。

2.服務自治原則

指每個微服務應具備獨立的業務能力、依賴與執行環境。在微服務架構中,服務是獨立的業務單元,應該與其他服務高度解耦。每個微服務從開發、測試、構建、部署,都應可以獨立執行,而不依賴其他的服務。

3.輕量級通訊機制

微服務之間應該通過輕量級通訊機制進行 互動。輕量級通訊機制應具備兩點:一是體量較輕,二是跨語言、跨平臺。

4.微服務粒度

應使用合理的粒度劃分微服務,而不是一味的把服務做小。每一個架構師心中的粒度標準是不一樣的,所以這塊爭論最多。