RetryParams
disediakan oleh library klien App Engine untuk Cloud Storage yang ada di src/cloudstorage
. Class ini memungkinkan Anda mengubah setelan default yang digunakan untuk
menangani waktu tunggu dan percobaan ulang.
Pengantar
Library klien App Engine untuk Cloud Storage menggunakan setelan default untuk menangani waktu tunggu dan percobaan ulang selama upaya untuk menghubungi server Google Cloud Storage.
Class ini memungkinkan Anda mengubah setelan tersebut, baik pada seluruh aplikasi maupun untuk pemanggilan fungsi library tertentu (copy2
, delete
, listbucket
, open
, stat
). Anda hanya perlu mengubah
setelan tertentu yang Anda minati, karena semua setelan lainnya akan dipertahankan
kecuali jika ditimpa secara eksplisit. Setiap instance RetryParams
bersifat unik per thread
dan per permintaan.
Untuk mengubah setelan default di seluruh aplikasi, buat objek RetryParams
, tentukan setelan apa pun yang ingin diubah, dan berikan objek ini ke
fungsi cloudstorage.set_default_retry_params()
seperti berikut:
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)
Untuk mengubah setelan default pemanggilan fungsi tertentu saja, buat objek RetryParams
dan berikan langsung ke fungsi di parameter retry_params
-nya, seperti berikut:
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)
Hal ini tidak memengaruhi setelan default yang digunakan oleh aplikasi atau pemanggilan fungsi lainnya.
Properti instance
Instance RetryParams
memiliki properti berikut:
- initial_delay
- Jumlah detik penundaan sebelum percobaan ulang. Default-nya adalah
0.1
. Penundaan membantu mendistribusikan beban di server Google Cloud Storage. - backoff_factor
- Pengganda back-off eksponensial, yang digunakan untuk menentukan kecepatan pemrosesan
yang optimal. Default-nya adalah
2.0
. Untuk mengetahui deskripsi dan rekomendasi cara menetapkan nilai ini, lihat dokumentasi Google Cloud Storage tentang backoff. - max_delay
- Jumlah detik maksimum untuk menunggu di antara percobaan ulang. Default-nya adalah
10.0
. - min_retries
- Frekuensi minimum untuk mencoba ulang. Default-nya adalah
3
. - max_retries
- Frekuensi maksimum untuk mencoba ulang. Tetapkan nilai ini ke 0 jika
Anda tidak menginginkan percobaan ulang. Default-nya adalah
6
. - max_retry_period
- Jumlah detik maksimum yang dapat dihabiskan untuk semua percobaan ulang
permintaan tertentu. Default-nya adalah
30.0
. Percobaan ulang berhenti saat periode ini berlalu DANmin_retries
telah dicoba. - urlfetch_timeout
- Jumlah detik untuk menunggu UrlFetch menghubungi server Google Cloud Storage sebelum menampilkan error waktu tunggu habis. Secara default, atribut ini disetel ke
None
, yang berarti gunakan batas waktu UrlFetch default, yaitu lima detik. Anda dapat menetapkannya ke nilai apa pun dengan nilai maksimum 60 detik.