Serverless 大雜燴: 以 Google Cloud Platform 打造線上商店服務
Keywords
Cloud Run
, Pub/Sub
, Artifact Registry
, Spring Boot
, Kotlin
, Docker
, Intellij IDEA
, .http
, Nyan Cat
教材
tutorial (google-doc) (opens in a new tab)
課程目標
利用 Cloud Run 輕鬆地打造一線上商城,並在結帳時即時利用 Pub/Sub 推送通知至 mail, sms, 或 line。
並使用 Artifact Registry (原 Container Registry) 以容器化方式部署各個服務,擺脫同專案必須使用同語言的限制
課程流程
1. 前置作業
講者首先請大家先完成前置作業,確保環境都有安裝完成,並且可以順利執行,此次 workshop 環境:
- GCP
- Cloud Build
- Artifact Registry (Container Registry)
- Cloud Run
- Pub/Sub
- IDE: Intellij IDEA Ultimate
- Docker
環境安裝完成後,至 github registry (opens in a new tab) clone 下商城基礎, 由於時間有限,products, checkout(結帳) 相關 api 都由講者事先提供於前述 github registry 當中,而 auth 的部分目前並沒有實作, 若未來有興趣將專案繼續延伸,將需要自己實作此部分。
資料儲存部分,為求快速先使用 h2 實作之 in memory DB
2. 專案結構
3. GCP 建置基礎
-
於 Articat Registry 建置 Docker image 存放處
-
建立 Pub/Sub 基礎服務 (3xTopic & 3xSubscription for Email/SMS/Line)
Fun Facts of the day
-
原來我們可以在 vscode 當中使用
.http
作為後綴詞的檔案, 以###
做為分隔,定義各式REST
http calling, 藉此與團隊開發成員共享 request 呼叫方法與格式 -
The cute progress bar cat in
vscode
is calledNyan Cat
(vscode extension link) (opens in a new tab)