¿Crees que GAE solo es suficiente para justificar el aprendizaje de Python sobre Ruby? [cerrado]

12

Teniendo en cuenta el hecho de que no tiene que involucrarse en la configuración / compra de un servidor o incluso en la compra de un dominio, ¿cree que ese hecho por sí solo es suficiente para elegir uno sobre el otro?

No necesariamente quiero trabajar en Google App Engine, solo me parece conveniente cuando se trata de alojamiento / entorno / etc. y preguntándome si esa es una buena razón para aprender Python.

En cualquier caso, no estoy buscando un debate entre python y ruby, sino más sobre Google App Engine y si su valor es suficiente para dictar el idioma que debe aprender.

qnoid
fuente
44
Google App Engine, para aquellos de nosotros que estamos desafiados por TLA. Tenga en cuenta que también puede usar Java.
Robert Harvey
:) Ya tengo Java y Objective-C para hacer frente. No piense que aprender ruby ​​y python al mismo tiempo es la mejor relación tiempo / valor: P
qnoid
Creo que descubrirás que una vez que aprendes Python, puedes aprender Ruby con bastante facilidad: están en el mismo linaje.
Marcel Lamothe

Respuestas:

16

No. Google App Engine proporciona una infraestructura gratuita / barata para alojar aplicaciones de Python, pero Ruby tiene prácticamente lo mismo con Heroku (y Heroku tiene muchas menos restricciones que GAE). Antes de usar GAE, asegúrese de leer detenidamente las restricciones que Google impone a la plataforma, muchas de las cuales pueden ser barreras importantes para el objetivo que está tratando de lograr. La publicación del blog de Carlos Ble profundiza mucho más sobre las muchas restricciones con las que se ha topado, pero le daré una descripción general rápida:

  • Python 2.7 solo sin extensiones compiladas (gran rendimiento)
  • Tiempo de espera de solicitud de 30 segundos (tanto para cargas fáciles de archivos grandes) y tiempo de espera de solicitud externo de 10 segundos (para que no pueda consultar API lentas desde su aplicación)
  • BigTable es la edad de piedra; no hay operadores "LIKE" en su consulta y ninguna consulta puede devolver más de 1,000 registros
  • Memcache tiene un tamaño de valor máximo de 1 MB
  • Tanto BigTable como Memcache tienden a morir a un ritmo lo suficientemente significativo como para que sea productivo poner código en su aplicación para solucionar sus fallas

Para un proyecto muy pequeño, GAE está bien; pero si está creando algo de tamaño mediano o grande, solo tenga en cuenta las restricciones que pueden obstaculizar su progreso.

Para obtener más información sobre qué tipo de cuotas y limitaciones puede tener que enfrentar, consulte los documentos de GAE:

Consulte también esta respuesta en Desbordamiento de pila: /programming//a/3068371/189079

puñal
fuente
44
¿Cómo eso hace que StoneTable Stoneage, LIKE sea una opción costosa, y devolver un límite de 1000 es una buena idea? ¿Parece que abusas de tu SQL DB podrido, escalado antes?
sa93
¿Las limitaciones no solo afectan la cuota libre?
@ sa93 Definitivamente no uso las consultas LIKE. Sin embargo, una aplicación que construí utiliza una consulta que devuelve más de 1000 resultados (el resultado de la consulta está muy almacenado en caché, no se preocupe) y estoy feliz de no tener que lidiar con ejecutar múltiples consultas y luego concatenar el resultado datos antes de enviarlos a la capa de almacenamiento en caché.
dirk
@BakerKawesa No estoy seguro. Necesito investigar eso. Google podría haber cambiado sus políticas.
Dirk
11

Si desea desarrollar para Google App Engine, definitivamente querrá aprender Python (Java también es una opción, pero las personas detrás de GAE parecen ser Pythonistas).

Una cosa a tener en cuenta es que escribir algo en Python no significa que obtenga Google App Engine gratis. Hay varias personas, incluidas personas de Google, que han tenido que "portar" sus proyectos a GAE ( RSSmeme es otro ejemplo) a pesar de que están escritos en Python.

Esto se debe a que GAE tiene sus propias restricciones y un entorno especializado: por ejemplo, no tiene acceso a cosas como MySQL, subprocesos o almacenamiento local de archivos. Las Preguntas frecuentes generales para GAE tocan varias de estas "peculiaridades".


fuente
7

Bien. La comunidad de Ruby tiene http://heroku.com/ Las cuotas gratuitas no son tan grandes como las de Google, pero se pueden usar los mecanismos tradicionales de persistencia. Por lo tanto, es mucho más fácil migrar a su propia infraestructura más adelante (o mover una aplicación independiente a Heroku).

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

¿Seguro Por qué no? Tanto Ruby como Python son lenguajes muy capaces, por lo que se reduce a lo que específicamente está buscando hacer.

Si desea trabajar con GAE y tiene que aprender un idioma, podría ser Python.

Adam Lear
fuente
¿Y por qué no Java?
Joshua Partogi
@jpartogi La pregunta se hizo sobre Python vs Ruby. Java también podría ser una opción viable.
Adam Lear