全代管應用程式靠Google App Engine


Google App Engine(GAE)

Google Cloud Platform平台上部屬中的其中一種方案
屬於專門構建”單體式應用程式”


GAE 特色

  1. 支援主流Programming Language
    • Node.js、Java、Ruby、C#、Go、Python、PHP
  2. 全代管式環境
    • Infrastructure全部交給App Engine處理Developer可以專注在程式碼上
  3. 應用程式診斷功能,結合Cloud Monitoring跟Cloud Logging去偵測應用程式的效能
    • 透過Cloud Debugger與Error Reporting診斷與修正

使用方法

Step.1 建立現有專案

如果沒有,嘿嘿可以參考我的(可以來顆星星)
GitHub Repository

Step.2 為專案建立App Engine

在專案目錄Terminal輸入

1
gcloud app create

然後自己選擇部屬Region

Step.3 建立App Engine設置yaml檔

app.yaml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
runtime: python39

env_variables:
POSTGRES_DB : webalbum
POSTGRES_USER : test
POSTGRES_PASSWORD : 123456
POSTGRES_DB_URL : 127.0.0.1
GAE_APPLICATION : True

handlers:
- url: /static
static_dir: static/

- url: /.*
script: auto

Step.4 將專案部屬到App Engine

1
gcloud app deploy

Cloud Shell也會告訴你Application的url
最後確認就成功讓應用程式飛到雲端App Engine拉


除了 將應用程式丟上雲,你還能?


可以在Cloud Build 來觀察App建置的情形


可以在 Cloud Debugger

可以查看App Engine運行專案的所有相關檔案以及Debug以及追蹤Bug來源


可以在 Cloud logging

可以查看 運行在App Engine應用程式的Log


App Engine 服務整體架構

  1. 首先你透過Cloud SDK將應用程式丟到Google Cloud
  2. Cloud Build先去測試應用程式及打包
  3. App Engine將應用程式運行起來
  4. 運行期間Cloud Debugger監測紀錄追蹤bug存在
  5. 運行期間Cloud Logging紀錄與抓取應用程式log
更新於