Cómo optimizar el uso del servicio web

Importante: El plan Premium de Google Maps Platform ya no está disponible para registros o clientes nuevos.

Descripción general

Si tu aplicación excede los límites de uso de un servicio web de Google Maps Platform, el servicio muestra un mensaje de error. Si tu aplicación sigue excediendo los límites de uso, podría experimentar un bloqueo de acceso al servicio web y, en algunos casos, recibir respuestas “403 Forbidden”.

Si las solicitudes de servicio web de tu aplicación reciben mensajes de error, puedes optimizarla para que utilice los servicios web de forma más eficiente y, así, reducir el uso.

Antes de comenzar

Antes de optimizar el uso de los servicios web que hace tu aplicación, comprueba que estés usando el servicio correcto para tu caso de uso y la licencia adecuada para las API de Google Maps.

Valida tu caso de uso

Los servicios web de Google Maps Platform son ideales para las aplicaciones que no requieren entradas de los usuarios en tiempo real o para cuando no se usa un navegador web. Por ejemplo, debes usar servicios web si tu aplicación emplea un conjunto de datos que no depende de la entrada del usuario; por ejemplo, un conjunto fijo de direcciones o un sitio web de bienes raíces que requiera geocodificación.

Ten en cuenta que, con los servicios web, se aplica el límite de consultas por segundo (QPS) a tu licencia del plan Premium, sin importar desde cuántas direcciones IP se envíen las solicitudes.

Por otro lado, los servicios del cliente disponibles con la API de Maps JavaScript tienen un límite de frecuencia por sesión de navegador. Por ello, las solicitudes se distribuyen entre todos los usuarios y aumentan a medida que crece el número de usuarios. Por lo tanto, los servicios del cliente son ideales para aplicaciones que geocodifican en tiempo real las direcciones que ingresan los usuarios, como el localizador de tiendas que busca tiendas cerca de la dirección particular de un usuario.

Para obtener una explicación más detallada sobre cuándo usar los servicios web, consulta Estrategias de geocodificación. En este documento, se brindan recomendaciones que, aunque se relacionan específicamente con la geocodificación, se aplican a todos los servicios web. También se explica cuándo deberías usar los servicios web del servidor y cuándo sus equivalentes del cliente.

Cómo optimizar el uso de los servicios web

Para usar los servicios web de forma más eficiente y reducir el uso, puedes enviar solicitudes solo cuando sea necesario y repartir el uso equitativamente para mantenerlo debajo de los límites.

Resultados almacenados en caché

En los artículos 3.2.3.a y b de las Condiciones del Servicio de Google Maps Platform, se establece que no debes realizar una búsqueda previa, almacenar, indexar o almacenar en caché ningún contenido, excepto en las condiciones específicas que se indican en las Condiciones.

Ten en cuenta que el ID del lugar, que se usa para identificar un lugar de forma exclusiva, está exento de la restricción de almacenamiento en caché. Por lo tanto, puedes almacenar valores del ID del lugar de manera indefinida.

Limitación de solicitudes

A fin de no superar los límites de uso, puedes configurar tu aplicación para que limite las solicitudes. Para eso, tu aplicación debería colocar las solicitudes en una cola y hacer seguimiento de cuándo estas se envían. Si llega una solicitud adicional que excede el límite de QPS, tu aplicación debería comprobar la marca de tiempo de la primera solicitud y esperar 1 segundo.

Incluso con la limitación, igualmente es posible que las aplicaciones reciban respuestas con el código de estado OVER_QUERY_LIMIT. Configura tu aplicación para que inserte una pequeña demora (20 ms) y vuelva a intentarlo si recibe esa respuesta.