Quotas et limites

Ce document liste les quotas et les limites système qui s'appliquent à Media CDN.

  • Les quotas ont des valeurs par défaut, mais vous pouvez généralement demander des ajustements.
  • Les limites système sont des valeurs fixes qui ne peuvent pas être modifiées.

Google Cloud utilise des quotas pour garantir l'équité et réduire les pics d'utilisation et de disponibilité des ressources. Un quota limite la quantité d'une ressourceGoogle Cloud que votre projet Google Cloud peut utiliser. Les quotas s'appliquent à différents types de ressources, y compris les composants matériels, logiciels et réseau. Par exemple, ils peuvent limiter le nombre d'appels d'API à un service, le nombre d'équilibreurs de charge utilisés simultanément par votre projet ou le nombre de projets que vous pouvez créer. Ils protègent la communauté des utilisateurs deGoogle Cloud en empêchant la surcharge des services. Les quotas vous aident également à gérer vos propres ressources Google Cloud .

Le système Cloud Quotas permet d'effectuer les opérations suivantes :

Dans la plupart des cas, lorsque vous tentez d'utiliser une ressource plus que son quota ne le permet, le système bloque l'accès à la ressource et la tâche que vous essayez d'effectuer échoue.

Les quotas s'appliquent généralement au niveau du projet Google Cloud . Votre utilisation d'une ressource dans un projet n'affecte pas votre quota disponible dans un autre projet. Dans un projet Google Cloud , les quotas sont partagés entre toutes les applications et adresses IP.

Pour en savoir plus, consultez la présentation des quotas Cloud.

Des limites système s'appliquent également aux ressources Media CDN. Elles ne peuvent pas être modifiées.

Quotas

Les quotas suivants s'appliquent à Media CDN. Si vous avez besoin d'un quota plus élevé, contactez votre équipe commerciale Google Cloud et demandez des ajustements. Pour en savoir plus, consultez Demander un ajustement de quota.

Configuration

Élément Quota par défaut
Nombre maximal de ressources EdgeCacheService par projet 20
Nombre maximal de ressources EdgeCacheOrigin par projet 30
Nombre maximal de ressources EdgeCacheKeyset par projet 10

Limites du système

Les limites suivantes s'appliquent à Media CDN.

Configuration

Élément Limites Remarques
Nombre maximal de ressources RouteRules par EdgeCacheService 200

Chaque EdgeCacheService peut définir jusqu'à 200 ressources RouteRules.

Nombre maximal de ressources PathMatchers par EdgeCacheService 50

Chaque EdgeCacheService peut définir jusqu'à 50 ressources PathMatchers.

Nombre maximal de certificats SSL par service 5 Reportez-vous au quota par projet pour les certificats SSL.
Nombre maximal de clés publiques par EdgeCacheKeyset 3 Les multiples clés d'une collection de clés permettent la rotation des clés. Supprimez les clés inutilisées au fil du temps.
Nombre maximal de clés partagées de validation par EdgeCacheKeyset 3 Les multiples clés d'une collection de clés sont conçues pour permettre une rotation des clés : vous devez supprimer les clés plus anciennes et inutilisées au fil du temps.

En-têtes, requêtes et codes d'état HTTP

Élément Limites Remarques
Taille maximale de l'en-tête de requête, y compris le chemin de requête 16 kio Cette limite ne peut pas être augmentée.

Selon le protocole sous-jacent, la connexion de la requête est fermée sans écrire de code de réponse, ou la requête est rejetée avec une réponse HTTP 431 Request Header Fields Too Long.

Ces requêtes sont consignées avec un objet statusDetails contant la valeur headers_too_long, si la journalisation est activée.

Taille maximale du corps de la requête 16 kio Cette limite ne peut pas être augmentée.

Les requêtes dont le corps dépasse cette limite sont rejetées avec un code d'état HTTP 413 Content Too Large.

Taille maximale de l'en-tête de réponse Environ 128 Kio

Les réponses de l'origine dont les en-têtes dépassent cette limite entraînent l'envoi d'un code d'état HTTP 502 Bad Gateway au client. Ces réponses sont consignées avec une valeur statusDetails de backend_response_headers_too_long, si la journalisation est activée.

Taille maximale des objets pouvant être mis en cache 100 Gio

Il s'agit de la taille maximale des objets à l'origine que Media CDN peut mettre en cache. Les objets plus volumineux sont traités comme non cachables.

Taille maximale des réponses non mises en cache 10 239 Mio

Il s'agit du nombre maximal d'octets dans une réponse (y compris les en-têtes) que Media CDN sert de proxy lorsqu'un objet ne peut pas être mis en cache. Les réponses non mises en cache sont tronquées une fois la limite atteinte.

Conversion en minuscules pour les en-têtes Toujours pour Media CDN Media CDN suit les conventions HTTP/2 pour la casse des en-têtes de requête et de réponse.

Quel que soit le protocole utilisé, tous les en-têtes sont convertis en minuscules.

Par exemple, Host devient host et Keep-Alive devient keep-alive.

La casse des valeurs d'en-tête n'est pas modifiée.

Limites de débit des requêtes d'API

Si vous avez besoin d'augmenter la limite de débit des API, vous pouvez examiner l'utilisation actuelle et demander une augmentation.

Élément Limites
Invalidations par EdgeCacheService 10 par minute
Tous les appels qui ne se trouvent pas dans l'espace de noms par projetnetworkservices 1 200 appels par minute
Lecture seule : GetEdgeCache*, ListEdgeCache* par projet 100 par minute
Lecture/écriture : tous les éléments de l'espace de noms qui ne sont pas marqués comme en lecture seule par projetnetworkservices 100 par minute

Nous vous recommandons d'envoyer les requêtes de mise à jour, telles que create, patch et delete, une par une. Bien que l'API mette en file d'attente plusieurs requêtes simultanées, l'envoi de ces requêtes simultanément peut entraîner une augmentation significative de la latence et des temps de traitement, car le système traite chaque élément de manière séquentielle.

Délais avant expiration du client

Délai avant expiration Durée maximale Code d'état Description
Maximum request duration 5 minutes HTTP 408 Request Timeout Durée maximale d'une réponse à une requête unique.
Header timeout 10 seconds HTTP 408 Request Timeout Durée d'envoi de l'intégralité des en-têtes de requête par le client.

Délais avant expiration de l'origine

  • connectTimeout et maxAttemptsTimeout limitent le temps nécessaire à Media CDN pour trouver une réponse utilisable.

    Les deux délais avant expiration incluent le temps nécessaire à l'origine pour renvoyer des en-têtes et pour déterminer s'il convient d'utiliser un basculement ou une redirection. connectTimeout s'applique indépendamment pour chaque tentative d'origine, tandis que maxAttemptsTimeout inclut le temps nécessaire pour se connecter à toutes les tentatives d'origine, en incluant les basculements et les redirections. Le suivi d'une redirection est considéré comme une tentative supplémentaire de connexion à l'origine et est comptabilisé dans le maxAttempts défini pour l'origine configurée.

    Lorsque Media CDN rencontre une réponse de non-redirection, par exemple en provenance d'une origine de redirection ou de basculement, les valeurs readTimeout et responseTimeout s'appliquent. Les origines redirigées utilisent les valeurs connectTimeout, readTimeout et responseTimeout configurées pour le EdgeCacheOrigin qui a rencontré la redirection.

  • responseTimeout et readTimeout contrôlent la durée maximale d'une réponse en flux continu. Une fois que Media CDN a déterminé qu'il utilisera une réponse en amont, ni connectTimeout, ni maxAttemptsTimeout n'ont d'importance. À ce stade, readTimeout et responseTimeout entrent en vigueur.

Media CDN effectue au maximum quatre tentatives d'origine sur toutes les origines, quel que soit le paramètre maxAttempts défini par chaque EdgeCacheOrigin. Media CDN utilise la valeur maxAttemptsTimeout de la EdgeCacheOrigin principale. Les valeurs de délai d'expiration par tentative (connectTimeout, readTimeout et responseTimeout) sont configurées pour la EdgeCacheOrigin de chaque tentative.

Le tableau suivant décrit les champs de délai avant expiration :

Champ Par défaut Description
connectTimeout 5 secondes

Durée maximale utilisable par Media CDN, entre le lancement de la requête et l'origine, avant que Media CDN détermine si la réponse est utilisable. En pratique, connectTimeout couvre le temps nécessaire à la création de la requête, aux recherches DNS, aux handshakes TLS et à l'établissement de connexions TCP/QUIC, jusqu'à l'obtention des en-têtes de réponse qui contiennent le code d'état HTTP.

Le délai avant expiration doit être compris entre 1 et 15 secondes.

maxAttemptsTimeout 15 secondes

Délai maximal pour toutes les tentatives de connexion à l'origine (y compris les origines de basculement) avant qu'une erreur soit renvoyée au client. Un code d'état HTTP 504 est renvoyé si le délai avant expiration est atteint avant qu'une réponse soit renvoyée.

Le délai avant expiration doit être compris entre 1 et 30 secondes.

Ce paramètre définit la durée totale de toutes les tentatives de connexion d'origine, en incluant les origines de basculement, afin de plafonner le temps total d'attente des clients avant de lancer la diffusion. Seule la première valeur maxAttemptsTimeout est utilisée, la première valeur étant définie par l'origine configurée pour la route donnée.

readTimeout 15 secondes

Durée maximale d'attente entre les lectures d'une seule réponse HTTP. Le readTimeout est limité par le responseTimeout. Toutes les lectures de la réponse HTTP doivent être effectuées dans le délai défini par le responseTimeout. Le délai avant expiration doit être compris entre 1 et 30 secondes. Si ce délai avant expiration est atteint avant que la réponse ne soit complète, la réponse est tronquée et enregistrée.

responseTimeout 30 seconds

Durée maximale autorisée pour l'obtention d'une réponse complète.

Le délai avant expiration doit être compris entre 1 et 120 secondes.

La durée est mesurée à partir du moment où les premiers octets du corps sont reçus. Si ce délai avant expiration est atteint avant que la réponse ne soit complète, la réponse est tronquée et enregistrée.

Manage quotas

Media CDN enforces quotas on resource usage for various reasons. For example, quotas protect the community of Google Cloud users by preventing unforeseen spikes in usage. Quotas also help users who are exploring Google Cloud with the free tier to stay within their trial.

All projects start with the same quotas, which you can change by requesting additional quota. Some quotas might increase automatically based on your use of a product.

Permissions

To view quotas or request quota increases, Identity and Access Management (IAM) principals need one of the following roles.

Task Required role
Check quotas for a project One of the following:
Modify quotas, request additional quota One of the following:
  • Project Owner (roles/owner)
  • Project Editor (roles/editor)
  • Quota Administrator (roles/servicemanagement.quotaAdmin)
  • A custom role with the serviceusage.quotas.update permission

Check your quota

Console

  1. In the Google Cloud console, go to the Quotas page.

    Go to Quotas

  2. To search for the quota that you want to update, use the Filter table. If you don't know the name of the quota, use the links on this page instead.

gcloud

Using the Google Cloud CLI, run the following command to check your quotas. Replace PROJECT_ID with your own project ID.

    gcloud compute project-info describe --project PROJECT_ID

To check your used quota in a region, run the following command:

    gcloud compute regions describe example-region
    

Errors when exceeding your quota

If you exceed a quota with a gcloud command, gcloud outputs a quota exceeded error message and returns with the exit code 1.

If you exceed a quota with an API request, Google Cloud returns the following HTTP status code: 413 Request Entity Too Large.

Request additional quota

To adjust most quotas, use the Google Cloud console. For more information, see Request a quota adjustment.

Resource availability

Each quota represents a maximum number for a particular type of resource that you can create, if that resource is available. It's important to note that quotas don't guarantee resource availability. Even if you have available quota, you can't create a new resource if it is not available.

For example, you might have sufficient quota to create a new regional, external IP address in a given region. However, that is not possible if there are no available external IP addresses in that region. Zonal resource availability can also affect your ability to create a new resource.

Situations where resources are unavailable in an entire region are rare. However, resources within a zone can be depleted from time to time, typically without impact to the service level agreement (SLA) for the type of resource. For more information, review the relevant SLA for the resource.