瞭解資料與檔案儲存空間

如要在 App Engine 上儲存資料與檔案,可以使用 Google Cloud Platform 服務或您的語言支援且可從 App Engine 執行個體存取的其他任何儲存空間服務。第三方資料庫可以託管在 Compute Engine、另一個雲端服務供應商、內部部署環境,或是由第三方廠商代管。

Google Cloud Platform 儲存空間服務

如果 App Engine 應用程式在 Go 彈性環境中執行,建議使用下列其中一項 GCP 儲存空間服務:

如需 GCP 儲存空間產品的完整清單,請參閱 Cloud Storage 產品頁面

Compute Engine 的服務託管方式

App Engine 執行個體跟 Compute Engine 執行個體一樣,都是同一個私人內部網路的一部分。您的 App Engine 應用程式可以跟同一專案內的 Compute Engine 託管的多項服務進行通訊,不用經由公開網際網路。在多數情況下,您的應用程式會使用執行個體的內部 IP 位址連線到服務,無需將外部公用 IP 位址指派給資料庫。如有需要,您可以指派公用 IP 位址,允許從 GCP 外部存取資料庫。

您可以利用 Cloud Launcher,快速地將 Redis、MongoDB、PostgreSQL、Cassandra、Hadoop 及 Microsoft SQL Server 等多個常見的第三方資料庫部署至 Compute Engine。如要進一步瞭解如何部署 MySQLPostgreSQL,請參閱下列指南。

其他雲端服務供應商

App Engine 應用程式可以連線至其他公用雲端託管的外部資料庫,前提是這些資料庫伺服器和您的防火牆均已適當設定,可以接受連線。您的 App Engine 應用程式會利用外部服務的公開 IP 位址,透過網際網路建立連線。

第三方供應商代管的資料庫

許多廠商均提供代管資料庫服務,例如 MongoDB 的 mLab,以及 Redis Labs 提供的託管式 Redis 快取服務。這些供應商可處理資料庫的託管、設定和維護作業。App Engine 可以透過網際網路連線至這些外部服務,方法跟其他公用雲端一樣,都是使用服務的公開 IP 位址進行連線。

內部部署

如要讓 App Engine 應用程式能夠存取現有的內部部署資料庫,您可以設定內部網路和防火牆來給予資料庫一個公用 IP 位址,或是使用 VPN 來連線。

設定 Cloud VPN 後,App Engine 應用程式就能存取內部部署網路,不必讓資料庫伺服器冒著直接暴露到公開網際網路的風險。App Engine 和 Compute Engine 都使用相同的網路基礎架構,因此您可以使用 VPN 連線,利用資料庫伺服器的內部 IP 位址來建立 App Engine 應用程式與內部部署資料庫之間的連線。

實際運作環境注意事項

您可以透過設定,讓 App Engine 依據各種指標,水平自動調整應用程式的資源配置。資料庫經常必須為了回應資源調度而進行重大變更,這點與網路應用程式不同。在實際運作環境中出現龐大流量時,App Engine 可能會迅速導致資料庫癱瘓。建議您在設定和部署資料庫時,將預期的平均流量負載和尖峰時段負載納入考量。