Apakah Anda berpikir bahwa GAE saja sudah cukup untuk membenarkan pembelajaran Python daripada Ruby? [Tutup]

12

Mempertimbangkan fakta bahwa Anda tidak harus terlibat dalam pengaturan / pembelian server atau bahkan membeli domain, apakah menurut Anda fakta saja sudah cukup untuk memilih satu dari yang lain?

Saya tidak selalu ingin bekerja di Google App Engine, saya hanya merasa nyaman ketika datang ke hosting / lingkungan / dll. dan bertanya-tanya apakah itu alasan yang cukup baik untuk belajar python.

Bagaimanapun, saya tidak mencari perdebatan antara python dan ruby ​​tetapi lebih pada Google App Engine dan apakah nilainya cukup untuk menentukan bahasa yang harus Anda pelajari.

tanya
sumber
4
Google App Engine, bagi kita yang ditantang oleh TLA. Perhatikan bahwa Anda juga dapat menggunakan Java.
Robert Harvey
:) Saya sudah punya Java dan Objective-C untuk mengatasinya. Jangan berpikir belajar ruby ​​dan python pada saat yang sama adalah waktu terbaik untuk menilai rasio: P
qnoid
Saya pikir Anda akan menemukan bahwa setelah Anda belajar Python, Anda dapat belajar Ruby dengan cukup mudah - mereka berada di garis keturunan yang sama.
Marcel Lamothe

Jawaban:

16

Tidak. Google App Engine memang menyediakan infrastruktur gratis / murah untuk hosting aplikasi Python, tetapi Ruby memiliki hal yang hampir sama dengan Heroku (dan Heroku memiliki batasan yang jauh lebih kecil daripada GAE). Sebelum menggunakan GAE, pastikan untuk membaca dengan sangat cermat tentang batasan yang ditempatkan Google pada platform, banyak di antaranya dapat menjadi penghalang signifikan terhadap tujuan yang ingin Anda capai. Posting blog Carlos Ble lebih dalam tentang banyak batasan yang dia alami, tapi saya akan memberi Anda gambaran singkat:

  • Python 2.7 hanya tanpa ekstensi yang dikompilasi (hit kinerja utama)
  • Batas waktu permintaan 30 detik (sangat banyak untuk unggahan file besar yang mudah) dan batas waktu permintaan luar 10 detik (sehingga Anda tidak dapat meminta API lambat dari aplikasi Anda)
  • BigTable adalah zaman batu; tidak ada operator "LIKE" dalam permintaan Anda dan tidak ada permintaan tunggal yang dapat mengembalikan lebih dari 1.000 catatan
  • Memcache memiliki ukuran nilai maksimal 1 MB
  • Baik BigTable dan Memcache cenderung mati pada tingkat yang cukup signifikan sehingga produktif untuk meletakkan kode dalam aplikasi Anda untuk mengatasi kegagalan mereka

Untuk proyek yang sangat kecil, GAE baik-baik saja; tetapi jika Anda membangun sesuatu dengan ukuran sedang atau besar, cukup perhatikan batasan yang dapat menghambat kemajuan Anda.

Untuk informasi lebih lanjut tentang jenis kuota dan batasan apa yang harus Anda tangani, lihat dokumen GAE:

Lihat juga respons ini pada Stack Overflow: /programming//a/3068371/189079

beladau
sumber
4
Bagaimana hal itu membuat BigTable stoneage, LIKE adalah pilihan yang mahal, dan mengembalikan batas 1000 adalah ide yang bagus. Kedengarannya Anda menyalahgunakan SQL DB busuk Anda, diskalakan sebelumnya?
sa93
Bukankah pembatasan hanya memengaruhi kuota gratis?
@ sa93 Saya pasti tidak menggunakan permintaan LIKE. Namun, satu aplikasi yang saya buat tidak menggunakan kueri yang mengembalikan lebih dari 1000 hasil (hasil kueri sangat di-cache, jangan khawatir) dan saya senang bahwa saya tidak harus berurusan dengan menjalankan beberapa kali permintaan dan kemudian merangkai hasilnya data sebelum mengirimnya ke lapisan caching.
dirk
@BakerKawesa Tidak yakin. Perlu penelitian itu. Google mungkin telah mengubah kebijakan mereka.
dirk
11

Jika Anda ingin mengembangkan untuk Google App Engine, Anda pasti ingin belajar Python (Java juga merupakan pilihan, tetapi orang-orang di belakang GAE tampaknya adalah Pythonistas).

Satu hal yang perlu diingat adalah bahwa menulis sesuatu dengan Python tidak berarti Anda mendapatkan Google App Engine secara gratis. Ada beberapa orang, termasuk orang-orang di Google, yang harus "port" proyek mereka ke GAE ( RSSmeme adalah contoh lain) meskipun mereka ditulis dalam Python.

Ini karena GAE memiliki batasannya sendiri dan lingkungan khusus: misalnya, Anda tidak mengakses hal-hal seperti MySQL, threading, atau penyimpanan file lokal. The General FAQ untuk GAE menyentuh pada beberapa dari "kebiasaan".


sumber
7

Baik. Komunitas Ruby memiliki http://heroku.com/ Kuota gratis tidak sebesar Google tetapi orang dapat menggunakan mekanisme kegigihan tradisional. Jadi jauh lebih mudah untuk bermigrasi ke infrastruktur Anda sendiri nanti (atau memindahkan aplikasi yang berdiri sendiri ke Heroku).

Andrew Андрей Листочкин
sumber
6

Tentu, mengapa tidak? Baik Ruby dan Python adalah bahasa yang sangat cakap, sehingga hanya tergantung pada apa yang ingin Anda lakukan.

Jika Anda ingin bekerja dengan GAE dan harus belajar bahasa, mungkin juga Python.

Adam Lear
sumber
Dan mengapa tidak Jawa?
Joshua Partogi
@jpartogi Pertanyaan yang diajukan tentang Python vs Ruby. Java juga bisa menjadi pilihan.
Adam Lear