Ich versuche, ein NodeJS-Skript auf einer Google Compute-VM auszuführen, das regelmäßig einen externen Dienst abfragt. Nach einigen Anfragen tritt jedoch im Skript folgender Fehler auf:
Error: getaddrinfo EAI_AGAIN site.to.poll site.to.poll:443
Ab und zu wird es für einige Anfragen wiederhergestellt, bevor erneut ein Fehler auftritt. Die Anfragen erfolgen im Allgemeinen in Intervallen von ca. 15 Sekunden, aber ein Ereignis alle paar Minuten führt in etwa einer Sekunde etwa 20 Anfragen aus.
Ich bin mir nicht sicher, ob es etwas mit dem Kontingent zu tun hat. Ich habe versucht, die Kontingentgrenzen zu überprüfen, aber sie scheinen alle weit über dem zu liegen, was ich nutze, und die VM befindet sich auf einer Premium-Netzwerkebene.
Antwort1
Es gibt feste Grenzen für die API-Anforderungsrate in GCP und diese werden vom Projekt gezählt (unabhängig vom verwendeten Dienstkonto).
Die einzigen Methoden, die von der Zählung ausgenommen sind, sind *.get
und *.list
.
API-Ratenbegrenzungen definieren die Anzahl der Anfragen, die an die Compute Engine-API gestellt werden können. API-Ratenbegrenzungen gelten pro Projekt. Ratenbegrenzungen werden in Intervallen von jeweils 100 Sekunden durchgesetzt. Beispielsweise würden 20 Anfragen/Sekunde 2000 Anfragen innerhalb von 100 Sekunden entsprechen. Das bedeutet, dass Sie, wenn Sie irgendwann innerhalb von 100 Sekunden eine bestimmte Begrenzung erreichen, warten müssen, bis Ihr Kontingent aktualisiert wird, um weitere Anfragen stellen zu können.
Schauen Sie sich die Dokumentation an, um genaue Zahlen zu erhalten überAPI-Ratenbegrenzungen.