雲端軟體專案應採用多種環境。這些環境的名稱通常會是 dev
、qa
、staging
和 prod
等。這些環境必須彼此完全獨立,而且通常會有截然不同的操作者存取權限設定。舉例來說,開發團隊可能具備 dev
環境的完整存取權限,但僅具備有限的 prod
環境存取權限,所有程式碼的部署作業則僅由自動化指令碼推動。此外,不同環境的資料也一定要區隔開來。
使用多個 Google Cloud 專案可完全符合這些規定,因為不同的專案可以將程式碼和資料完全隔開,您也能分開管理操作者權限。App Engine 會針對提供的執行個體自動調整資源配置,所以您只需要根據實際使用的部分付費。舉例來說,如果每四週僅有一週會用到準備環境,您就無需支付另外三週的執行個體提供費用。然而請注意,系統仍會針對儲存在這些專案中的資料向您收費。
為環境命名
如果您選擇僅以使用多項服務的方式建構微服務應用程式,可以為每個環境建立單一 Google Cloud 專案,並按照各自的環境命名,例如 web-app-dev
、web-app-qa
和 web-app-prod
。
或者,即便您選擇使用多項專案來建構微服務應用程式,還是可以讓不同環境之間維持獨立,不過您必須使用更多專案,例如 web-app-dev
、web-app-prod
、user-service-dev
與 user-service-prod
。您必須使用程式碼模式來確保 dev
專案只會呼叫其他 dev
專案,prod
專案也只會呼叫其他 prod
專案。
後續步驟
- 大致瞭解 App Engine 的微服務架構。
- 瞭解將 API 設計為能在不同微服務間通訊的最佳做法。
- 瞭解發揮微服務效能的最佳做法。
- 瞭解如何將現有的單體式應用程式遷移至具有微服務的應用程式。