Độ trễ là thời gian cho đến khi bạn nhận được phản hồi cho một yêu cầu. Hướng dẫn này cung cấp độ trễ theo cấp độ lớn cho các yêu cầu Merchant API. Hãy sử dụng các giá trị này để đặt thời gian chờ và lập kế hoạch cho thông lượng của quá trình tích hợp.
Hầu hết các yêu cầu Merchant API đều hoàn tất trong chưa đầy một giây. Quá trình cập nhật kho hàng tại địa phương và khu vực có thể mất vài giây, còn một số truy vấn báo cáo thì mất nhiều thời gian hơn.
Độ trễ thông thường
Bảng sau đây liệt kê độ trễ ước tính theo loại yêu cầu. Độ trễ thông thường là trung vị: một nửa số yêu cầu hoàn tất nhanh hơn. 1% yêu cầu chậm nhất mất nhiều thời gian như trong cột cuối cùng hoặc lâu hơn.
| Loại yêu cầu | Ví dụ về phương thức | Độ trễ thông thường | 1% yêu cầu chậm nhất |
|---|---|---|---|
| Quyền đọc và ghi sản phẩm | products.get, productInputs.insert, productInputs.patch, productInputs.delete |
100 đến 600 mili giây | Khoảng 2 giây |
| Hầu hết các yêu cầu khác | products.list, accounts.get, dataSources.list, aggregateProductStatuses.list |
Dưới 1 giây | Vài giây |
| Ghi kho hàng tại địa phương và khu vực | localInventories.insert, regionalInventories.insert và các phương thức delete tương ứng |
Vài giây | 10 giây trở lên |
| Truy vấn báo cáo | accounts.reports.search |
Khoảng nửa giây | 30 giây trở lên |
Truy vấn báo cáo có sự khác biệt lớn nhất. Độ trễ của các bảng này phụ thuộc vào bảng báo cáo mà bạn truy vấn và lượng dữ liệu mà truy vấn đó bao gồm. Khoảng 1/10 truy vấn báo cáo thường mất hơn 2 giây và một phần nhỏ có thể mất hơn một phút.
Đề xuất
- Đặt thời gian chờ có khoảng trống. Nếu bạn đặt thời gian chờ yêu cầu trong ứng dụng, hãy đặt thời gian chờ cao hơn nhiều so với độ trễ chậm nhất được liệt kê trong phần Độ trễ thông thường. Ví dụ: thời gian chờ 60 giây là đủ cho hầu hết các yêu cầu, nhưng không đủ cho tất cả các truy vấn báo cáo.
- Gửi các yêu cầu độc lập song song. Vì mỗi lần ghi khoảng không quảng cáo mất vài giây, nên việc gửi lần lượt từng yêu cầu sẽ giới hạn thông lượng của bạn. Gửi các yêu cầu độc lập song song hoặc sử dụng yêu cầu theo lô. Khi gửi nhiều yêu cầu, hãy lưu ý đến giới hạn hằng ngày và giới hạn mỗi phút. Để biết thêm thông tin, hãy xem phần Hạn mức tốc độ.
- Giới hạn truy vấn báo cáo đối với dữ liệu bạn cần. Các truy vấn bao gồm tập dữ liệu lớn, chẳng hạn như phạm vi ngày dài, sẽ mất nhiều thời gian hơn và có thể hết thời gian chờ. Nếu bạn cần lượng dữ liệu lớn, hãy cân nhắc sử dụng BigQuery. Để biết thêm thông tin, hãy xem bài viết Tải dữ liệu của Google Merchant Center vào BigQuery.
- Thử lại với thời gian đợi luỹ thừa. Nếu yêu cầu hết thời gian chờ hoặc không thành công do lỗi tạm thời, hãy thử lại bằng thuật toán thời gian đợi luỹ thừa.
Thời gian xử lý
Đối với các yêu cầu thay đổi dữ liệu, phản hồi thành công có nghĩa là Merchant API đã chấp nhận thay đổi, nhưng quá trình xử lý vẫn tiếp tục sau khi phản hồi. Thời gian xử lý là thời gian từ khi có phản hồi cho đến khi thay đổi xuất hiện trong các tài nguyên khác. Thời gian xử lý không nằm trong độ trễ và có thể lâu hơn nhiều. Ví dụ: Có thể mất vài phút để sản phẩm đã xử lý phản ánh thông tin đầu vào của sản phẩm được chèn.
Để biết thêm thông tin về trạng thái xử lý cuối cùng của dữ liệu, hãy xem các hướng dẫn sau: