2013-06-06 12 views
5

Io, come tutti gli altri, immagino, abbiamo un limite di cortesia di 1000 chiamate API Mirror al giorno.Best practice per limitare il numero di chiamate all'API Mirror

Vedo che c'è una struttura di dosaggio che sembra promettente, ma sembra essere in grado di eseguire in batch solo le richieste di una singola credenziale. Quindi, anche un solo cliente, che spinge all'API ogni 60 secondi, riceverà 1440 richieste al giorno. Idealmente, 30 secondi sono dove mi piacerebbe essere. 2880 richieste/giorno sarebbero moltiplicate per il numero di clienti. Diventerà davvero molto veloce.

Potrei mancarmi qualcosa, ma non vedo un modo per aggirare questo.

Se fosse disponibile potevo glom tutti gli aggiornamenti in tutti i clienti nel periodo di 30 secondi in un messaggio gigante ...

C'è un modello migliore progettazione per tenere le carte up-to-date con la telemetria che sta cambiando in tempo reale?

+7

Solo una breve nota che il batching non riduce effettivamente il numero di richieste API contate, ma riduce solo il sovraccarico HTTP. Se si raggruppano 10 richieste insieme, verranno comunque contate come 10 richieste rispetto alla quota API. – Scarygami

risposta

0

È possibile inviare richieste a più utenti con una singola richiesta di batch: anziché impostare l'intestazione Authorization nella richiesta batch, è sufficiente impostare l'intestazione Authorization in ciascuna richiesta secondaria.

I nostri progetti Python e Java Quick Start hanno un esempio di utilizzo della richiesta batch per inviare un aggiornamento a un massimo di 10 utenti. Questo è anche menzionato nella sessione I/O Building Glass Services with the Google Mirror API.

Altrimenti, è possibile controllare la documentazione del protocollo nel nostro reference guide.

Come detto da Scarygami, ogni sotto richiesta consuma quota, quindi l'unica ottimizzazione è quella di risparmiare sulla larghezza di banda e sulle richieste HTTP, specialmente se si utilizza la codifica gzip.