La classe RetryParams
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
La classe RetryParams
est fournie par la bibliothèque cliente App Engine pour Cloud Storage dans src/cloudstorage
. Elle permet de modifier les paramètres par défaut liés au traitement du délai d'expiration et des nouvelles tentatives.
Introduction
La bibliothèque cliente App Engine pour Cloud Storage utilise les paramètres par défaut définis pour le traitement du délai d'expiration et des nouvelles tentatives lorsque vous essayez de contacter les serveurs Cloud Storage.
Cette classe vous permet de modifier ces paramètres à l'échelle de l'application ou pour un appel spécifique d'une fonction de la bibliothèque (copy2
, delete
, listbucket
, open
, stat
). Vous n'avez besoin de modifier que le paramètre qui vous intéresse, car les autres paramètres sont conservés, sauf s'ils sont explicitement écrasés. Chaque instance RetryParams
est unique pour chaque thread et chaque requête.
Pour modifier un paramètre par défaut à l'échelle de l'application, vous devez créer un objet RetryParams
, spécifier les paramètres à modifier et fournir cet objet à la fonction cloudstorage.set_default_retry_params()
comme décrit ci-dessous :
my_default_retry_params = cloudstorage.RetryParams(initial_delay=0.2,
max_delay=5.0,
backoff_factor=2,
max_retry_period=15)
cloudstorage.set_default_retry_params(my_default_retry_params)
Si vous souhaitez uniquement modifier les paramètres par défaut d'un appel de fonction spécifique, créez un objet RetryParams
et fournissez-le directement à la fonction dans son paramètre retry_params
, comme suit :
write_retry_params = cloudstorage.RetryParams(backoff_factor=1.1)
gcs_file = cloudstorage.open(filename,
'w',
content_type='text/plain',
options={'x-goog-meta-foo': 'foo',
'x-goog-meta-bar': 'bar'},
retry_params=write_retry_params)
Cela n'a aucun effet sur les paramètres par défaut utilisés par l'application ou par d'autres appels de fonctions.
Propriétés de l'instance
Une instance RetryParams
possède les propriétés suivantes :
- initial_delay
- Nombre de secondes d'attente avant d'effectuer une nouvelle tentative. La valeur par défaut est
0.1
. Le délai permet de répartir la charge sur le serveur Google Cloud Storage.
- backoff_factor
- Multiplicateur d'intervalle exponentiel entre les tentatives. Il permet de déterminer le taux de traitement optimal. La valeur par défaut est
2.0
. Pour découvrir comment définir cette valeur et obtenir des conseils, consultez la documentation de Google Cloud Storage sur l'intervalle entre les tentatives.
- max_delay
- Nombre maximal de secondes d'attente entre les nouvelles tentatives. La valeur par défaut est
10.0
.
- min_retries
- Nombre minimal de nouvelles tentatives à effectuer. La valeur par défaut est
3
.
- max_retries
- Nombre maximal de nouvelles tentatives à effectuer. Définissez cette valeur sur 0 si vous ne souhaitez pas effectuer de nouvelles tentatives. La valeur par défaut est
6
.
- max_retry_period
- Nombre maximal de secondes pouvant être consacrées à l'ensemble des nouvelles tentatives d'une requête donnée. La valeur par défaut est
30.0
. Le système n'effectue plus de nouvelles tentatives lorsque cette période est écoulée ET que le nombre de tentatives défini par min_retries
a été effectué.
- urlfetch_timeout
- Nombre de secondes d'attente avant que le service de récupération d'URL ne renvoie une erreur d'expiration du délai lorsqu'il contacte les serveurs Google Cloud Storage. Par défaut, ce paramètre est défini sur
None
, ce qui signifie que le délai par défaut du service de récupération d'URL (qui est de cinq secondes) s'applique. Cette valeur ne peut pas dépasser 60 secondes.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[[["\u003cp\u003e\u003ccode\u003eRetryParams\u003c/code\u003e allows customization of timeout and retry settings for the App Engine client library's interactions with Cloud Storage.\u003c/p\u003e\n"],["\u003cp\u003eYou can adjust settings such as \u003ccode\u003einitial_delay\u003c/code\u003e, \u003ccode\u003ebackoff_factor\u003c/code\u003e, \u003ccode\u003emax_delay\u003c/code\u003e, \u003ccode\u003emin_retries\u003c/code\u003e, \u003ccode\u003emax_retries\u003c/code\u003e, \u003ccode\u003emax_retry_period\u003c/code\u003e, and \u003ccode\u003eurlfetch_timeout\u003c/code\u003e to control retry behavior.\u003c/p\u003e\n"],["\u003cp\u003eSettings can be changed application-wide using \u003ccode\u003ecloudstorage.set_default_retry_params()\u003c/code\u003e or for specific function calls by providing \u003ccode\u003eretry_params\u003c/code\u003e to the function directly.\u003c/p\u003e\n"],["\u003cp\u003eEach \u003ccode\u003eRetryParams\u003c/code\u003e instance is specific to a thread and request, allowing for granular control over retries without affecting other parts of the application.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eurlfetch_timeout\u003c/code\u003e setting lets users determine how many seconds to wait for UrlFetch to contact the Cloud Storage servers, defaulting to 5 seconds, but going as high as 60 seconds.\u003c/p\u003e\n"]]],[],null,["# The RetryParams Class\n\n`RetryParams` is provided by the App Engine client library for Cloud Storage contained\nin `src/cloudstorage`. This class lets you change default settings used to\nhandle timeouts and retries.\n\nIntroduction\n------------\n\nThe App Engine client library for Cloud Storage uses default settings for handling\ntimeouts and retries during attempts to contact Google Cloud Storage servers.\nThis class allows you to change those settings, either on an application-wide\nbasis, or for a specific invocation of a library\nfunction (`copy2`, `delete`, `listbucket`, `open`, `stat`). You need change only\nthe specific setting you are interested in, as all other settings are retained\nunless explicitly overwritten. Each `RetryParams` instance is unique per thread\nand per request.\n\nTo change a default setting application-wide, you create a `RetryParams`\nobject, specify whatever settings you wish to change, and supply this object to\nthe `cloudstorage.set_default_retry_params()` function as follows: \n\n my_default_retry_params = cloudstorage.RetryParams(initial_delay=0.2,\n max_delay=5.0,\n backoff_factor=2,\n max_retry_period=15)\n cloudstorage.set_default_retry_params(my_default_retry_params)\n\nTo change default settings for a specific function invocation only, create\na `RetryParams` object and supply it directly to the function in its\n`retry_params` parameter, as follows: \n\n write_retry_params = cloudstorage.RetryParams(backoff_factor=1.1)\n gcs_file = cloudstorage.open(filename,\n 'w',\n content_type='text/plain',\n options={'x-goog-meta-foo': 'foo',\n 'x-goog-meta-bar': 'bar'},\n retry_params=write_retry_params)\n\nThis has no effect on the default settings used by the app or by other\nfunction invocations.\n\nInstance properties\n-------------------\n\nA `RetryParams` instance has the following properties:\n\ninitial_delay\n: The number of seconds to delay before a retry. Default is `0.1`. Delay helps\n distribute load at the Google Cloud Storage server.\n\nbackoff_factor\n: The exponential back-off multiplier, used to determine optimal processing\n rate. Default is `2.0`. For a description and recommendations for setting this\n value, see the Google Cloud Storage documentation on [backoff](/storage/docs/exponential-backoff).\n\nmax_delay\n: The maximum number of seconds to wait between retries. Default is `10.0`.\n\nmin_retries\n: The minimum number of times to retry. Default is `3`.\n\nmax_retries\n: The maximum number of times to retry. Set this value to 0 if\n you don't want any retries. Default is `6`.\n\nmax_retry_period\n: The maximum number of seconds that can be spent on all retries of a\n given request. Default is `30.0`. Retry stops when this period passed AND\n `min_retries` has been attempted.\n\nurlfetch_timeout\n: The number of seconds to wait for UrlFetch to contact the\n Google Cloud Storage servers before returning a timeout error. By default,\n this is set to `None`, which means use the [default UrlFetch deadline](/appengine/docs/legacy/standard/python/issue-requests),\n which is five seconds. You can set this to any value up to a maximum of 60\n seconds."]]