Trang này hướng dẫn bạn cách giải quyết các vấn đề về độ trễ với Cloud Firestore.
Độ trễ
Bảng sau đây mô tả các nguyên nhân có thể khiến độ trễ tăng lên:
| Nguyên nhân gây ra độ trễ | Các loại thao tác bị ảnh hưởng | Độ phân giải |
|---|---|---|
| Lưu lượng truy cập tăng lên và duy trì ở mức cao. | đọc, ghi |
Để tăng lưu lượng truy cập nhanh chóng, Cloud Firestore sẽ cố gắng tự động mở rộng quy mô để đáp ứng nhu cầu gia tăng. Khi Cloud Firestore mở rộng quy mô, độ trễ sẽ bắt đầu giảm. Các điểm nóng (tỷ lệ đọc, ghi và xoá cao đối với một phạm vi tài liệu hẹp) hạn chế khả năng mở rộng của Cloud Firestore. Xem xét Tránh các điểm nóng và xác định các điểm nóng trong ứng dụng của bạn. |
| Tranh chấp, có thể là do cập nhật một tài liệu quá thường xuyên hoặc do giao dịch. | đọc, ghi |
Giảm tốc độ ghi vào từng tài liệu. Giảm số lượng tài liệu được cập nhật trong một giao dịch ghi. |
| Các thao tác đọc lớn trả về nhiều tài liệu. | đọc | Sử dụng tính năng phân trang để chia các lượt đọc lớn. |
| Gần đây có quá nhiều lượt xoá. | read Điều này ảnh hưởng rất lớn đến các thao tác liệt kê các tập hợp trong cơ sở dữ liệu. |
Nếu độ trễ là do có quá nhiều lượt xoá gần đây, thì vấn đề sẽ tự động được giải quyết sau một thời gian. Nếu vấn đề không được giải quyết, hãy liên hệ với nhóm hỗ trợ. |
| Fanout chỉ mục, đặc biệt là đối với các trường mảng và trường tài liệu được nhúng. | viết | Xem xét việc lập chỉ mục các trường mảng và trường tài liệu được nhúng. |
| Hoạt động ghi lớn. | viết |
Hãy thử giảm số lượng thao tác ghi trong mỗi hoạt động. Đối với việc nhập dữ liệu hàng loạt mà bạn không yêu cầu tính nguyên tử, hãy sử dụng các thao tác ghi riêng lẻ được song song hoá. |