Panduan pembatasan API untuk Azure Data Manager for Agriculture
Pembatasan membatasi jumlah permintaan ke layanan dalam rentang waktu untuk mencegah penggunaan sumber daya yang berlebihan. Pembatasan REST API di Azure Data Manager for Agriculture memungkinkan performa yang lebih konsisten dalam rentang waktu bagi pelanggan yang memanggil API layanan.
Azure Data Manager for Agriculture dapat menangani permintaan dalam volume tinggi. Jika sejumlah besar permintaan terjadi dari beberapa pelanggan, pembatasan membantu menjaga performa dan keandalan yang optimal untuk semua pelanggan.
Batas pembatasan adalah kontingen pada versi yang dipilih dan kemampuan produk yang digunakan pelanggan. Azure Data Manager for Agriculture mendukung dua versi yang berbeda:
- Standar: Versi yang umumnya kami rekomendasikan.
- Dasar: Cocok untuk persyaratan prototipe.
Batas ini beroperasi dalam tiga jendela waktu (per satu menit, per lima menit, dan per satu bulan) untuk melindungi dari lonjakan lalu lintas yang tiba-tiba.
Artikel ini memperlihatkan kepada Anda cara melacak jumlah permintaan yang tersisa sebelum Mencapai batas, dan cara merespons saat Anda mencapai batas. Batas pembatasan berlaku untuk API ini.
Klasifikasi API
API Azure Data Manager for Agriculture termasuk dalam tiga kategori utama:
- Operasi tulis: API yang menggunakan metode REST API seperti
PATCH
,POST
, danDELETE
untuk mengubah data. - Operasi baca: API yang menggunakan jenis
GET
metode REST API untuk mengambil data, termasuk API pencarian dari jenisPOST
metode . - Operasi pekerjaan jangka panjang: API pekerjaan asinkron jangka panjang yang menggunakan jenis
PUT
metode REST API .
Keseluruhan unit kuota yang tersedia, seperti yang dijelaskan dalam tabel berikut, dibagikan di antara kategori ini. Misalnya, menggunakan seluruh kuota pada operasi tulis berarti tidak ada sisa kuota untuk operasi lain. Setiap operasi menggunakan satuan kuota tertentu, yang membantu Anda melacak kuota yang tersisa untuk digunakan lebih lanjut.
Operasi | Biaya unit untuk setiap permintaan |
---|---|
Write | 5 |
Read | 1 1 |
Pekerjaan jangka panjang: inferensi solusi | 5 |
Pekerjaan jangka panjang: operasi farm | 5 |
Pekerjaan jangka panjang: rasterisasi gambar | 2 |
Pekerjaan jangka panjang: penghapusan berskala entitas | 2 |
Pekerjaan jangka panjang: penyerapan cuaca | 1 |
Pekerjaan jangka panjang: penyerapan satelit | 1 |
1Biaya unit tambahan diperhitungkan untuk setiap item yang dikembalikan dalam respons saat Anda mengambil lebih dari satu item.
Batas API untuk versi Dasar
Tabel berikut ini mencantumkan total unit yang tersedia per kategori untuk versi Dasar:
Operasi | Jendela waktu pembatasan | Unit direset setelah setiap jendela waktu |
---|---|---|
Tulis/baca | Per satu menit | 25.000 |
Tulis/baca | Per lima menit | 100.000 |
Tulis/baca | Per satu bulan | 5.000.000 |
Pekerjaan jangka panjang | Per lima menit | 1000 |
Pekerjaan jangka panjang | Per satu bulan | 100.000 |
Batas API untuk versi Standar
Versi Standar menawarkan peningkatan lima kali lipat dalam kuota API per bulan, dibandingkan dengan versi Dasar. Semua batas kuota lainnya tetap tidak berubah.
Tabel berikut mencantumkan total unit yang tersedia per kategori untuk versi Standar:
Operasi | Jendela waktu pembatasan | Unit direset setelah setiap jendela waktu |
---|---|---|
Tulis/baca | Per satu menit | 25.000 |
Tulis/baca | Per lima menit | 100.000 |
Tulis/baca | Per satu bulan | 25.000.000 1 |
Pekerjaan jangka panjang | Per lima menit | 1000 |
Pekerjaan jangka panjang | Per satu bulan | 500.000 1 |
1Batas ini adalah lima kali batas versi Dasar.
Kode kesalahan
Jika mencapai batas, Anda akan menerima kode status HTTP 429 Terlalu banyak permintaan. Respons mencakup nilai Coba Lagi-Setelah , yang menentukan jumlah detik aplikasi Anda harus menunggu (atau tidur) sebelum mengirim permintaan berikutnya.
Jika Anda mengirim permintaan sebelum nilai coba lagi berlalu, permintaan Anda tidak diproses dan nilai coba lagi baru dikembalikan. Setelah waktu yang ditentukan berlalu, Anda dapat membuat permintaan lagi ke Azure Data Manager for Agriculture. Mencoba membuat koneksi TCP atau menggunakan metode autentikasi pengguna yang berbeda tidak melewati batas ini, karena khusus untuk setiap penyewa.
Tanya jawab umum
Jika saya menghabiskan kuota API yang dialokasikan sepenuhnya untuk operasi tulis dalam jangka waktu per menit, dapatkah saya berhasil membuat permintaan untuk operasi baca dalam jendela waktu yang sama?
Batas kuota dibagikan di antara kategori operasi yang tercantum. Menggunakan seluruh kuota untuk operasi tulis menyiratkan tidak ada sisa kuota untuk operasi lain. Artikel ini merinci unit kuota tertentu yang digunakan untuk setiap operasi.
Bagaimana cara menghitung jumlah total permintaan yang berhasil yang diizinkan untuk jendela waktu tertentu?
Jumlah total permintaan API yang berhasil yang diizinkan tergantung pada versi yang Anda provisikan dan jendela waktu di mana Anda membuat permintaan.
Misalnya, dengan versi Standar, Anda dapat membuat 25.000 (unit diatur ulang setelah setiap jendela waktu) / 5 (biaya unit untuk setiap permintaan) = 5.000 API operasi tulis dalam jangka waktu satu menit. Atau Anda dapat menggunakan kombinasi 4.000 operasi tulis dan 5.000 operasi baca, yang menghasilkan 4.000 * 5 + 5.000 * 1 = 25.000 total unit konsumsi.
Demikian pula, untuk versi Dasar, Anda dapat melakukan 5.000.000 (unit reset setelah setiap jendela waktu) / 1 (biaya unit untuk setiap permintaan) = 5.000.000 API operasi baca dalam jendela waktu satu bulan.
Berapa banyak peristiwa sensor yang dapat diserap pelanggan sebagai jumlah maksimum?
Sistem ini memungkinkan maksimum 100.000 penyerapan peristiwa per jam. Meskipun peristiwa baru terus diterima, mungkin ada keterlambatan dalam pemrosesan. Penundaan mungkin berarti bahwa peristiwa ini tidak segera tersedia untuk skenario keluar real time bersamaan dengan penyerapan.