Sadece GAE'nin Ruby üzerinden Python öğrenmeyi haklı çıkarmak için yeterli olduğunu düşünüyor musunuz? [kapalı]


12

Bir sunucu kurmaya / satın almaya, hatta bir etki alanı satın almaya dahil olmanız gerekmediği düşünüldüğünde, tek başına gerçeğin birini diğerinden seçmek için yeterli olduğunu düşünüyor musunuz?

Google App Engine'de çalışmak istemiyorum, sadece hosting / çevre / vb. ve bunun python öğrenmek için yeterince iyi bir neden olup olmadığını merak ediyorum.

Her durumda, python ve ruby ​​arasında bir tartışma aramıyorum, ancak Google App Engine'de daha fazla şey ve değerinin öğrenmeniz gereken dili dikte etmek için yeterli olup olmadığı.


4
TLA'ya meydan okuyanlar için Google App Engine. Java'yı da kullanabileceğinizi unutmayın.
Robert Harvey

:) Zaten başa çıkmak için Java ve Objective-C var. Yakut ve
python'u

Sanırım Python'u öğrendikten sonra, Ruby'i oldukça kolay bir şekilde öğrenebilirsiniz - aynı soydalar.
Marcel Lamothe

Yanıtlar:


16

Hayır. Google App Engine, Python uygulamalarını barındırmak için ücretsiz / ucuz bir altyapı sağlar, ancak Ruby Heroku ile hemen hemen aynı şeylere sahiptir (ve Heroku'nun GAE'den çok daha az kısıtlaması vardır). GAE'yi kullanmadan önce, Google'ın platforma koyduğu, birçoğu ulaşmaya çalıştığınız hedefin önünde önemli engeller olabilecek kısıtlamaları çok yakından okuyun. Carlos Ble'nun blog yazısı , karşılaştığı birçok kısıtlama hakkında çok daha derinlemesine inceliyor , ancak size hızlı bir genel bakış sunacağım:

  • Sadece derlenmiş uzantıları olmayan Python 2.7 (büyük performans isabeti)
  • 30 saniyelik istek zaman aşımı (kolay büyük dosya yüklemeleri için çok fazla) ve 10 saniyelik dış istek zaman aşımı (böylece uygulamanızdan yavaş API'leri sorgulayamazsınız)
  • BigTable taş devri; sorgunuzda "LIKE" operatörü yok ve tek bir sorgu 1000'den fazla kayıt döndüremiyor
  • Memcache 1 MB maksimum değer boyutuna sahiptir
  • Hem BigTable hem de Memcache, başarısızlıklarını gidermek için uygulamanıza kod koymak için üretken olacak kadar önemli bir oranda ölme eğilimindedir.

Çok küçük bir proje için GAE gayet iyi; ancak orta veya büyük boyutta bir şey oluşturuyorsanız, ilerlemenizi engelleyebilecek kısıtlamalara dikkat edin.

Ne tür kotalar ve sınırlamalarla uğraşmanız gerektiği hakkında daha fazla bilgi için GAE belgelerine bakın:

Ayrıca Yığın Taşmasıyla ilgili şu yanıta bakın: /programming//a/3068371/189079


4
Bu, BigTable taşlamasını nasıl yapar, LIKE pahalı bir tercihtir ve 1000 sınırını geri döndürmek iyi bir fikirdir. Daha önce ölçeklenmiş, SQL DB çürümüş kötüye gibi geliyor?
sa93

Sınırlamalar yalnızca ücretsiz kotayı etkilemez mi?

@ sa93 Kesinlikle LIKE sorguları kullanmıyorum. Ancak, oluşturduğum bir uygulama 1000'den fazla sonuç döndüren bir sorgu kullanıyor (sorgu sonucu çok fazla önbelleğe alınmış, endişelenmeyin) ve birden çok sorgu süresinin çalıştırılmasıyla ve sonucun bitiştirilmesiyle uğraşmak zorunda olmadığım için mutluyum verileri önbellek katmanına göndermeden önce.
dirk

@BakerKawesa Emin değilim. Bunu araştırmaya ihtiyacım var. Google politikalarını değiştirmiş olabilir.
dirk

11

Google App Engine için geliştirmek istiyorsanız, kesinlikle Python öğrenmek istersiniz (Java da bir seçenektir, ancak GAE'nin arkasındaki insanlar Pythonistas gibi görünüyor).

Akılda tutulması gereken bir şey, Python'da bir şey yazmanın Google App Engine'i ücretsiz alacağınız anlamına gelmediğidir. Google'daki insanlar da dahil olmak üzere , Python'da yazılmış olsalar bile projelerini GAE'ye "taşımak" zorunda olan birkaç kişi var ( RSSmeme başka bir örnektir).

Bunun nedeni GAE'nin kendi kısıtlamaları ve özel ortamları olmasıdır: örneğin, MySQL, iş parçacığı veya yerel dosya depolama gibi şeylere erişemezsiniz. GAE için Genel SSS Bu "tuhaflıklar" birkaç değiniyor.



6

Tabii neden olmasın? Hem Ruby hem de Python çok yetenekli dillerdir, bu yüzden özellikle yapmak istediğiniz şeylere gelir.

GAE ile çalışmak ve bir dil öğrenmek zorundaysanız, Python da olabilir.


Neden Java değil?
Joshua Partogi

@jpartogi Soru Python vs Ruby hakkında sordu. Java da uygun bir seçim olabilir.
Adam Lear
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.