Estoy intentando crear una aplicación web simple usando Python en GAE. La aplicación necesita generar algunos hilos por solicitud recibida. Para esto estoy usando la biblioteca de hilos de python. Engendro todos los hilos y luego los espero.Subprocesos GAE python que no se ejecutan en paralelo
t1.start()
t2.start()
t3.start()
t1.join()
t2.join()
t3.join()
La aplicación se ejecuta bien, excepto por el hecho de que los hilos se ejecutan en serie en lugar de simultáneamente (confirmó esto mediante la impresión de las marcas de tiempo al principio/final del método de cada hilo run()). He seguido las instrucciones dadas en http://code.google.com/appengine/docs/python/python27/using27.html#Multithreading para permitir multithreading
Mi app.yaml parece:
application: myapp
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /favicon\.ico
static_files: favicon.ico
upload: favicon\.ico
- url: /stylesheet
static_dir: stylesheet
- url: /javascript
static_dir: javascript
- url: /pages
static_dir: pages
- url: .*
script: main.app
Me aseguré de que mi GoogleAppLauncher local utiliza Python 2.7 para definir la ruta de forma explícita en las preferencias.
Mis hilos tienen un tiempo de ejecución promedio de 2-3 segundos en el que hacen una llamada abierta de url y realizan algún procesamiento en el resultado.
¿Estoy haciendo algo mal o me falta algo de configuración para habilitar el subprocesamiento múltiple?
Sí, solo estaba experimentando el problema en mi instalación local. Los hilos corrieron en paralelo cuando cargué mi aplicación. Gracias por la ayuda. – Nitesh