Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

269
Vistas
¿Se agotó el tiempo de espera del trabajador gunicorn de Google App Engine en la aplicación Flask al cargar un pepinillo grande?

Tengo un archivo pickle Sklearn de 350 MB que quiero cargar al iniciar la aplicación Flask.

Uso _pickle porque se menciona en la documentación que tiene un tiempo de carga más rápido:

 import _pickle as pickle start = timeit.default_timer() with open("pickle/pipeline.pkl", 'rb') as f: # ~350MB file pipeline = pickle.load(f) stop = timeit.default_timer() print('Time: ', stop - start)

El pickle se carga en 5 a 12 segundos localmente, pero en la instancia de Google App Engine F4 (1 GB de RAM), el trabajador gunicorn agota.

Registro de Google App Engine:

 A 2019-10-20T20:07:55Z [2019-10-20 20:07:55 +0000] [14] [INFO] Booting worker with pid: 14 A 2019-10-20T20:11:02Z [2019-10-20 20:04:14 +0000] [1] [CRITICAL] WORKER TIMEOUT (pid:14)

Intenté aumentar el tiempo de espera del trabajador agregando el indicador -t en el archivo app.yaml de la siguiente manera y aún no funciona:

 runtime: python instance_class: F4 env: flex entrypoint: gunicorn -t 120 -b :$PORT app:app liveness_check: initial_delay_sec: 500 readiness_check: app_start_timeout_sec: 500

Incluso intenté usar eventlet y no funcionó:

 gunicorn -t 120 -b :$PORT app:app --worker-class eventlet --workers 3
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

El proceso de carga de un archivo de datos pickle de 350 MB está tardando demasiado y App Engine cree que tu instancia ha fallado. El tiempo de inicio de su contenedor es de más de tres minutos.

Tienes un problema que no se puede resolver fácilmente. El tamaño máximo de archivo es de 32 MB (64 MB para aplicaciones Go). Está descargando el archivo a la memoria, pero su instancia está tardando demasiado en descargarlo.

Solución: usaría un servicio diferente, como Cloud Run, donde puede incrustar su archivo de datos de pickle en la imagen del contenedor para que no se requieran descargas.

over 4 years ago · Santiago Trujillo Denunciar

0

Pruebe con el punto de entrypoint: gunicorn -t 0 -b :$PORT app:app funcionó para mí.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda