Latência é o tempo que leva para você receber a resposta de uma solicitação. Este guia mostra as latências de ordem de magnitude para solicitações de API Merchant. Use esses valores para definir tempos limite e planejar a capacidade de processamento da sua integração.
A maioria das solicitações de API Merchant é concluída em menos de um segundo. As atualizações de inventário local e regional podem levar alguns segundos, e algumas consultas de relatório levam muito mais tempo.
Latências típicas
A tabela a seguir lista as latências aproximadas por tipo de solicitação. A latência típica é a mediana: metade das solicitações é concluída mais rapidamente. O 1%mais lento das solicitações leva o tempo mostrado na última coluna ou mais.
| Tipo de solicitação | Exemplos de métodos | Latência típica | 1% mais lento das solicitações |
|---|---|---|---|
| Leituras e gravações de produtos | products.get, productInputs.insert, productInputs.patch, productInputs.delete |
100 a 600 milissegundos | Cerca de 2 segundos |
| A maioria das outras solicitações | products.list, accounts.get, dataSources.list, aggregateProductStatuses.list |
Menos de 1 segundo | Alguns segundos |
| Gravações de inventário local e regional | localInventories.insert, regionalInventories.insert e os métodos delete correspondentes |
Alguns segundos | 10 segundos ou mais |
| Consultas de relatório | accounts.reports.search |
Cerca de meio segundo | 30 segundos ou mais |
As consultas de relatório são as que mais variam. A latência depende da tabela de relatórios que você consulta e da quantidade de dados que a consulta abrange. Cerca de 1 em cada 10 consultas de relatório geralmente leva mais de 2 segundos, e uma pequena fração pode levar mais de um minuto.
Recomendações
- Defina tempos limite com margem. Se você definir tempos limite de solicitação no cliente, defina-os bem acima das latências mais lentas listadas em Latências típicas. Por exemplo, um tempo limite de 60 segundos deixa uma margem ampla para a maioria das solicitações, mas não para todas as consultas de relatório.
- Envie solicitações independentes em paralelo. Como as gravações de inventário levam alguns segundos cada, enviá-las uma após a outra limita sua capacidade de processamento. Envie solicitações independentes em paralelo ou use solicitações em lote. Ao enviar várias solicitações, lembre-se dos limites diários e por minuto. Para mais informações, consulte Cotas de taxa.
- Limite as consultas de relatórios aos dados necessários. As consultas que abrangem grandes conjuntos de dados, como períodos longos, levam mais tempo e podem expirar. Se você precisar de grandes quantidades de dados, use o BigQuery. Para mais informações, consulte Carregar dados do Google Merchant Center no BigQuery.
- Tente novamente usando a espera exponencial. Se uma solicitação expirar ou falhar com um erro temporário, tente novamente com espera exponencial.
Tempo de processamento
Para solicitações que mudam dados, uma resposta bem-sucedida significa que a API Merchant aceitou a mudança, mas o processamento continua após a resposta. O tempo de processamento é o tempo que leva da resposta até que a mudança fique visível em outros recursos. O tempo de processamento não faz parte da latência e pode ser muito mais longo. Por exemplo, pode levar alguns minutos até que o produto processado reflita uma entrada de produto inserida.
Para mais informações sobre o estado final processado dos seus dados, consulte os seguintes guias: