Hạn ngạch và giới hạn

Trang này trình bày chi tiết về các giới hạn dựa trên mức sử dụng, có thể mở rộng cho Chức năng đám mây theo gói định giá Blaze trả khi bạn di chuyển. Các giới hạn này áp dụng cho các dự án Firebase triển khai các chức năng cho môi trường thời gian chạy Node.js 10.

Gói Blaze cung cấp một lượng lớn các lệnh gọi, thời gian tính toán và lưu lượng truy cập internet miễn phí. Tuy nhiên, việc triển khai chức năng phải trả phí quy mô nhỏ cho không gian lưu trữ được sử dụng cho vùng chứa của chức năng. Xem Câu hỏi thường gặp về Firebase để biết thêm thông tin.

Hạn ngạch cho Google Cloud Functions bao gồm 3 lĩnh vực:

  • Giới hạn tài nguyên

    Những điều này ảnh hưởng đến tổng lượng tài nguyên mà các chức năng của bạn có thể sử dụng.

  • Giới hạn thời gian

    Những điều này ảnh hưởng đến thời gian mọi thứ có thể chạy.

  • Giới hạn tỷ lệ

    Những điều này ảnh hưởng đến tốc độ bạn có thể gọi API chức năng đám mây và / hoặc tốc độ tài nguyên có thể được sử dụng. Bạn có thể coi hạn ngạch tỷ lệ là "tài nguyên theo thời gian".

Các loại giới hạn khác nhau được mô tả chi tiết hơn bên dưới. Sự khác biệt giữa các giới hạn cho Chức năng đám mây (thế hệ thứ nhất) và Chức năng đám mây (thế hệ thứ hai) được ghi nhận nếu có.

Giới hạn tài nguyên

Giới hạn tài nguyên ảnh hưởng đến tổng lượng tài nguyên mà các chức năng của bạn có thể sử dụng. Phạm vi khu vực là theo từng dự án và mỗi dự án duy trì các giới hạn riêng của mình.

Hạn ngạch Sự miêu tả Giới hạn (thế hệ thứ nhất) Giới hạn (thế hệ thứ 2) Có thể tăng lên Phạm vi
Số lượng chức năng Tổng số chức năng có thể được triển khai trên mỗi khu vực 1.000 1.000 trừ đi số lượng dịch vụ Cloud Run đã triển khai Không mỗi khu vực
Kích thước triển khai tối đa Kích thước tối đa của một chức năng triển khai 100MB (nén) cho các nguồn.
500MB (không nén) cho các nguồn cộng với các mô-đun.
N / A Không mỗi chức năng
Kích thước yêu cầu HTTP không nén tối đa Dữ liệu được gửi đến các Hàm HTTP trong một yêu cầu HTTP 10 MB 32 MB Không mỗi lời kêu gọi
Kích thước phản hồi HTTP không nén tối đa Dữ liệu được gửi từ các hàm HTTP trong một phản hồi HTTP 10 MB 10MB cho phản hồi phát trực tuyến.
32MB cho các phản hồi không phát trực tuyến.
Không mỗi lời kêu gọi
Kích thước sự kiện tối đa cho các chức năng hướng sự kiện Dữ liệu được gửi trong sự kiện đến các chức năng nền 10 MB 512KB cho các sự kiện Eventarc.
10MB cho các sự kiện kế thừa.
Không mỗi sự kiện
Bộ nhớ chức năng tối đa Dung lượng bộ nhớ mà mỗi phiên bản chức năng có thể sử dụng 8GiB 16GiB Không mỗi chức năng

Giới hạn thời gian

Hạn ngạch Sự miêu tả Giới hạn (thế hệ thứ nhất) Giới hạn (thế hệ thứ 2) Có thể tăng lên Phạm vi
Thời lượng chức năng tối đa Khoảng thời gian tối đa mà một hàm có thể chạy trước khi bị buộc phải chấm dứt 540 giây 60 phút cho các chức năng HTTP.
10 phút cho các chức năng theo hướng sự kiện.
Không mỗi lời kêu gọi

Giới hạn tỷ lệ

Hạn ngạch Sự miêu tả Giới hạn (thế hệ thứ nhất) Giới hạn (thế hệ thứ 2) Có thể tăng lên Phạm vi
Lệnh gọi API (ĐỌC) Gọi để mô tả hoặc liệt kê các chức năng thông qua API Chức năng đám mây 5000 mỗi 100 giây 1200 mỗi 60 giây Chỉ dành cho thế hệ thứ nhất mỗi dự án (thế hệ thứ nhất)
mỗi khu vực (thế hệ thứ 2)
Lệnh gọi API (WRITE) Gọi để triển khai hoặc xóa các chức năng thông qua API Chức năng đám mây 80 mỗi 100 giây 60 mỗi 60 giây Không 1 mỗi dự án (thế hệ thứ nhất)
mỗi khu vực (thế hệ thứ 2)
Lệnh gọi API (CALL) Lệnh gọi tới API "cuộc gọi" 16 trên 100 giây N / A Không 2 mỗi dự án

Khả năng mở rộng

Các chức năng đám mây được HTTP gọi ra nhanh chóng mở rộng quy mô nhanh chóng để xử lý lưu lượng truy cập đến, trong khi các chức năng nền mở rộng dần dần. Khả năng mở rộng quy mô của một chức năng được quyết định bởi một số yếu tố, bao gồm:

  • Khoảng thời gian cần thiết để hoàn thành việc thực thi của một chức năng (các chức năng chạy ngắn thường có thể mở rộng quy mô để xử lý nhiều yêu cầu đồng thời hơn).
  • Khoảng thời gian cần thiết để một chức năng khởi chạy khi khởi động nguội
  • Giới hạn tỷ lệ , như đã mô tả ở trên.
  • Tỷ lệ lỗi của chức năng của bạn.
  • Các yếu tố nhất thời, chẳng hạn như tải khu vực và dung lượng trung tâm dữ liệu.
Các chức năng nền có các giới hạn bổ sung, như được giải thích bên dưới. Các giới hạn này không áp dụng cho các hàm HTTP .

Hạn ngạch bổ sung cho các chức năng nền

Hạn ngạch Sự miêu tả Giới hạn Có thể tăng lên Phạm vi
Lệnh gọi đồng thời tối đa Các lệnh gọi đồng thời tối đa của một hàm duy nhất
Ví dụ: nếu xử lý mỗi sự kiện mất 100 giây, tốc độ gọi sẽ bị giới hạn trung bình là 30 mỗi giây
3.000 Không mỗi chức năng
Tỷ lệ gọi tối đa Tỷ lệ sự kiện tối đa được xử lý bởi một chức năng
Ví dụ: nếu xử lý một sự kiện mất 100 mili giây, tốc độ gọi sẽ bị giới hạn ở 1000 mỗi giây ngay cả khi trung bình chỉ có 100 yêu cầu được xử lý song song
1000 mỗi giây Không mỗi chức năng
Kích thước dữ liệu sự kiện đồng thời tối đa Tổng kích thước tối đa của các sự kiện đến cho các lệnh gọi đồng thời của một hàm duy nhất
Ví dụ: nếu các sự kiện có kích thước 1MB và quá trình xử lý chúng mất 10 giây, tốc độ trung bình sẽ là 1 sự kiện mỗi giây, vì sự kiện thứ 11 sẽ không được xử lý cho đến khi xử lý xong một trong 10 sự kiện đầu tiên
10 MB Không mỗi chức năng
Thông lượng tối đa của các sự kiện đến Thông lượng tối đa của các sự kiện đến cho một chức năng
Ví dụ: nếu các sự kiện có kích thước 1MB, thì tốc độ gọi có thể tối đa là 10 mỗi giây, ngay cả khi các hàm kết thúc trong vòng 100 mili giây
10MB mỗi giây Không mỗi chức năng

Khi bạn đạt đến giới hạn hạn ngạch

Khi một chức năng sử dụng tất cả tài nguyên được cấp phát, tài nguyên đó sẽ không khả dụng cho đến khi hạn ngạch được làm mới hoặc tăng lên. Điều này có thể có nghĩa là chức năng của bạn và tất cả các chức năng khác trong cùng một dự án sẽ không hoạt động cho đến lúc đó. Một hàm trả về mã lỗi HTTP 500 khi một trong các tài nguyên vượt quá hạn ngạch và hàm không thể thực thi.

Để tăng hạn ngạch cao hơn giá trị mặc định được liệt kê ở đây, hãy truy cập Trang hạn ngạch chức năng đám mây , chọn hạn ngạch bạn muốn sửa đổi, nhấp vào CHỈNH SỬA BÁO GIÁ , cung cấp thông tin người dùng của bạn nếu được nhắc và nhập giới hạn hạn ngạch mới cho mỗi hạn ngạch bạn đã chọn.

Giới hạn hạn ngạch cho việc triển khai Firebase CLI

Đối với mỗi chức năng mà Firebase CLI triển khai, các loại tốc độ và giới hạn thời gian sau sẽ bị ảnh hưởng:

  • Lệnh gọi API (ĐỌC) - 1 lệnh gọi cho mỗi lần triển khai, bất kể có bao nhiêu hàm
    • Giới hạn: 5000 mỗi 100 giây
  • Lệnh gọi API (WRITE) - 1 lệnh gọi cho mỗi hàm
    • Giới hạn: 80 mỗi 100 giây

Xem thêm tài liệu tham khảo Firebase CLI .