您可以輕鬆著手開發在Google Cloud中執行的 Ruby on Rails 應用程式。而且您所建立的應用程式,使用的正是所有 Google 產品採用的基礎架構,因此您可以放心,無論使用者只有幾人還是有數百萬人,應用程式都可調度資源,為所有使用者提供服務。
託管平台
以下是在 Google Cloud中部署 Rails 的幾種方式:
| Rails 部署選項 | 開始使用 |
|---|---|
| Cloud Run | |
| App Engine 彈性環境 | 在 App Engine 彈性環境中使用 Rails |
| Google Kubernetes Engine (GKE) | 在 GKE 上使用 Ruby |
| Compute Engine | 在 Compute Engine 中使用 Ruby |
如要進一步瞭解這些平台之間的差異,請參閱 Google Cloud上的 App Hosting 選項。
資料庫
關聯資料庫
Rails Active Record 最適合與傳統 SQL 資料庫搭配使用。如要開始進行新的專案,建議您使用 Cloud SQL。只要按幾下,您就能建立由 Google 全代管及擴充的 MySQL 或 PostgreSQL 資料庫,您完全不須進行管理。請參閱搭配 Rails 5 使用 MySQL 適用的 Cloud SQL 或搭配 Rails 5 使用 PostgreSQL 適用的 Cloud SQL 教學課程。
NoSQL 資料庫
在許多情況下,您都有充分的理由使用 NoSQL 資料庫做為資料模型,例如為了擴充性和適切性等。雖然將 Rails 模型搭配 NoSQL 資料庫使用並非易事,但仍可行,只是會受到一些限制。舉例來說,您可以在 Rails 中表示許多類型的資料庫彙整作業,但 Datastore 或 MongoDB 等其他 NoSQL 資料庫並不支援彙整作業。詳情請參閱我們的 Rails Bookshelf 教學課程:使用 Datastore,這個教學課程使用 Datastore 來當做非關聯資料庫。如需擴充能力極高的代管 NoSQL 解決方案,建議您使用 Datastore,這個非關聯資料庫在擴充方面的表現往往比 SQL 解決方案好。
如果您選擇使用 MongoDB,可以透過 Google Cloud Marketplace 部署 MongoDB 並自行管理,或是使用 mLab 提供的代管 MongoDB 託管服務。
快取
如要在 Compute Engine 中安裝 Memcached,請使用 Cloud Marketplace。如要在 Compute Engine 或 GKE 中安裝 Memcached,請使用 Memcached Docker 映像檔。同樣地,您可以使用 Cloud Marketplace 或 Redis Docker 映像檔安裝 Redis。