¿Alguien tiene una idea de por qué Google App Engine solo permite un único hilo de ejecución para una aplicación implementada?¿Por qué Google App Engine solo admite un único hilo de ejecución?
Personalmente creo que tiene algo que ver con la previsibilidad de una aplicación para que Google pueda dimensionar su rendimiento de manera más confiable. No parece haber ninguna razón de ser publicada en el sitio de Google con respecto a la ejecución de un solo hilo, por lo tanto, mi pregunta.
Tener una aplicación que ya tiene varios subprocesos y que actualmente se implementa en una VM significa que me es difícil moverme a la nube dada esta restricción.
EDIT: He marcado la respuesta a continuación, ya que parece bastante plausible que los hilos no estén permitidos debido a los requisitos de escala horizontal. Naturalmente, todos los subprocesos se ejecutan dentro del mismo espacio de proceso y, como GAE puede ejecutar muchos procesos para su aplicación, sería difícil compartir subprocesos. Dicho esto, todavía creo que un pequeño grupo de subprocesos por proceso sería útil y podría ayudar a migrar las aplicaciones a la nube. Lo solicitaré como una característica. Gracias por la discusión!
Las tareas son solo un nivel de abstracción más alto que la implementación de una cola compartida. Todavía estoy interesado en saber por qué los hilos no son compatibles directamente. –
OK, esto suena bastante plausible, algo parecido a las consideraciones de escalado horizontal quizás ... cuanto más lo pienso, más sentido tiene. Sin embargo, no estoy tan seguro de que el problema de seguridad sea válido ... +1 para la respuesta de escala horizontal. –
¿Cómo se relacionan los hilos de creación con la seguridad? El único aspecto de seguridad es matar un servidor al generar demasiados hilos. Todos los demás argumentos de seguridad son nulos, cualquier cosa que pueda hacer en un hilo lo puedo hacer igualmente bien en otro. Por supuesto, estoy hablando de tareas simples, y no de SETI. –