Google Cloud'da Rails'i çalıştırma

Google Cloud üzerinde çalışan Ruby on Rails uygulamaları geliştirmeye kolayca başlayabilirsiniz. Oluşturduğunuz uygulamalar tüm Google ürünlerinin temel aldığı aynı altyapı üzerinde çalıştığı için ister birkaç ister milyonlarca kullanıcınız olsun uygulamalarınızın tüm kullanıcılara hizmet verecek şekilde ölçeklendirilebileceğinden emin olabilirsiniz.

Barındırma platformları

Rails'i Google Cloud'a dağıtmakta kullanılabilecek üç temel seçenek vardır.

Rails dağıtma seçeneği Aşağıdakileri istemeniz durumunda kullanın Aşağıdakilere ihtiyacınız olması durumunda kullanmayın Başlayın
App Engine esnek ortamı
  • App Engine'in avantajlarının çoğu
  • Sistem kitaplıkları ve bunlara bağlı olan RubyGem'leri
  • Özel Docker çalışma zamanları
Temel sanal makineler üzerinde tam kontrol. App Engine'de Rails esnek ortamı
Google Kubernetes Engine (GKE)
  • Mikro hizmet ortamındaki Rails container'ları
  • Kendi container tabanlı platformunuzu tasarlamaya yönelik araç seti
Tam özellikli bir hizmet olarak platform (PaaS). Container tabanlı PaaS için App Engine esnek ortamını kullanmayı düşünün. GKE'de Rails
Compute Engine
  • Sanal makineler kullanan tanıdık hizmet olarak altyapı (IaaS)
  • Windows ve Linux sanal makineleri için destek
Kendi altyapınızı yapılandırmanızı gerektirmeyen sunucusuz ortam Compute Engine'de Rails

Veritabanları

İlişkisel veritabanları

Rails Active Record en iyi şekilde geleneksel bir SQL veritabanıyla çalışır. Yeni bir projeye başlıyorsanız Cloud SQL iyi bir tercihtir. Yalnızca birkaç tıklamayla, sizin hiçbir yönetim işlemi yapmanız gerekmeden tümüyle Google tarafından yönetilen ve ölçeklendirilen bir MySQL veya PostgreSQL veritabanı oluşturabilirsiniz. Rails 5 ile MySQL için Cloud SQL kullanımı veya Rails 5 ile PostgreSQL için Cloud SQL kullanımı eğiticisini inceleyin.

NoSQL veritabanları

Pek çok durumda NoSQL veritabanı kullanmak için ölçeklenebilirlik veya veri modelinize uygunluk gibi cazip nedenler bulunabilir. NoSQL veritabanıyla Rails modelleri kullanmak zorlu bir iş olabilir, ama bazı sınırlamalara tabi olmak kaydıyla bunu yapmak mümkündür. Örneğin, Rails'de pek çok veritabanı birleştirmesi türü ifade edebilirsiniz ama birleştirmeler Datastore veya MongoDB gibi başka NoSQL veritabanları tarafından desteklenmez. İlişkisel olmayan veritabanı olarak Datastore'u kullanan Datastore kullanarak Rails Kitap Rafı eğiticimizi inceleyerek daha fazla bilgi edinebilirsiniz. Yönetilen ve geniş ölçeklenebilirliğe sahip bir NoSQL çözümü isterseniz SQL çözümünden daha iyi ölçeklenen ve ilişkisel olmayan bir veritabanı sunan Datastore'u kullanmayı düşünebilirsiniz.

MongoDB kullanmayı tercih ederseniz dağıtımı Google Cloud Marketplace ile yaparak yönetimini kendiniz yapabilir veya mLab tarafından sunulan yönetilen MongoDB barındırma hizmetini kullanabilirsiniz.

Önbellekler

Compute Engine'e Memcached yüklemek için Google Cloud Marketplace'i kullanabilirsiniz. Compute Engine veya GKE'ye Memcached yüklemek için Memcached Docker görüntüsünü kullanabilirsiniz. Benzer şekilde, Google Cloud Marketplace veya Redis docker görüntüsü kullanarak Redis de yükleyebilirsiniz.