Quota en limieten

Dit document bevat informatie over de quotum- en resourcelimieten voor Pub/Sub.

Zie Monitoring voor meer informatie over het volgen van uw quota (zoals voor het gebruik van onderwerpen of abonnementen).

Quotumgebruik bekijken en quotumlimieten beheren

U kunt voor een bepaald project het dashboard voor API- en servicequota gebruiken om uw huidige quota en gebruik te zien. U kunt dit dashboard ook gebruiken om één quotum tegelijk aan te passen.

Wilt u meerdere quota aanpassen, gebruik dan het dashboard voor IAM- en beheerquota.

U kunt een van bovenstaande dashboards gebruiken om het volgende te doen:

  • Uw quota verminderen
  • Een proces starten om hogere quotumlimieten aan te vragen

Toewijzing van projectgebruik

Voor de verwerkingssnelheid van push-abonnees wordt het quotumgebruik in rekening gebracht bij het project dat het push-abonnement bevat.

Voor de volgende quota wordt het gebruik in rekening gebracht bij het project dat is gekoppeld aan de aanroeper, niet bij het project dat de aangeroepen resource bevat (dus het project dat in het onderwerp of de naam van het abonnement wordt weergegeven).

  • Verwerkingssnelheid van de uitgever
  • Verwerkingssnelheid van de abonnee
  • Beheerdersbewerkingen

Bijvoorbeeld: Als een serviceaccount in project A een verzoek verzendt om een onderwerp te publiceren in project B, wordt het quotum in rekening gebracht bij project A. Elke aanvraag bevat gegevens met een project-ID.

Quotumlimieten

De quota in de volgende tabel kunnen per project worden bekeken en bewerkt in het dashboard voor API- en servicequota.

Regionale quota zijn onderverdeeld in twee typen:

  • Grote regio's: europe-west1, us-central1, us-east1
  • Kleine regio's: alle andere regio's

Quotum Standaard quotumlimiet Beschrijving
Publicatieverwerkingssnelheid per regio
  • 12.000.000 KB per minuut (200 MB/s) in grote regio's
  • 3.000.000 KB per minuut (50 MB/s) in kleine regio's
Quotumgebruik wordt gebaseerd op de grootte van de gepubliceerde PubsubMessages:

Er kunnen meerdere berichten worden opgenomen in één publicatieverzoek en er zijn geen extra quotumkosten per bericht.

Als berichten zijn voorzien van ordeningssleutels, is de maximale publicatieverwerkingssnelheid 1 MB/s per ordeningssleutel.

Verwerkingssnelheid voor ophalen van abonnees per regio
  • 24.000.000 KB per minuut (400 MB/s) in grote regio's
  • 6.000.000 KB per minuut (100 MB/s) in kleine regio's
Quotumgebruik wordt gebaseerd op de grootte van de geretourneerde PubsubMessages:
Verwerkingssnelheid voor bevestiging per regio
  • 24.000.000 KB per minuut (400 MB/s) in grote regio's
  • 6.000.000 KB per minuut (100 MB/s) in kleine regio's
Quotumgebruik wordt gebaseerd op de grootte van Acknowledge- en ModifyAckDeadline-verzoeken:
Verwerkingssnelheid voor push-abonnees per regio
  • 1.200.000 KB per minuut (20 MB/s) in grote regio's
  • 300.000 KB per minuut (5 MB/s) in kleine regio's
Voor push-afleververzoeken naar het push-eindpunt wordt het quotumgebruik gebaseerd op de grootte van de PubsubMessages naar het push-eindpunt.
Verwerkingssnelheid van StreamingPull-abonnees per regio
  • 24.000.000 KB per minuut (400 MB/s) in grote regio's
  • 6.000.000 KB per minuut (100 MB/s) in kleine regio's
Quotumgebruik wordt gebaseerd op de grootte van de PubsubMessages die naar de abonnee worden gestreamd:

De clientbibliotheken gebruiken waar mogelijk StreamingPull-bewerkingen.

Aantal open StreamingPull-verbindingen per regio
  • 24.000 open verbindingen tegelijkertijd in grote regio's
  • 6000 open verbindingen tegelijkertijd in kleine regio's
Het aantal open StreamingPull-verbindingen op elk willekeurig moment. Zie StreamingPull.
Beheerdersbewerkingen 6000 per minuut (100 ops/s) Voor elke beheerdersbewerking, zoals GetTopicRequest, wordt één eenheid in rekening gebracht bij dit quotum.

Get*, List*, Create*, Delete*, ModifyPushConfig, SetIamPolicy, GetIamPolicy, TestIamPermissions en DetachSubscription zijn beheerdersbewerkingen.

Quotumeenheden van verwerkingssnelheid

Quotumgebruik van verwerkingssnelheid wordt gemeten in eenheden van 1 KB. 1 KB komt overeen met 1000 bytes. In een PublishRequest met 105 berichten van elk 50 bytes is de grootte van de gebruikersgegevens bijvoorbeeld 105 * 50 bytes = 5250 bytes en is het quotumgebruik dus max(1kB, ceil(5250 bytes/1000)) = 6kB.

Resourcelimieten

Resource Limieten
Project 10.000 onderwerpen
10.000 gekoppelde of ontkoppelde abonnementen
5000 momentopnamen
Onderwerp 10.000 gekoppelde abonnementen
5000 gekoppelde momentopnamen
Abonnement Bewaart niet-bevestigde berichten in persistente opslag 7 dagen lang vanaf het moment dat deze zijn gepubliceerd. Er geldt geen limiet voor het aantal bewaarde berichten.
Abonnementen waarvan de aanwezigheid van de client 31 dagen lang niet is vastgesteld, kunnen automatisch worden verwijderd. Aanwezigheid wordt vastgesteld door aanroepen zoals Pull, Acknowledge en succesvolle pushbewerkingen.
Publicatieverzoek 10 MB (totale grootte)
1000 berichten
Bericht Berichtgrootte (het veld data): 10 MB
Kenmerken per bericht: 100
Grootte kenmerksleutel: 256 bytes
Grootte kenmerkwaarde: 1024 bytes
Openstaande berichten pushen

Standaard 3,000 * N.

30,000 * N voor abonnementen die de ontvangst van meer dan 99% van de berichten bevestigen met een gemiddelde push-wachttijd van minder dan 1 s. l10n-attrs-original-order="of,push,request">

N is het aantal publicatieregio's. Lees Push-abonnementen gebruiken voor meer informatie.

StreamingPull-streams 10 MB/s per open stream
Pull/StreamingPull-berichten De service kan beperkingen opleggen aan het totale aantal openstaande StreamingPull-berichten per verbinding. Als u met dergelijke beperkingen te maken krijgt, verhoogt u de snelheid waarmee u berichten bevestigt en het aantal verbindingen dat u gebruikt.

Tips en kanttekeningen

Hoge volumes verwerken

Als u de gcloud-tool van Cloud SDK gebruikt met een normaal gebruikersaccount (dat wil zeggen een niet-serviceaccount), zijn Pub/Sub-bewerkingen beperkt tot een snelheid die geschikt is voor handmatige bewerkingen. Snelheden die deze limiet overschrijden, resulteren in de fout RESOURCE_EXHAUSTED. Dit kunt u voorkomen door serviceaccountgegevens te gebruiken. Als u gegevens van de Cloud SDK wilt gebruiken voor automatisering, activeert u een serviceaccount voor uw Pub/Sub-bewerkingen.

Quota komen niet overeen

Het kan voorkomen dat quota niet overeenkomen wanneer gepubliceerde of ontvangen berichten kleiner zijn dan 1000 bytes. Voorbeeld:

  • Als u 10 berichten in afzonderlijke verzoeken publiceert en elk bericht 500 bytes is, is uw quotumgebruik voor het publiceren 10.000 bytes. Dit komt doordat berichten die kleiner zijn dan 1000 bytes, automatisch naar boven worden afgerond tot de volgende 1000 bytes.

  • Als u die 10 berichten in één enkele pull-reactie ontvangt, is uw quotumgebruik voor abonnees mogelijk slechts 5 KB, omdat de werkelijke grootte van elk bericht wordt gecombineerd om het totale quotum te bepalen.

  • Het omgekeerde is ook waar. Het quotumgebruik voor abonnees kan groter zijn dan het quotumgebruik voor uitgevers als u meerdere berichten publiceert in één publicatieverzoek of de berichten ontvangt in afzonderlijke Pull-verzoeken.