在 Google Cloud 中執行 Rails

您可以輕鬆著手開發在 Google Cloud 中執行的 Ruby on Rails 應用程式。而且您所建立的應用程式,使用的正是所有 Google 產品採用的基礎架構,因此您可以放心,無論使用者只有幾人還是有數百萬人,應用程式都可調度資源,為所有使用者提供服務。

託管平台

在 Google Cloud 中部署 Rails 的方式主要分為以下三種:

Rails 部署選項 適用情況 不適用情況 開始使用
App Engine 彈性環境
  • 您想要享受 App Engine 的多數優點
  • 您需要依賴 Rails 的系統程式庫和 RubyGems
  • 您需要自訂 Docker 執行階段
您想要完全掌控基礎虛擬機器。 在 App Engine 彈性環境中使用 Rails
Google Kubernetes Engine (GKE)
  • 您想要在微服務環境中使用 Rails 容器
  • 您需要工具包來設計自己的容器式平台
您需要功能完善的平台式服務 (PaaS)。如需容器型平台式服務 (PaaS),建議您使用 App Engine 彈性環境。 在 GKE 中使用 Rails
Compute Engine
  • 您需要採用 VM 的慣用基礎架構式服務 (IaaS)
  • 您需要系統同時支援 Windows 和 Linux VM
您想要不必自行設定基礎架構的無伺服器環境 在 Compute Engine 中使用 Rails

資料庫

關聯資料庫

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,請使用 Google Cloud Marketplace。如要在 Compute Engine 或 GKE 中安裝 Memcached,請使用 Memcached Docker 映像檔。同樣地,您可以使用 Google Cloud MarketplaceRedis Docker 映像檔安裝 Redis。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁