2 回答

TA貢獻2039條經驗 獲得超8個贊
Google Cloud Functions 用于執行基于觸發器(如 HTTP 或另一個 GCP 服務器到服務器觸發器)的單一用途函數。你的 go 服務看起來更像是一個 HTTP 服務器,而不是一個單一的函數。
如果你想用 Cloud Functions 建立一個微服務架構,你要做的是創建一堆不同的函數,主要由 HTTP 觸發(每個函數都會自動分配不同的 HTTP 地址),然后從你的應用程序中調用它們而不需要任何外部 HTTP 路由器。
如果您想擁有一個分布式微服務(每個服務共享相同的 URL,但在 URL 中具有不同的端點),您需要查看可以在其中部署服務器的Appengine 。您可以使用本教程開始使用 Google Appengine

TA貢獻1798條經驗 獲得超3個贊
除了 PoWar 答案,我建議您使用 Cloud Run 而不是 App Engine。Cloud Run 在與 Cloud Functions 相同的底層基礎架構上運行,并且許多功能相似。
此外,Cloud Run 使用容器,這是當前最流行的打包應用程序的最佳實踐之一。您可以Dockerfile
在文檔中使用這樣的標準,然后使用 docker 構建?;蛘?Cloud Build,如果你還沒有安裝 docker
gcloud builds submit -t gcr.io/PROJECT_ID/containerName
或者,如果您不想編寫或自定義您的 alpha 功能,您甚至可以使用Dockerfile
,這是基于 buildpack
gcloud alpha builds submit --pack=image=gcr.io/PROJECT_ID/containerName
然后在 Cloud Run 上部署您的映像
gcloud run deploy --image=gcr.io/PROJECT_ID/containerName --platform=managed --region=yourRegion myService
- 2 回答
- 0 關注
- 118 瀏覽
添加回答
舉報