Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Aplikasi apa pun yang berjalan di cloud atau berkomunikasi dengan layanan dan sumber daya jarak jauh harus dapat menangani kesalahan sementara. Umum bagi aplikasi ini untuk mengalami kesalahan karena hilangnya konektivitas jaringan sesaat, batas waktu permintaan saat layanan atau sumber daya sibuk, atau faktor lainnya. Pengembang harus membangun aplikasi untuk menangani kesalahan sementara secara transparan untuk meningkatkan stabilitas dan ketahanan.
Dalam artikel ini, Anda mempelajari cara menggunakan pustaka klien Azure Storage untuk JavaScript guna mengonfigurasi kebijakan coba lagi untuk aplikasi yang tersambung ke Azure Blob Storage. Kebijakan coba lagi menentukan bagaimana aplikasi menangani permintaan yang gagal, dan harus selalu disetel agar sesuai dengan persyaratan bisnis aplikasi dan sifat kegagalan.
Mengonfigurasi opsi coba lagi
Kebijakan percobaan kembali untuk Blob Storage dikonfigurasi secara terprogram, menawarkan kontrol atas bagaimana opsi coba lagi diterapkan ke berbagai permintaan dan skenario layanan. Misalnya, aplikasi web yang mengeluarkan permintaan berdasarkan interaksi pengguna mungkin menerapkan kebijakan dengan lebih sedikit percobaan ulang dan penundaan yang lebih singkat untuk meningkatkan responsivitas dan memberi tahu pengguna ketika kesalahan terjadi. Atau, aplikasi atau komponen yang menjalankan permintaan batch di latar belakang dapat meningkatkan jumlah percobaan ulang dan menggunakan strategi backoff eksponensial untuk memungkinkan waktu permintaan berhasil diselesaikan.
Tabel berikut mencantumkan parameter yang tersedia saat membuat instans StorageRetryOptions , bersama dengan jenis, deskripsi singkat, dan nilai default jika Anda tidak membuat perubahan. Anda harus proaktif dalam menyetel nilai properti ini untuk memenuhi kebutuhan aplikasi Anda.
| Properti | Tipe | Deskripsi | Nilai default |
|---|---|---|---|
maxRetryDelayInMs |
number |
Opsional. Menentukan penundaan maksimum yang diizinkan sebelum mencoba kembali operasi. | 120 detik (atau 120 * 1000 mdtk) |
maxTries |
number |
Opsional. Jumlah maksimum upaya coba lagi sebelum menyerah. | 4 |
retryDelayInMs |
number |
Opsional. Menentukan jumlah penundaan yang akan digunakan sebelum mencoba kembali operasi. | 4 detik (atau 4 * 1000 md) |
retryPolicyType |
StorageRetryPolicyType | Opsional. StorageRetryPolicyType, secara default adalah kebijakan pengulangan eksponensial. | StorageRetryPolicyType.Exponential |
secondaryHost |
string |
Opsional. Titik akhir akun penyimpanan sekunder untuk mencoba kembali permintaan. Sebelum mengatur nilai ini, Anda harus memahami masalah terkait pembacaan data yang usang dan berpotensi tidak konsisten. Untuk mempelajari lebih lanjut, lihat Gunakan geo-redundansi untuk merancang aplikasi berketersediaan tinggi. | Tidak |
tryTimeoutInMs |
number |
Opsional. Waktu maksimum yang diizinkan sebelum permintaan dibatalkan dan diasumsikan gagal. Batas waktu ini berlaku untuk permintaan operasi, dan harus didasarkan pada bandwidth yang tersedia untuk komputer host dan kedekatan dengan layanan Storage. | Nilai 0 atau tidak ditentukan tidak menghasilkan batas waktu default pada klien, dan batas waktu default sisi server digunakan. Untuk mempelajari lebih lanjut, lihat Batas Waktu untuk Operasi Blob Service. |
Dalam contoh kode berikut, kami mengonfigurasi opsi ulang coba dalam instans StorageRetryOptions, meneruskannya ke instans StoragePipelineOptions yang baru, dan meneruskan saat membuat instans pipeline.
const options = {
retryOptions: {
maxTries: 4,
retryDelayInMs: 3 * 1000,
maxRetryDelayInMs: 120 * 1000,
retryPolicyType: StorageRetryPolicyType.EXPONENTIAL
},
};
const pipeline = newPipeline(credential, options);
const blobServiceClient = new BlobServiceClient(
`https://${accountName}.blob.core.windows.net`,
credential,
pipeline
);
Dalam contoh ini, setiap permintaan layanan yang dikeluarkan dari objek BlobServiceClient menggunakan opsi coba lagi sebagaimana didefinisikan dalam retryOptions. Kebijakan ini berlaku untuk permintaan klien. Anda dapat mengonfigurasi berbagai strategi coba lagi untuk klien layanan berdasarkan kebutuhan aplikasi Anda.
Konten terkait
- Untuk panduan arsitektur dan praktik terbaik secara umum untuk kebijakan percobaan ulang, lihat Penanganan kesalahan sementara.
- Untuk panduan mengenai penerapan Pola Coba Lagi untuk kegagalan sementara, lihat Pola Coba Lagi.