Preparar archivos de configuración para el entorno de ejecución de Python 3
Organízate con las colecciones
Guarda y clasifica el contenido según tus preferencias.
Para poder ejecutar tu aplicación en el tiempo de ejecución de Python 3 del entorno estándar de App Engine, es posible que tengas que cambiar algunos de los archivos de configuración que usa App Engine:
app.yaml. Este archivo contiene información sobre el código de tu aplicación, como el tiempo de ejecución y los controladores de la aplicación.
appengine_config.py. El tiempo de ejecución de Python 2 usa este archivo para acceder a bibliotecas de terceros y proporcionar valores para constantes y funciones de gancho.
El entorno de ejecución de Python 3 no usa este archivo.
Actualizando app.yaml
Se ha modificado el comportamiento de algunos campos del app.yamlarchivo de configuración. Elimine los campos que ya no se admitan y actualice los demás como se describe en la siguiente tabla.
No aplicable en el entorno de ejecución de Python 3.
Threadsafe
Ya no se admite
Se presupone que todas las aplicaciones son seguras para subprocesos. Si tu aplicación no es segura para subprocesos, especifica un entrypoint configurando 1 subproceso por trabajador.
Por ejemplo, al usar la clase de instancia F4: entrypoint: gunicorn -b :$PORT -w 8 --threads 1 main:app
En el tiempo de ejecución de Python 2, se usa el campo
script
para dirigir las solicitudes entrantes a la secuencia de comandos de tu aplicación.
En el tiempo de ejecución de Python 3, debes usar un framework web con enrutamiento en la aplicación (como Flask o Django) en lugar de usar el campo script.
Para migrar tu archivo app.yaml al entorno de ejecución de Python 3, haz una de las siguientes acciones, en función de si el archivo contiene controladores estáticos y controladores de secuencias de comandos:
Si tu archivo app.yaml contiene controladores estáticos, haz una de las siguientes acciones para asegurarte de que las solicitudes de contenido dinámico se dirijan a la secuencia de comandos de tu aplicación:
Quita todos los campos script. A continuación, añade un campo
entrypoint
para iniciar un servidor web que ejecute tu aplicación. Las solicitudes que no
coincidan con ninguno de tus controladores estáticos se dirigirán al servidor web
que hayas especificado en el campo entrypoint. El servidor web y el framework web de tu aplicación son los responsables de enrutar la solicitud a la secuencia de comandos correcta.
Sustituye el valor de todos los campos script por
auto. App Engine ejecutará automáticamente tu aplicación en un servidor web (siempre que cumpla algunos requisitos) y todas las solicitudes que coincidan con un controlador de secuencias de comandos se dirigirán al servidor web. El servidor web y el framework web de tu aplicación son los responsables de enrutar la solicitud a la secuencia de comandos correcta.
Si tu archivo app.yamlno contiene controladores estáticos, quita todos los campos script. Todas las solicitudes a tu aplicación se dirigirán al servidor web de la aplicación, y el framework de la aplicación dirigirá la solicitud a la secuencia de comandos correcta. También puedes añadir el campo entrypoint para personalizar el comportamiento de inicio predeterminado.
Si tu app.yaml tiene ambos tipos de controladores, puedes
quitar todos los controladores de secuencias de comandos que se marcarían
como auto y dejar los controladores estáticos, así como los
controladores auto que requieran otras directivas, como el
controlador exclusivo para administradores del ejemplo siguiente.
El tiempo de ejecución de Python 2 en el entorno estándar de App Engine usa el archivo appengine_config.py.
Este archivo se ignora en el entorno de ejecución de Python 3. En su lugar, el tiempo de ejecución de Python 3 usa el archivo requirements.txt estándar para instalar dependencias, incluidas las que usan código nativo.
[[["Es fácil de entender","easyToUnderstand","thumb-up"],["Me ofreció una solución al problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Es difícil de entender","hardToUnderstand","thumb-down"],["La información o el código de muestra no son correctos","incorrectInformationOrSampleCode","thumb-down"],["Me faltan las muestras o la información que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2026-01-14 (UTC)."],[],[]]