Hạn mức sử dụng

Vì API Google Trang trình bày là một dịch vụ dùng chung, nên chúng tôi áp dụng các hạn mức và giới hạn để đảm bảo mọi người dùng đều sử dụng được API này và bảo vệ sức khỏe tổng thể của hệ thống Google Workspace.

Nếu vượt quá hạn mức, thường thì bạn sẽ nhận được phản hồi mã trạng thái HTTP 429: Too many requests. Nếu điều này xảy ra, bạn nên dùng thuật toán thời gian đợi luỹ thừa rồi thử lại sau. Bạn có thể đặt số lượng yêu cầu tối đa mỗi ngày dưới dạng hạn mức mỗi phút dưới đây.

Bảng sau đây trình bày chi tiết các giới hạn yêu cầu:

Hạn mức
Yêu cầu đọc
Mỗi phút trên mỗi dự án 3000
Mỗi phút/người dùng/dự án 600
Yêu cầu đọc tốn kém

(Được sử dụng cho presentations.pages.getThumbnail yêu cầu.)

Mỗi phút trên mỗi dự án 300
Mỗi phút/người dùng/dự án 60
Yêu cầu ghi
Mỗi phút trên mỗi dự án 600
Mỗi phút/người dùng/dự án 60

Giải quyết lỗi về hạn mức theo thời gian

Đố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 mỗi X X phút), mã của bạn nên phát hiện trường hợp ngoại lệ và sử dụng thời gian đợi lũy thừa bị rút ngắn để đảm bảo thiết bị không tạo ra quá nhiều lượt tải.

Thuật toán thời gian đợi lũy thừa là một chiến lược xử lý lỗi chuẩn cho các ứng dụng mạng. Thuật toán thời gian đợi luỹ thừa sẽ thử các yêu cầu bằng cách sử dụng thời gian chờ tăng theo cấp số nhân giữa các yêu cầu, cho đến thời gian đợi tối đa. Nếu yêu cầu vẫn không thành công, điều quan trọng là độ trễ giữa các yêu cầu sẽ 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ử gửi lại các yêu cầu, giúp tăng thời gian chờ giữa các lần thử lại lên thời gian đợi tối đa. Ví dụ:

  1. Gửi yêu cầu tới API Google Trang trình bày.
  2. 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.
  3. Nếu yêu cầu không thành công, hãy chờ 2 + random_number_milliseconds rồi thử yêu cầu lại.
  4. Nếu yêu cầu không thành công, hãy chờ 4 + random_number_milliseconds rồi thử lại yêu cầu.
  5. Và cứ thế tối đa maximum_backoff lần.
  6. Tiếp tục chờ và thử lại đế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.

nơi:

  • Thời gian chờ là min(((2^n)+random_number_milliseconds), maximum_backoff), với n tăng lên 1 cho mỗi lần lặp (yêu cầu).
  • random_number_milliseconds là 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 các trường hợp nhiều ứng dụng được đồng bộ hoá trong 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 các đợt đồng bộ hoá. Giá trị của random_number_milliseconds được tính toán lại sau mỗi yêu cầu thử lại.
  • maximum_backoff thường có thời lượng 32 hoặc 64 giây. Giá trị phù hợp sẽ tuỳ 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. Bạn có thể thử lại sau thời điểm này không cần tiếp tục tăng thời gian đợi. Ví dụ: nếu ứ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 số thời điểm, ứng dụng sẽ bị ngăn không cho 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à tình trạng mạng của bạn.

Giá

Bạn có thể sử dụng API Google Trang trình bày mà không mất thêm phí. Vượt quá giới hạn yêu cầu hạn ngạch không phải chịu thêm phí và tài khoản của bạn không bị lập hóa đơ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ể yêu cầu tăng 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ý định mức tăng không đảm bảo được chấp thuận. Việc tăng hạn mức lớn có thể mất nhiều thời gian hơn để được phê duyệt.

Không phải tất cả dự án đều có cùng hạn mức. Vì bạn sử dụng Google Cloud ngày càng nhiều theo thời gian, nên hạn mức của bạn 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 từ 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: