在 Google Cloud Platform 上執行 Rails

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

託管平台

在 GCP 上部署 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 資料庫,您完全不需進行管理。請參閱將 MySQL 適用的 Cloud SQL 搭配使用 Rails 5 教學課程,或將 PostgreSQL 適用的 Cloud SQL 搭配使用 Rails 5

NoSQL 資料庫

在許多情況下,您都有充分的理由使用 NoSQL 資料庫做為資料模型,例如為了擴充性和適切性等。雖然將 Rails 模型搭配 NoSQL 資料庫使用並非易事,但仍可行,只是會受到一些限制。例如,您可在 Rails 中表示許多類型的資料庫彙整,但彙整不受 Cloud Datastore 或其他 NoSQL 資料庫 (如 MongoDB) 支援。詳情請參閱我們的 Rails Bookshelf 教學課程:使用 Cloud Datastore。此教學課程使用 Cloud Datastore 做為非關聯資料庫。如需擴充能力極高的代管 NoSQL 解決方案,建議您使用 Cloud Datastore,這個非關聯式資料庫在擴充方面的表現往往比 SQL 解決方案好。

如果您選擇使用 MongoDB,則可使用 Google Cloud Platform Marketplace 進行部署和自行管理,也可以使用 mLab 提供的代管 MongoDB 託管服務。

快取

如要在 Compute Engine 上安裝 Memcached,您可以使用 GCP Marketplace。如要在 Compute Engine 或 GKE 上安裝 Memcached,您可以使用 Memcached Docker 映像檔。同樣地,您可使用 GCP MarketplaceRedis Docker 映像檔來安裝 Redis。

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

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

這個網頁