Cloud Functions cho Firebase
Các chức năng chính
| Tích hợp các tính năng của Firebase và kết nối Firebase với Google Cloud | Các hàm bạn viết có thể phản hồi các sự kiện do nhiều tính năng của Firebase và Google Cloud tạo ra, từ trình kích hoạt Firebase Authentication đến trình kích hoạt Cloud Storage. Tích hợp trên các tính năng của Firebase bằng SDK dành cho quản trị viên cùng với Cloud Functions, đồng thời tích hợp với các dịch vụ bên thứ ba bằng cách viết webhook của riêng bạn. Cloud Functions giảm thiểu mã nguyên mẫu, giúp bạn dễ dàng sử dụng Firebase và Google Cloud trong hàm của mình. |
| Không cần bảo trì | Triển khai mã JavaScript, TypeScript hoặc Python lên máy chủ của chúng tôi bằng một lệnh từ dòng lệnh. Sau đó, Firebase sẽ tự động tăng quy mô tài nguyên điện toán để phù hợp với các mẫu sử dụng của người dùng. Bạn không bao giờ phải lo lắng về thông tin đăng nhập, cấu hình máy chủ, việc cấp phép máy chủ mới hoặc ngừng hoạt động máy chủ cũ. |
| Đảm bảo tính riêng tư và bảo mật cho logic của bạn | Trong nhiều trường hợp, nhà phát triển muốn kiểm soát logic ứng dụng trên máy chủ để tránh bị can thiệp ở phía máy khách. Ngoài ra, đôi khi bạn không muốn cho phép mã đó được kỹ thuật đảo ngược. Cloud Functions được tách biệt hoàn toàn khỏi ứng dụng, vì vậy, bạn có thể chắc chắn rằng ứng dụng này là riêng tư và luôn hoạt động chính xác như bạn muốn. |
Tính năng này hoạt động như thế nào?
Sau khi bạn viết và triển khai một hàm, các máy chủ của Google sẽ bắt đầu quản lý hàm đó ngay lập tức. Bạn có thể kích hoạt hàm trực tiếp bằng một yêu cầu HTTP, Admin SDK hoặc một lệnh theo lịch biểu, hoặc trong trường hợp hàm nền, máy chủ của Google sẽ theo dõi các sự kiện và chạy hàm khi hàm được kích hoạt.
Khi tải tăng hoặc giảm, Google sẽ phản hồi bằng cách nhanh chóng mở rộng quy mô số lượng phiên bản máy chủ ảo cần thiết để chạy hàm của bạn. Mỗi hàm chạy riêng biệt trong môi trường riêng với cấu hình riêng.
Vòng đời của hàm nền
- Bạn viết mã cho một hàm mới, chọn một trình cung cấp sự kiện (chẳng hạn như Cloud Firestore) và xác định các điều kiện để hàm thực thi.
- Khi bạn triển khai hàm:
- Giao diện dòng lệnh (CLI) Firebase tạo một tệp lưu trữ
.zipcủa mã hàm, sau đó mã này được tải lên một bộ chứa Cloud Storage (có tiền tốgcf-sources) trước khi Cloud Functions tạo một kho lưu trữ Artifact Registry (có tên làgcf-artifacts) trong dự án của bạn. - Cloud Build truy xuất mã hàm và tạo nguồn hàm. Bạn có thể xem nhật ký Cloud Build trong bảng điều khiển Google Cloud.
- Hình ảnh vùng chứa cho mã hàm đã tạo được tải lên một kho lưu trữ Artifact Registry riêng tư trong dự án của bạn (có tên là
gcf-artifacts) và hàm mới của bạn sẽ được triển khai.
- Giao diện dòng lệnh (CLI) Firebase tạo một tệp lưu trữ
- Khi nhà cung cấp sự kiện tạo ra một sự kiện khớp với các điều kiện của hàm, mã sẽ được gọi. Hàm này có một tài khoản dịch vụ đính kèm có thể dùng để truy cập vào các dịch vụ khác của Firebase thông qua Firebase Admin SDK.
- Nếu hàm đang xử lý nhiều sự kiện, Google sẽ tạo thêm các phiên bản để xử lý công việc nhanh hơn. Nếu hàm ở trạng thái rảnh, các thực thể sẽ được dọn dẹp.
- Khi bạn cập nhật hàm bằng cách triển khai mã đã cập nhật, các phiên bản cho phiên bản cũ sẽ được dọn dẹp cùng với các cấu phần phần mềm trong Artifact Registry và được thay thế bằng các phiên bản mới.
- Khi bạn xoá hàm, tất cả các thực thể và tệp lưu trữ zip sẽ được dọn dẹp, cùng với các cấu phần phần mềm bản dựng có liên quan trong Artifact Registry. Mối kết nối giữa hàm và trình cung cấp sự kiện sẽ bị xoá.
Ngoài việc theo dõi các sự kiện bằng hàm nền, bạn có thể gọi trực tiếp các hàm bằng yêu cầu HTTP hoặc gọi từ ứng dụng. Bạn cũng có thể kích hoạt các hàm theo lịch cố định hoặc xếp hàng các hàm tác vụ thông qua Admin SDK.
Lộ trình triển khai
| Thiết lập Cloud Functions | Cài đặt CLI Firebase và khởi động Cloud Functions trong dự án Firebase của bạn. | |
| Viết hàm | Viết mã JavaScript, mã TypeScript hoặc mã Python để xử lý các sự kiện từ các dịch vụ Firebase, dịch vụ Google Cloud hoặc các nhà cung cấp sự kiện khác. | |
| Hàm kiểm thử | Sử dụng trình mô phỏng cục bộ để kiểm thử các hàm của bạn. | |
| Triển khai và giám sát | Nâng cấp dự án của bạn lên gói giá Blaze trả tiền theo mức dùng và triển khai các hàm bằng CLI Firebase. Sau đó, bạn có thể dùng bảng điều khiển Google Cloud để xem và tìm kiếm trong nhật ký của mình. |
Các bước tiếp theo
- Bắt đầu thiết lập, tạo và triển khai các hàm.
- Tìm hiểu thêm về những việc bạn có thể làm với hàm.
- Hãy thử lớp học lập trình Cloud Functions.