Cuotas

Una aplicación de App Engine puede consumir recursos hasta alcanzar determinadas cuotas. Puedes ver el consumo diario de tus aplicaciones en la página de detalles de las cuotas en Google Cloud Console.

Tipos de cuotas

Los siguientes tipos de cuotas corresponden a las aplicaciones de App Engine:

  • Cuotas gratuitas: Todas las aplicaciones tienen una cantidad de cada recurso que puede usarse sin cargo. Las cuotas gratuitas pueden excederse únicamente hasta el límite de gasto o de seguridad de la aplicación, lo que corresponda aplicar primero.
  • Límites de seguridad: Los límites de seguridad son cuotas que establece Google para proteger la integridad del sistema de App Engine. Estas cuotas garantizan que ninguna aplicación individual pueda consumir recursos en forma tan excesiva que perjudique a otras apps. Si sobrepasas estos límites, aparecerá un mensaje de error.

Los propietarios de proyectos y los administradores de facturación pueden habilitar la facturación para un proyecto determinado.

Cuando habilitas la facturación para tu aplicación, sus límites de seguridad también aumentan. Consulta la sección Recursos para obtener más detalles.

Límites de seguridad

Los límites de seguridad incluyen cuotas diarias y cuotas por minuto:

  • Las cuotas diarias se actualizan todos los días a medianoche (hora del Pacífico). Las aplicaciones pueden superar esta cuota gratuita hasta que se alcance el límite de seguridad.
  • Las cuotas por minuto evitan que la aplicación consuma la totalidad de los recursos en períodos muy reducidos y, además, impiden que otras aplicaciones acaparen por completo cualquier recurso en particular. Si tu aplicación consume un recurso demasiado rápido y agota una de las cuotas por minuto, el término “Limitado” aparecerá junto a la cuota correspondiente en la página Cuotas de Cloud Console. Las solicitudes de recursos que alcanzan el límite máximo por minuto se deniegan.

Consulta la sección Cuando se agota un recurso para obtener detalles acerca de lo que sucede cuando se supera una cuota y cómo manejar las condiciones que se imponen por exceder este límite.

Sugerencia: Las cuotas máximas por minuto son lo suficientemente altas para los niveles de tráfico elevados y permiten manejar un aumento repentino en el tráfico cuando, por ejemplo, se menciona tu sitio en las noticias. Si crees que una cuota en particular no cumple con este requisito, envía tus comentarios mediante la Herramienta de seguimiento de errores. Ten en cuenta que enviar comentarios no genera una solicitud de aumento de cuota, pero nos ayudará a comprender qué cuota podría ser demasiado baja para casos prácticos generales.

Si esperas niveles de tráfico muy altos o, por alguna razón, tu aplicación requiere cuotas particularmente altas (p. ej., debido a un evento importante de lanzamiento de un producto o grandes pruebas de carga), te recomendamos que te registres para obtener un paquete de asistencia.

Límites de gasto

Las aplicaciones antiguas de App Engine podrían crear límites de gasto para especificar una cantidad máxima aproximada que se te pueda cobrar por el uso de los recursos de la plataforma. Desde el 12 de diciembre de 2019, no puedes crear límites de gasto nuevos, pero puedes cambiar o quitar los existentes.

Si quieres obtener información sobre otros mecanismos para administrar costos, consulta el artículo sobre cómo administrar costos.

Cómo se reabastecen los recursos

App Engine hace un seguimiento del uso que tu aplicación hace de los recursos en relación con las cuotas del sistema. Además, restablece todas las mediciones de los recursos al comienzo de cada día natural (salvo los datos almacenados, que siempre representan la cantidad de almacenamiento de datos en uso).

Las cuotas diarias se reabastecen a medianoche (hora del Pacífico). Las cuotas por minuto se actualizan cada 60 segundos.

Cuando se agota un recurso

Cuando una aplicación consume un recurso asignado en su totalidad, este deja de estar disponible hasta que se reabastezca la cuota. Esto podría significar que tu aplicación no funcione hasta el reabastecimiento.

En el caso de los recursos que son necesarios para iniciar una solicitud, cuando se agota el recurso, la configuración predeterminada de App Engine es mostrar un código de error HTTP 403 o 503 para responder a la solicitud en lugar de llamar al controlador de solicitudes. Los siguientes recursos tienen esta conducta:

  • Ancho de banda (de entrada y salida)
  • Horas de instancia

Sugerencia: Puedes configurar tu aplicación para que entregue una página de error personalizada cuando se exceda una cuota. Para obtener más detalles, consulta la referencia del archivo de configuración para Python (2.7, 3.7), Java, Go, PHP (5.5, 7.2) o Node.js.

En el caso de los demás recursos, se producirá una excepción cada vez que la aplicación intente consumir un recurso después de que este se haya agotado. La aplicación puede detectar esta excepción y realizar una acción; por ejemplo, mostrarle un mensaje amigable de error al usuario. En la API de Python, esta excepción es apiproxy_errors.OverQuotaError. En la API para Java, esta excepción es com.google.apphosting.api.ApiProxy.OverQuotaException. En la API de Go, la función appengine.IsOverQuota informa si un error representa una falla en una llamada a la API debido a que la cuota disponible es insuficiente.

En el siguiente ejemplo, se muestra cómo detectar OverQuotaError, que se podría generar mediante el método SendMessage(), cuando se supere una cuota relacionada con un correo electrónico:

try: mail.SendMessage(to='test@example.com',
    from='admin@example.com', subject='Test Email', body='Testing') except
    apiproxy_errors.OverQuotaError, message: # Log the error. logging.error(message) # Display an
    informative message to the user. self.response.out.write('The email could not be sent. ' 'Please try
    again later.')

¿Tu aplicación supera los límites predeterminados? Si necesitas una cuota de correo electrónico más alta, puedes usar SendGrid. Si necesitas que se aumente cualquier otra cuota y tienes un paquete de asistencia Plata, Oro o Platino, puedes comunicarte con tu representante de asistencia para solicitar un aumento de los límites de capacidad de procesamiento. De lo contrario, puedes enviar una solicitud de aumento de cuota desde Google Cloud Console. Para ello, selecciona la cuota específica y, luego, haz clic en Editar cuotas.

Cuotas para el entorno flexible de App Engine

Cuando implementas una aplicación en el entorno flexible de App Engine, se consumen algunos recursos de Google Cloud Platform. Es posible que no puedas modificar estos recursos; sin embargo, se tomarán en cuenta en la cuota.

Recursos

Una aplicación puede usar los siguientes recursos hasta alcanzar el límite de la cuota correspondiente. Los recursos que se miden en relación con los límites de facturación se indican de la siguiente forma: (“facturable”). Las cantidades de cada recurso representan una asignación durante un período de 24 horas.

El costo de los recursos adicionales se indica en la página Precios.

Depósito predeterminado de Cloud Storage

El depósito predeterminado de Cloud Storage incluye una cuota gratuita de uso diario, como se muestra a continuación. Este depósito predeterminado y gratuito se crea en la página de configuración de App Engine de tu proyecto en Google Cloud Console.

Las siguientes cuotas se aplican específicamente al uso del depósito predeterminado. Consulta los precios de los depósitos multirregionales de Cloud Storage para ver una descripción de estas cuotas.

Recurso Límite predeterminado
Datos almacenados en el depósito predeterminado de Cloud Storage Los primeros 5 GB son gratuitos; no se aplica ningún máximo.
Operaciones de clase A del depósito predeterminado de Cloud Storage. Las primeras 20,000 operaciones por día son gratuitas; no se aplica ningún máximo.
Operaciones de clase B del depósito predeterminado de Cloud Storage Las primeras 50,000 operaciones por día son gratuitas; no se aplica ningún máximo.
Salida de red del depósito predeterminado de Cloud Storage Es gratuita hasta alcanzar la cuota de Ancho de banda saliente; no se aplica ningún máximo.

Blobstore

Las siguientes cuotas se aplican específicamente al uso del blobstore.

Datos almacenados en el blobstore
La cantidad total de datos almacenados en el blobstore. Disponible tanto para apps pagadas como gratuitas.
Recurso Límite predeterminado
Datos almacenados en el blobstore Los primeros 5 GB son gratuitos; no se aplica ningún máximo.

Almacenamiento de código y datos estáticos

Límite de datos estáticos
En todos los lenguajes, excepto Go, ningún archivo de datos estáticos puede tener más de 32 MB. El límite para Go es de 64 MB.
Almacenamiento total
La cuota de almacenamiento se aplica a la cantidad total de código y datos estáticos que se almacenan en todas las versiones de tu aplicación. El tamaño total de archivos estáticos y código almacenados se enumera en la tabla del panel principal. Los tamaños individuales se muestran en las pantallas Versiones y Backends, respectivamente. Se cobrará $0.026/GB al mes por las apps en las que el almacenamiento de código o datos estáticos supere 1 GB.

Datastore

La cuota de datos almacenados (facturables) se refiere a todos los datos almacenados para la aplicación en Datastore y en blobstore. Las demás cuotas de la sección “Datastore” de la página de detalles sobre la cuota de Google Cloud Console se refieren específicamente al servicio de Datastore.

Datos almacenados (facturables)

La cantidad total de datos almacenados en las entidades del almacén de datos, en los índices correspondientes y en blobstore.

Es importante tener en cuenta que los datos contenidos en el almacén de datos pueden generar gastos considerables. Estos gastos dependen de la cantidad y los tipos de propiedades asociadas y, además, incluyen el espacio que usan los índices integrados y personalizados. Cada entidad conservada en el almacén de datos requiere los siguientes metadatos:

  • La clave de la entidad, que incluye el tipo, el ID o el nombre de la clave, así como las claves de las entidades principales de las que depende.
  • El nombre y valor de cada propiedad. Dado que el almacén de datos no tiene esquema, el nombre de cada propiedad debe almacenarse con el valor de la propiedad de cada entidad.
  • Las filas de los índices integrados y personalizados que hacen referencia a esa entidad. Cada fila contiene el tipo y la clave de la entidad, así como una cantidad variable de valores de propiedades, según la definición del índice.

Consulta el artículo sobre cómo se almacenan las entidades y los índices y obtén un desglose completo de los metadatos necesarios para almacenar índices y entidades en Bigtable.

Cantidad de índices
Es la cantidad de índices de Datastore que existen para la aplicación. Esto incluye los índices creados con anterioridad y que ya no aparecen en la configuración de la aplicación, pero que no se borraron. Consulta la página de límites de Datastore para obtener detalles adicionales sobre los límites.
Operaciones de escritura
Es la cantidad total de operaciones de escritura de Datastore.
Operaciones de lectura
Es la cantidad total de operaciones de lectura de Datastore.
Operaciones pequeñas
Es la cantidad total de operaciones pequeñas de Datastore. Las operaciones pequeñas incluyen las llamadas para asignar ID de Datastore o las búsquedas solo de claves.
Recurso Límite predeterminado
Datos almacenados (facturables) 1 GB gratis; no se aplica ningún máximo.
Cuando se supera la cuota gratuita, se aplican tarifas de facturación.
Cantidad de índices 200
Operaciones de lectura de entidades 50,000 gratis; sin máximo.
Cuando se supera la cuota gratuita, se aplican tarifas de facturación.
Operaciones de escritura de entidades 20,000 gratis; sin máximo.
Cuando se supera la cuota gratuita, se aplican tarifas de facturación.
Operaciones de eliminación de entidades 20,000 gratis; sin máximo.
Cuando se supera la cuota gratuita, se aplican tarifas de facturación.
Operaciones pequeñas Ilimitadas

Nota: Las operaciones de Datastore que generan el administrador de Datastore y el visualizador de Datastore se toman en cuenta para la cuota de tu aplicación.

Implementaciones

Implementaciones
La cantidad de veces que un desarrollador subió la aplicación. La cuota vigente es de 10,000 por día.

Una aplicación está limitada a 10,000 archivos subidos por versión. Cada archivo está limitado a un máximo de 32 megabytes. Además, si el tamaño total de todos los archivos de todas las versiones supera el gigabyte inicial gratuito, se aplicará un cargo de $0.026/GB al mes.

Horas de instancia

El uso de instancias se factura por el tiempo de actividad de las instancias a una tarifa por hora determinada. El tiempo facturable comienza cuando se inicia una instancia y termina quince minutos después de desactivarla. No se facturan las instancias inactivas que superen la cantidad máxima de instancias en ese estado establecida en la pestaña Configuración de rendimiento de Cloud Console.

Las cuotas diarias sin cargo de las instancias de backend y frontend son independientes. Ten en cuenta que, cuando usas servicios de App Engine, la clase de instancia del servicio determina cuál de estas cuotas se aplica.

Recurso o llamada a la API Cuota gratuita
Instancias de frontend (módulos con ajuste de escala automático) 28 horas de instancia F1 sin cargo por día
Instancias de backend (módulos de escalamiento básico y manual) 9 horas de instancia B1 sin cargo por día

Registros

Los registros de la API se miden cuando se recuperan los datos de registro.

La asignación de transferencia de registros hace referencia a los registros de solicitudes y a los datos de registro de una aplicación. Logging para aplicaciones de App Engine se proporciona mediante el paquete de operaciones. Consulta los precios del paquete de operaciones de Google Cloud para obtener más información sobre las tarifas y los límites.

Correo electrónico

App Engine factura el uso del correo electrónico “por mensaje”, para lo cual toma en cuenta cada correo electrónico enviado a cada destinatario. Por ejemplo, si envías un correo electrónico a diez personas, se cuenta como 10 mensajes.

Mensajes enviados
Es la cantidad total de mensajes que envió la aplicación. Ten en cuenta que la cuota máxima de mensajes enviados se mantiene dentro del nivel gratuito hasta que se haya saldado el primer cargo a tu aplicación.
Mensajes enviados a administradores
Es la cantidad total de mensajes que la aplicación envió a sus administradores. El límite de tamaño total para cada correo electrónico enviado a los administradores, incluidos el encabezado, los archivos adjuntos y el cuerpo del mensaje, es de 16 KB.
Datos enviados en el cuerpo del mensaje
Es la cantidad de datos que se enviaron en el cuerpo de los mensajes de correo electrónico. Esto también se considera dentro de la cuota de Ancho de banda saliente.
Archivos adjuntos enviados
Es la cantidad total de archivos adjuntos enviados junto con los mensajes de correo electrónico.
Datos de archivos adjuntos enviados
Es la cantidad de datos entregados como archivos adjuntos de mensajes de correo electrónico. Esto también se considera dentro de la cuota de Ancho de banda saliente.
Recurso Límite predeterminado diario Frecuencia máxima
Destinatarios contactados por correo electrónico 100 mensajes 8 mensajes/minuto
Administradores contactados por correo electrónico 5,000 correos electrónicos 24 correos electrónicos/minuto
Datos enviados en el cuerpo del mensaje 60 MB 340 KB/minuto
Archivos adjuntos enviados 2,000 archivos adjuntos 8 archivos adjuntos/minuto
Datos de archivos adjuntos enviados 100 MB 10 MB/minuto

Puedes agregar un máximo de 50 remitentes autorizados en la API de correo electrónico.

Envía correos electrónicos más allá de la cuota diaria

Si tu aplicación necesita cuotas más altas para enviar correos electrónicos, puedes usar un proveedor de correo de terceros, como SendGrid, Mailjet o Mailgun.

Solicitudes

Ancho de banda saliente (facturable)

Es la cantidad de datos que envió la aplicación en respuesta a solicitudes.

Incluye lo siguiente:

  • datos entregados en respuesta a solicitudes seguras o no seguras de los servidores de aplicación, servidores de archivos estáticos o del blobstore
  • datos enviados en mensajes de correo electrónico
  • datos en solicitudes HTTP de salida que envió el servicio de recuperación de URL
Ancho de banda de entrada

La cantidad de datos que la aplicación recibe a partir de solicitudes. Cada solicitud HTTP entrante puede tener un máximo de 32 MB.

Incluye lo siguiente:

  • datos recibidos por la aplicación en solicitudes seguras o no seguras
  • archivos subidos al blobstore
  • datos recibidos en respuesta a solicitudes HTTP del servicio de recuperación de URL
Ancho de banda saliente seguro
La cantidad de datos que envió la aplicación mediante una conexión segura en respuesta a solicitudes. El ancho de banda saliente seguro también se considera dentro de la cuota de Ancho de banda saliente.
Ancho de banda de entrada seguro
La cantidad de datos que recibió la aplicación mediante una conexión segura a partir de solicitudes. El ancho de banda de entrada seguro también se considera dentro de la cuota de Ancho de banda de entrada.
Recurso Límite diario Frecuencia máxima
Ancho de banda saliente (facturable, incluye HTTPS) 1 GB sin cargo; máximo de 14,400 GB 10 GB/minuto
Ancho de banda de entrada (incluye HTTPS) Ninguno Ninguna

En la siguiente tabla, se presentan las cuotas gratuitas que se aplican a la Búsqueda. Consulta la documentación específica de Java, Python y Go para obtener una descripción detallada de cada tipo de llamada a Búsqueda.

Los recursos de la API de Búsqueda se cobran según las tarifas que figuran en el programa de precios.

Recurso o llamada a la API Cuota gratuita
Almacenamiento total (índices y documentos) 0.25 GB
Consultas 1,000 consultas por día
Agregar documentos a los índices 0.01 GB por día

En la sección de la cuota en la consola de la aplicación, se muestra un recuento sin procesar de la cantidad de solicitudes a la API. Ten en cuenta que cuando indexas varios documentos en una sola llamada, el recuento de llamadas aumenta en función de la cantidad de documentos.

La API de Búsqueda impone los siguientes límites a fin de garantizar la confiabilidad del servicio:

  • 100 minutos agregados de ejecución de consultas por minuto, en una app y en un índice
  • 15,000 documentos agregados/borrados por minuto
Además, se aplica un límite de 10 GB de almacenamiento por índice. Cuando una app intenta superar esta cantidad, se muestra un error de cuota insuficiente. Este límite se puede aumentar hasta 200 GB mediante el envío de una solicitud desde la página App Engine Search de Google Cloud Console.

Nota: Si bien estos límites se aplican por minuto, Cloud Console muestra los totales diarios de cada uno. Los clientes con asistencia de nivel Plata, Oro o Platino pueden comunicarse con su representante de asistencia para solicitar el aumento de los límites de capacidad de procesamiento.

Sockets

Límites de datos diarios y por minuto (en ráfaga)
Las aplicaciones que usan sockets están sometidas a límites de frecuencia por minuto y por día. Los límites por minuto se configuran para controlar el comportamiento de los aumentos de actividad en las aplicaciones.
Recurso Límites diarios Límites por minuto (ráfagas)
Recuento de vinculaciones a sockets3,456,00019,200
Recuento de creaciones en sockets3,456,00019,200
Recuento de conexiones a sockets3,456,00019,200
Recuento de elementos que envió el socket663,552,0003,686,400
Recuento de elementos que recibió el socket663,552,0003,686,400
Bytes recibidos en socket3.3 TB2.4 GB
Bytes enviados de socket3.3 TB2.4 GB

Lista de tareas en cola

Llamadas a la API de lista de tareas en cola
Es la cantidad total de veces que la aplicación llamó a la API de lista de tareas en cola para poner una tarea en la cola.
Recuento de tareas almacenadas en la lista de tareas en cola
Es la cantidad total de tareas que puso en cola la aplicación y todavía no se ejecutaron.
Bytes de tareas almacenadas en la lista de tareas en cola
Los bytes consumidos por las tareas que la aplicación puso en cola y todavía no se ejecutaron.

Cuando se ejecuta una tarea, las solicitudes asociadas se toman en cuenta dentro de las cuotas de solicitudes de la aplicación

Los siguientes límites se aplican a todas las listas de tareas en cola:

Recurso Límite diario Frecuencia máxima
Llamadas a la API de lista de tareas en cola 1,000,000,000 N/A
Llamadas de administración de la lista de tareas en cola (a través de Cloud Console) 10,000 N/A
Recurso Límite predeterminado
Recuento de tareas almacenadas en la lista de tareas en cola 10,000,000,000
Bytes de tareas almacenadas en la lista de tareas en cola Ninguno
Cantidad máxima de listas (incluye las listas de extracción y de aplicaciones en cola, pero no la lista predeterminada) 100 listas

Nota: Una vez que una tarea se ejecuta o se borra, el almacenamiento que usa se libera. Tu cuota de almacenamiento se actualiza a intervalos regulares y podría no mostrar el espacio recuperado de forma inmediata. Para configurar el límite de Bytes de tareas almacenados, puedes ajustar la configuración de listas. Consulta la documentación de Python, Java, Go o PHP para obtener más detalles.

Según el tipo, se aplican los siguientes límites a las listas de tareas en cola:

Límites de listas de aplicaciones en cola
Tamaño máximo por tarea100 KB
Velocidad de ejecución de la lista500 invocaciones de tareas por segundo por lista
Cuenta regresiva/ETA máximo para una tarea30 días a partir de la fecha y hora actuales
Cantidad máxima de tareas que pueden agregarse en lote100 tareas
Cantidad máxima de tareas que pueden agregarse en una transacción5 tareas
Cantidad máxima predeterminada de listas de tareas en cola100 listas; comunícate con el personal de asistencia para solicitar un aumento
Límites de listas de extracción
Tamaño máximo por tarea1 MB
Cuenta regresiva/ETA máximo para una tarea30 días a partir de la fecha y hora actuales
Cantidad máxima de tareas que pueden agregarse en lote100 tareas
Cantidad máxima de tareas que pueden agregarse en una transacción5 tareas
Cantidad máxima de tareas que pueden solicitarse en una sola operación1,000 tareas
Tamaño máximo de la carga útil cuando se solicita un lote de tareas32 MB
Cantidad máxima predeterminada de listas de tareas en cola100 listas Comunícate con el personal de asistencia para solicitar un aumento.

Cron

Las siguientes cuotas se aplican específicamente a los trabajos cron.

Trabajos cron
Cantidad de trabajos cron.
Recurso Límite predeterminado
Trabajo cron 250 trabajos cron

Recuperación de URL

Llamadas a la API de URL Fetch
Es el total de veces que la aplicación accedió al servicio de recuperación de URL para realizar una solicitud HTTP o HTTPS.
Datos enviados de URL Fetch
Es la cantidad de datos que se enviaron al servicio de recuperación de URL en las solicitudes. También se considera en la cuota de ancho de banda saliente.
Datos recibidos de URL Fetch
Es la cantidad de datos recibidos del servicio de recuperación de URL en forma de respuesta. También se considera en la cuota de ancho de banda entrante.
Recurso Límite diario Frecuencia máxima
Llamadas a la API de UrlFetch 860,000,000 llamadas 660,000 llamadas/minuto
Datos enviados de UrlFetch 4.5 TB 3,600 MB/minuto
Datos recibidos de UrlFetch 4.5 TB 3,600 MB/minuto