Lista de verificação pré-lançamento

Garantir que sua equipe tenha acesso aos recursos necessários

Mantenha a carta de boas-vindas do Google Maps APIs Premium Plan em algum lugar seguro

Por que é importante: a carta de boas-vindas é o kit do iniciante do Google Maps APIs Premium Plan e, talvez, também o kit de primeiros socorros. Ela contém informações essenciais, como o ID do projeto do Google API Console, o ID do cliente e a chave criptográfica, necessárias para começar a usar o Premium Plan. Além disso, ela contém todas as informações necessárias para entrar em contato com a equipe de suporte do Premium Plan, caso ocorram problemas técnicos com o uso das Google Maps APIs.

Usar o Google Cloud Support Portal

Por que é importante: o portal de suporte oferece acesso a informações como relatórios de uso, feeds de notícias e recursos úteis para desenvolvedores. E, o que é mais importante, o portal de suporte permite registrar casos de suporte com a equipe de suporte do Premium Plan, caso ocorram problemas técnicos durante o desenvolvimento ou o lançamento. O portal de suporte pode ser acessado neste URL:

https://google.secure.force.com/

Antes do lançamento, não deixe de ativar o acesso ao portal de suporte para todos os desenvolvedores responsáveis pela manutenção do aplicativo. Se ocorrer algum problema técnico, o acesso ao portal de suporte oferecerá o duplo benefício de permitir que membros da sua equipe entrem em contato com o suporte e permitir que nossa equipe de suporte entre em contato com as partes interessadas na sua organização. Por exemplo, a equipe de suporte pode precisar entrar em contato com a organização se detectar tráfego ou comportamento anormal que pode causar falha no seu aplicativo. A certeza de termos os contatos adequados com os desenvolvedores pode ser a diferença entre uma interrupção inesperada e evitar essa interrupção. Se você não tiver acesso ao portal de suporte, solicite-o aqui:

Solicite uma conta do Google Cloud Support Portal

Assinar os feeds de notificação relevantes

Por que é importante: para garantir a atualização em relação à evolução e as mudanças das Maps APIs, recomendamos que você assine os feeds de notificação relevantes, como descrito nas Perguntas frequentes.

Você também pode assinar o feed RSS a seguir sobre Anúncios da Google Maps Premier API: notificações de interrupções, atualizações e manutenções:

http://google.force.com/services/xml/MapsRSS

Ter a linha direta de suporte à mão

1-877-355-5787 para clientes dos EUA, +1 404-978-9282 para clientes fora dos EUA

Por que é importante: a linha direta é o meio de ligar para o Google Cloud Support Portal. Adicione esta página aos favoritos para encontrar os números atualizados da linha direta do suporte. Você pode usar a linha direta de suporte para relatar problemas técnicos para a nossa equipe, mas observe que ela é destinada apenas a casos de interrupção de produção ou serviços inutilizáveis. Nossos níveis de prioridade são definidos neste documento:

https://support.google.com/work/answer/184028

Otimizar o aplicativo

Configurar o firewall para permitir o acesso aos serviços das Google Maps APIs

Por que é importante: os serviços das Google Maps APIs usam diversos domínios, alguns dos quais não pertencem ao domínio *google.com. Se você usa um firewall restritivo, é importante permitir acesso aos domínios usados pelos serviços da Maps API. Se o firewall não permitir acesso a esses domínios, as solicitações de API falharão, o que poderá causar erro nos aplicativos. Você pode encontrar uma lista completa de domínios usados pelas Maps APIs no portal de suporte:

  1. Faça login no Google Cloud Support Portal.
    O portal de suporte está disponível apenas para clientes com o Google Maps APIs Premium Plan ou uma licença anterior do Google Maps APIs for Work ou Google Maps for Business.
  2. Navegue até a guia Resources.
  3. Selecione a lista de domínios usados pela família das Google Maps APIs. (Este é o link direto.)
  4. Permita que os aplicativos acessem os domínios listados.

Não recomendamos o gerenciamento de restrições de firewall por endereço IP, pois os IPs associados a esses domínios não são estáticos.

Observação: os serviços das Google Maps APIs usam a porta 80 (http) e 443 (https) para tráfego de entrada e saída. Esses serviços também exigem solicitações GET, POST, PUT, DELETE e HEAD. Configure o firewall para permitir tráfego por essas portas e permitir solicitações de acordo com a API e o caso de uso.

Carregar as APIs usando o nome do host SSL correto

Por que é importante: os aplicativos que carregam as Maps APIs usando SSL devem fazê-lo do endereço https://maps.googleapis.com em vez do nome do host legado https://maps-api-ssl.google.com.

Autorizar os domínios SSL para uso com a Google Maps JavaScript API

Por que é importante: ao usar a Google Maps JavaScript API com um domínio SSL, é essencial que você tenha autorizado explicitamente os domínios HTTPs para garantir que as solicitações não sejam rejeitadas. Observe que a autorização de http://yourdomain.com não ativa automaticamente o equivalente SSL, https://yourdomain.com. Você pode verificar a lista de domínios autorizados no Google Cloud Support Portal selecionando o link Maps: Manage Client ID no menu de navegação à esquerda. Para resolver erros relacionados ao uso de APIs do lado do cliente com um domínio SSL, recomendamos que você verifique antes se todos os elementos da página são carregados usando HTTP. Consulte também o guia de solução de problemas de autorização.

Selecionar a versão correta da API

Por que é importante: antes de desenvolver aplicativos, é importante estar ciente das versões obsoletas das APIs. A opção por desenvolver usando versões não obsoletas de APIs reduzirá o tempo de desenvolvimento e o custo quando essas versões obsoletas se tornarem indisponíveis.

Especificamente, é essencial compreender o esquema de controle de versões usado pela Google Maps JavaScript API para evitar o uso acidental de uma versão incorreta de API no ambiente.

Por exemplo, o uso de uma versão experimental da API no ambiente de desenvolvimento/teste pode ser aceitável, mas é altamente desaconselhável usar essas versões em um ambiente de produção. Nosso ANS se aplica apenas a versões estáveis da API. Portanto, use apenas versões estáveis no ambiente de produção.

Consulte o guia de versões da Google Maps JavaScript API.

Escolher entre projeto do lado do cliente e projeto do lado do servidor

Por que é importante: a escolha entre as abordagens do lado do cliente ou do servidor é uma decisão de arquitetura absolutamente essencial para a estabilidade e a escalabilidade dos aplicativos. De modo geral, a abordagem do lado do servidor deve ser usada para processamento off-line prévio e posterior de registros (ou seja, fora do aplicativo). Como alternativa, a abordagem do lado do cliente deve ser usada para partes dos aplicativos que interagem com os usuários (ou seja, processam solicitações enviadas pelos usuários em tempo real).

A implantação da abordagem do lado do servidor em pontos em que a abordagem do lado do cliente deveria ser usada é o principal motivo do esgotamento de cotas e, portanto, de erros nos aplicativos. É altamente recomendado consultar as estratégias de geocodificação antes de projetar ou executar aplicativos que dependem de chamadas do lado do servidor.

Otimizar o uso de cotas

Por que é importante: a compreensão da forma como o aplicativo consome cotas, conhecidas como Maps APIs Credits, ajuda a reduzir o valor pago. Por exemplo, se você usar a Google Maps JavaScript API, o aplicativo consome Maps APIs Credits para cada carregamento de mapa. Consulte o guia de taxas e limites de uso do Premium Plan.

Gerenciar o uso de cotas de serviços Web

Por que é importante: por padrão, a cota de serviços Web compartilhados é definida como 100.000 solicitações diárias gratuitas. Para obter uma descrição mais detalhada de cotas por API, consulte o guia de limites de uso. Para confirmar quantas cotas estão disponíveis para o projeto, registre um caso de suporte.

Antes de lançar o serviço, é essencial que você entenda os diferentes erros relacionados a cotas (por exemplo, OVER_QUERY_LIMIT, User Rate Limit Exceeded) e defina a lógica adequada no aplicativo para poder responder a esses erros quando a cota for excedida. Comece lendo as perguntas frequentes de limites de uso. Para obter informações sobre os códigos de status retornados por APIs individuais, consulte o guia do desenvolvedor dessa API. Por exemplo, consulte o guia de códigos de status da Google Maps Directions API. A compreensão e a implementação desses conceitos reduzirão consideravelmente a probabilidade de o aplicativo exceder a cota permitida, ser bloqueada pelo Google e/ou apresentar erros.

Executar testes de carregamento com o aplicativo

Por que é importante: use o teste de carregamento do aplicativo para garantir que ele consegue processar altos volumes de solicitações sem exceder as cotas das Maps APIs.

Testes de carregamento em tempo real usando os serviços do Google farão com que o aplicativo exceda a cota permitida e seja bloqueado pelo Google. As Google Maps APIs podem atender a volumes muito altos. Em 2012, o Siga o Papai Noel atendeu a 1.600.000 solicitações por segundo. Portanto, é desnecessário executar testes de carregamento com os serviços do Google. Em vez disso, faça testes de carregamento com o aplicativo para garantir que ele consiga lidar com altos volumes de solicitações sem exceder as cotas das Maps APIs. Por exemplo, se sua cota da Google Maps Geocoding API for 20 QPS (consultas por segundo), os testes de carregamento do aplicativo deverão garantir que ele possa processar 600 QPS sem enviar mais de 20 QPS para a Google Maps Geocoding API.

Para conseguir fazer isso com segurança, os testes de carregamento devem ser executados usando uma API simulada (falsa), um serviço que possa absorver altas quantidades de solicitações e respondê-las de forma válida, sem envolver as Google Maps APIs. Dessa forma, é possível fazer testes de carregamento com o aplicativo sem correr o risco de bloqueio pelas Google Maps APIs.

Veja este exemplo de uma API simulada, implementada como um pequeno aplicativo do Google App Engine. Você pode fazer upload desse exemplo para o seu próprio aplicativo do App Engine (depois de registrar um em appengine.google.com) e fazer com que o aplicativo envie as solicitações para lá, em vez de para maps.googleapis.com.

As cotas padrão (gratuitas) do App Engine normalmente são suficientes para testes de carregamento do aplicativo muito além das cotas dos serviços Web das Maps APIs. Verifique se o aplicativo define o cabeçalho User-Agent correto para ativar a compressão de respostas. Isso é essencial para garantir o uso eficiente da largura de banda, o que é particularmente importante para um aplicativo do App Engine atendendo a um alto volume de respostas em texto simples (JSON/XML). Se precisar de uma cota maior para o aplicativo do App Engine, você também poderá ativar a cobrança, embora isso raramente seja necessário.

Migrar um aplicativo de uma licença padrão para uma licença premium

Incluir um ID do cliente ou chave de API em solicitações de API

Por que é importante: uma das coisas mais importantes que você pode fazer em seu aplicativo é não deixar de incluir o ID do cliente (gme-yourclientid) ou a chave de API (que tem a seguinte aparência: AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0) nas solicitações de API. O ID do cliente ou a chave de API identifica solicitações como solicitações do Google Maps APIs Premium Plan.

Você deve incluir o ID do cliente ou a chave de API nos aplicativos para se beneficiar de todos os recursos específicos do Premium Plan. A inclusão do ID do cliente ou da chave de API também é necessária para receber suporte técnico e assegurar que o aplicativo seja coberto pelo nosso ANS.

Para a maioria das APIs, você pode optar por usar um ID do cliente ou uma chave de API. O ID do cliente é incluído na carta de boas-vindas, que foi enviada para os contatos primários da sua organização. Você pode gerar suas próprias chaves de API no Google API Console.

Os detalhes estão no guia de autenticação e autorização.

Incluir a chave de API ou o ID do cliente (mas não ambos) nas solicitações de API

Por que é importante: para carregar corretamente a Google Maps JavaScript API, ou para enviar uma solicitação a outras Google Maps APIs, é necessário incluir o ID do cliente ou a chave de API, mas não ambos. Se você usar um ID do cliente, deve remover todos os parâmetros key. Se sua solicitação incluir um ID do cliente e uma chave, falhará.

Siga o guia de autenticação e autorização para obter informações completas sobre como formatar corretamente solicitações do Premium Plan por API individual.

Ao usar um ID do cliente, autorizar os domínios para uso com a Google Maps JavaScript API

Por que é importante: para evitar que sites não autorizados usem seu ID do cliente, a Google Maps JavaScript API exige que você entre em contato com a nossa equipe de suporte para autorizar todos os domínios de todos os sites que usam seu ID do cliente. (Não é necessário registrar um URL para usar uma chave de API em vez de um ID do cliente.) Se um site que tentar usar seu ID do cliente não corresponder aos URLs autorizados para uso desse ID, não conseguirá usar a API com esse ID. Você pode autorizar domínios a qualquer momento. Portanto, verifique se todos os seus domínios de todos os seus sites foram autorizados antes do lançamento.

Você pode verificar a lista de domínios autorizados no Google Cloud Support Portal selecionando o link Maps: Manage Client ID no menu de navegação à esquerda.

Em caso de problemas de autorização, recomendamos que você consulte o guia de solução de problemas de autorização antes de registrar um caso.

Para usar um ID do cliente, assine solicitações de serviço Web usando uma assinatura gerada com a sua chave criptográfica privada

Por que é importante: sua chave criptográfica privada é usada para gerar assinaturas digitais que informam ao Google que suas solicitações vêm de uma origem confiável. Nossas Web Service APIs exigem a adição de uma assinatura digital às solicitações, caso você use um ID do cliente para autenticação. Isso adiciona uma camada de segurança à solicitação, protegendo melhor a cota associada ao seu ID do cliente. A sua chave criptográfica (por exemplo, vNIXE0xscrmjlyV-12Nj_BvUPaw=) está incluída na carta de boas-vindas, enviada aos contatos primários da sua organização.

Observação: a chave criptográfica é usada para gerar assinaturas. Não a anexe às solicitações como a própria assinatura. A chave criptográfica é semelhante a uma senha de ATM. Ela é usada como forma de autenticação para acessar sua conta e nunca deve ser compartilhada abertamente com origens não confiáveis nem ficar visível para elas. As solicitações de serviços Web do Premium Plan que não estiverem devidamente assinadas serão rejeitadas por nossos servidores. Portanto, é essencial que o aplicativo assine corretamente as solicitações antes do lançamento. Consulte o guia de autenticação e autorização.

Rastrear o uso de aplicativos

Por que é importante: como cliente do Premium Plan, você tem acesso a relatórios detalhados sobre o uso do aplicativo, incluindo as solicitações efetuadas, os créditos consumidos e os erros retornados, entre outros. Consulte o guia de relatórios.

O parâmetro channel é opcional e permite rastrear o uso do ID do cliente atribuindo um canal distinto para cada aplicativo. Os parâmetros de canal não precisam ser registrados no ID do cliente. Basta adicionar o parâmetro de canal à solicitação de API, e os resultados de uso por canal serão exibidos nos relatórios de suporte de uso do portal em 1 a 2 dias após a implementação. Você decide onde implementar os canais e, portanto, como o uso é agregado. Antes do lançamento, decida se o aplicativo deve integrar parâmetros de canal para rastrear o uso do aplicativo.

O parâmetro channel deve usar o seguinte formato:

  • Deve ser uma string ASCII alfanumérica.
  • Os caracteres ponto (.), sublinhado (_) e hífen (-) são permitidos.
  • O parâmetro channel não diferencia maiúsculas de minúsculas. Parâmetros channel com caracteres maiúsculos, minúsculos e mistos são mesclados em um único parâmetro equivalente em letras minúsculas. Por exemplo, o uso do canal CUSTOMER é combinado com o uso do canal customer.

É possível implementar até 2.000 canais distintos por ID do cliente.

Para usar o parâmetro channel, inclua-o no URL da solicitação, juntamente com o parâmetro client usado para passar o ID do cliente.

Observe que o parâmetro de canal deve ser um valor atribuído estaticamente para cada aplicativo. Ele não deve ser gerado dinamicamente e usado para rastrear usuários individuais.