Latensi adalah waktu hingga Anda menerima respons terhadap permintaan. Panduan ini memberikan urutan besaran latensi untuk permintaan Merchant API. Gunakan nilai ini untuk menetapkan waktu tunggu dan merencanakan throughput integrasi Anda.
Sebagian besar permintaan Merchant API selesai dalam waktu kurang dari satu detik. Pembaruan inventaris lokal dan regional mungkin memerlukan waktu beberapa detik, dan beberapa kueri laporan memerlukan waktu lebih lama.
Latensi umum
Tabel berikut mencantumkan perkiraan latensi berdasarkan jenis permintaan. Latensi umum adalah median: separuh permintaan selesai lebih cepat. 1%paling lambat dari permintaan memerlukan waktu selama yang ditampilkan di kolom terakhir, atau lebih lama.
| Jenis permintaan | Contoh metode | Latensi umum | 1% permintaan paling lambat |
|---|---|---|---|
| Operasi baca dan tulis produk | products.get, productInputs.insert, productInputs.patch, productInputs.delete |
100 hingga 600 milidetik | Sekitar 2 detik |
| Sebagian besar permintaan lainnya | products.list, accounts.get, dataSources.list, aggregateProductStatuses.list |
Kurang dari 1 detik | Beberapa detik |
| Penulisan inventaris lokal dan regional | localInventories.insert, regionalInventories.insert, dan metode delete yang sesuai |
Beberapa detik | 10 detik atau lebih |
| Kueri laporan | accounts.reports.search |
Sekitar setengah detik | 30 detik atau lebih |
Kueri laporan paling bervariasi. Latensinya bergantung pada tabel laporan yang Anda kueri dan jumlah data yang dicakup oleh kueri tersebut. Sekitar 1 dari 10 kueri laporan biasanya memerlukan waktu lebih dari 2 detik, dan sebagian kecil dapat memerlukan waktu lebih dari satu menit.
Rekomendasi
- Tetapkan waktu tunggu dengan headroom. Jika Anda menetapkan waktu tunggu permintaan di klien, tetapkan waktu tunggu tersebut jauh di atas latensi paling lambat yang tercantum dalam Latensi umum. Misalnya, waktu tunggu 60 detik memberikan ruang yang cukup untuk sebagian besar permintaan, tetapi tidak untuk semua kueri laporan.
- Kirim permintaan independen secara paralel. Karena setiap penulisan inventaris memerlukan waktu beberapa detik, mengirimkannya satu per satu akan membatasi throughput Anda. Kirim permintaan independen secara paralel atau gunakan permintaan batch. Saat mengirim beberapa permintaan, perhatikan batas per menit dan batas harian Anda. Untuk mengetahui informasi selengkapnya, lihat Kuota kapasitas.
- Batasi kueri laporan ke data yang Anda perlukan. Kueri yang mencakup set data besar, seperti rentang tanggal yang panjang, memerlukan waktu lebih lama dan mungkin akan mengalami waktu tunggu habis. Jika Anda memerlukan data dalam jumlah besar, pertimbangkan untuk menggunakan BigQuery. Untuk mengetahui informasi selengkapnya, lihat Memuat data Google Merchant Center ke BigQuery.
- Coba lagi dengan backoff eksponensial. Jika waktu permintaan habis atau gagal karena error sementara, coba lagi dengan backoff eksponensial.
Waktu pemrosesan
Untuk permintaan yang mengubah data, respons yang berhasil berarti Merchant API menerima perubahan, tetapi pemrosesan berlanjut setelah respons. Waktu pemrosesan adalah waktu dari respons hingga perubahan terlihat di resource lain. Waktu pemrosesan bukan bagian dari latensi, dan bisa jauh lebih lama. Misalnya, perlu waktu beberapa menit hingga produk yang diproses mencerminkan input produk yang dimasukkan.
Untuk mengetahui informasi selengkapnya tentang status akhir data yang diproses, lihat panduan berikut: