Vì API Google Vault là một dịch vụ dùng chung, nên chúng tôi áp dụng hạn mức và giới hạn để đảm bảo tất cả người dùng đều sử dụng dịch vụ này một cách công bằng và để bảo vệ trạng thái tổng thể của hệ thống Google Workspace.
Hạn mức sản phẩm
Bạn không được có quá 20 yêu cầu xuất dữ liệu đang diễn ra trong tổ chức của mình.
Hạn mức yêu cầu API
Mỗi tổ chức được phép đọc 600 dữ liệu mỗi phút trên tất cả các dự án và người dùng, bao gồm cả các yêu cầu thông qua Vault API và vault.google.com.
Các bảng sau đây liệt kê giới hạn yêu cầu mỗi phút cho mỗi dự án:
Số yêu cầu đọc mỗi phút cho mỗi dự án | |
---|---|
Xuất, vấn đề và truy vấn đã lưu | 120 |
Tạm dừng | 228 |
Thao tác thực hiện lâu | 300 |
Số yêu cầu ghi mỗi phút cho mỗi dự án | |
---|---|
Xuất | 20 |
Tạm dừng | 60 |
Quyền đối với vấn đề | 30 |
Matter | 60 |
Truy vấn đã lưu | 45 |
Số yêu cầu tìm kiếm mỗi phút cho mỗi dự án | |
---|---|
Số lượt tìm kiếm | 20 |
Mức sử dụng theo phương thức
Hạn mức mà một yêu cầu sử dụng phụ thuộc vào phương thức được gọi. Bảng sau đây liệt kê mức sử dụng hạn mức theo từng phương thức:
Phương thức | Chi phí hạn mức |
---|---|
matters.close matters.create matters.delete matters.reopen matters.update matters.undelete
|
1 vấn đề đọc 1 vấn đề ghi |
matters.count |
1 lượt |
matters.get |
Đã đọc 1 vấn đề |
matters.list |
10 vấn đề |
matters.addPermissions matters.removePermissions
|
1 vấn đề đọc 1 vấn đề ghi 1 vấn đề ghi quyền |
matters.exports.create |
1 lượt đọc tệp xuất 10 lượt ghi tệp xuất |
matters.exports.delete |
1 tệp xuất |
matters.exports.get |
Đã đọc 1 tệp xuất |
matters.exports.list |
5 lượt đọc dữ liệu xuất |
matters.holds.addHeldAccounts matters.holds.create matters.holds.delete matters.holds.removeHeldAccounts matters.holds.update
|
1 yêu cầu đọc matter 1 yêu cầu ghi matter 1 yêu cầu đọc dữ liệu lưu giữ 1 yêu cầu ghi dữ liệu lưu giữ |
matters.holds.list |
1 vấn đề đã đọc 3 yêu cầu lưu giữ dữ liệu đã đọc |
matters.holds.accounts.create matters.holds.accounts.delete matters.holds.accounts.list
|
1 yêu cầu đọc matter 1 yêu cầu ghi matter 1 yêu cầu đọc dữ liệu lưu giữ 1 yêu cầu ghi dữ liệu lưu giữ |
matters.savedQueries.create matters.savedQueries.delete
|
1 lượt đọc vấn đề 1 lượt ghi vấn đề 1 lượt đọc truy vấn đã lưu 1 lượt ghi truy vấn đã lưu |
matters.savedQueries.get |
Đã đọc 1 vấn đề Đã đọc 1 truy vấn đã lưu |
matters.savedQueries.list |
1 vấn đề đã đọc 3 truy vấn đã lưu đã đọc |
operations.get |
1 thao tác đọc dữ liệu thực hiện lâu |
Giải quyết lỗi hạn mức dựa trên thời gian
Nếu vượt quá hạn mức mỗi phút hoặc hạn mức mỗi tổ chức, bạn thường nhận được phản hồi mã trạng thái HTTP 429: Too many requests
.
Đối với tất cả các lỗi dựa trên thời gian (tối đa N yêu cầu trong X phút), bạn nên để mã của mình bắt lỗi ngoại lệ và sử dụng thuật toán giảm thời gian chờ theo hàm mũ để đảm bảo thiết bị của bạn không tạo ra tải quá mức.
Thuật toán thời gian đợi luỹ thừa là một chiến lược xử lý sai số chuẩn cho các ứng dụng mạng. Thuật toán thời gian đợi luỹ thừa sẽ thử lại các yêu cầu bằng cách tăng thời gian chờ theo cấp số nhân giữa các yêu cầu, tối đa là thời gian đợi luỹ thừa. Nếu yêu cầu vẫn không thành công, thì điều quan trọng là độ trễ giữa các yêu cầu phải tăng theo thời gian cho đến khi yêu cầu thành công.
Thuật toán mẫu
Thuật toán thời gian đợi luỹ thừa sẽ thử lại các yêu cầu theo cấp số nhân, tăng thời gian chờ giữa các lần thử lại cho đến thời gian đợi tối đa. Ví dụ:
- Tạo yêu cầu đối với API Google Vault.
- Nếu yêu cầu không thành công, hãy đợi 1 +
random_number_milliseconds
rồi thử lại yêu cầu. - Nếu yêu cầu không thành công, hãy đợi 2 +
random_number_milliseconds
rồi thử lại yêu cầu. - Nếu yêu cầu không thành công, hãy đợi 4 +
random_number_milliseconds
rồi thử lại yêu cầu. - Và cứ như vậy, tối đa
maximum_backoff
lần. - Tiếp tục đợi và thử lại cho đến khi đạt đến số lần thử lại tối đa, nhưng không tăng khoảng thời gian chờ giữa các lần thử lại.
trong đó:
- Thời gian chờ là
min(((2^n)+random_number_milliseconds), maximum_backoff)
, vớin
tăng thêm 1 cho mỗi lần lặp (yêu cầu). random_number_milliseconds
là một số mili giây ngẫu nhiên nhỏ hơn hoặc bằng 1.000. Điều này giúp tránh trường hợp nhiều ứng dụng được đồng bộ hoá theo một số tình huống và tất cả đều thử lại cùng một lúc, gửi yêu cầu theo đợt đồng bộ hoá. Giá trị củarandom_number_milliseconds
được tính toán lại sau mỗi yêu cầu thử lại.maximum_backoff
thường là 32 hoặc 64 giây. Giá trị phù hợp phụ thuộc vào trường hợp sử dụng.
Ứng dụng có thể tiếp tục thử lại sau khi đạt đến thời gian maximum_backoff
.
Các lần thử lại sau thời điểm này không cần tiếp tục tăng thời gian tạm ngưng. Ví dụ: nếu một ứng dụng sử dụng thời gian maximum_backoff
là 64 giây, thì sau khi đạt đến giá trị này, ứng dụng có thể thử lại sau mỗi 64 giây. Tại một thời điểm nào đó, các ứng dụng không được phép thử lại vô thời hạn.
Thời gian chờ giữa các lần thử lại và số lần thử lại phụ thuộc vào trường hợp sử dụng và điều kiện mạng của bạn.
Yêu cầu tăng hạn mức
Tuỳ thuộc vào mức sử dụng tài nguyên của dự án, bạn có thể muốn yêu cầu điều chỉnh hạn mức. Các lệnh gọi API của một tài khoản dịch vụ được coi là đang sử dụng một tài khoản duy nhất. Việc đăng ký hạn mức điều chỉnh không đảm bảo rằng bạn sẽ được phê duyệt. Các yêu cầu điều chỉnh hạn mức làm tăng đáng kể giá trị hạn mức có thể mất nhiều thời gian hơn để được phê duyệt.
Không phải dự án nào cũng có hạn mức giống nhau. Khi bạn ngày càng sử dụng Google Cloud, các giá trị hạn mức có thể cần tăng lên. Nếu dự kiến mức sử dụng sẽ tăng đáng kể trong thời gian tới, bạn có thể chủ động yêu cầu điều chỉnh hạn mức trên trang Hạn mức trong Google Cloud Console.
Để tìm hiểu thêm, hãy xem các tài nguyên sau:
- Giới thiệu về việc điều chỉnh hạn mức
- Xem hạn mức sử dụng và giới hạn hiện tại của bạn
- Yêu cầu tăng hạn mức sử dụng
Giá
Khách hàng Google Workspace có thể sử dụng miễn phí API Google Vault.