יש שתי גרסאות של Cloud Functions for Firebase:
- Cloud Functions (דור שני), שפורס את הפונקציות כשירותים ב-Cloud Run, ומאפשר להפעיל אותן באמצעות Eventarc ו-Pub/Sub.
- Cloud Functions (דור ראשון), הגרסה המקורית של הפונקציות עם טריגרים מוגבלים לאירועים ואפשרויות מוגבלות להגדרה.
מומלץ לבחור באפשרות Cloud Functions (דור שני) לפונקציות חדשות, בכל מקום שאפשר. עם זאת, אנחנו מתכננים להמשיך לתמוך ב-Cloud Functions (דור ראשון).
בדף הזה מתוארות התכונות שהושקו בגרסה Cloud Functions ומוצג השוואה בין שתי גרסאות המוצר.
Cloud Functions (דור שני)
Cloud Functions הוא הדור הבא של Firebase של שירות Functions-as-a-Service. Cloud Functions (דור שני), שמבוסס על Cloud Run ועל Eventarc, מציע תשתית משופרת וכיסוי רחב יותר של אירועים ב-Cloud Functions, כולל:
- מבוסס על Cloud Run: הפונקציות מבוססות על Cloud Build ונפרסות כשירותי Cloud Run באמצעות סביבת הביצוע של Cloud Run שמוגדרת כברירת מחדל. כך תוכלו להתאים אישית את הפונקציה כמו שמתאימים אישית שירות Cloud Run. במסמכי התיעוד של Cloud Run מפורטות אפשרויות להגדרת השירות, כמו מגבלות זיכרון, משתני סביבה ועוד.
- זמני עיבוד ארוכים יותר של בקשות: הפעלת עומסי עבודה של בקשות ארוכות יותר, כמו עיבוד של זרמי נתונים גדולים מ-Cloud Storage או מ-BigQuery.
- גדלים גדולים יותר של מופעים: הפעלת עומסי עבודה גדולים יותר בזיכרון, עומסי עבודה אינטנסיביים ועומסי עבודה מקבילים.
- שיפור במקביליות: טיפול במספר בקשות מקביליות באמצעות מופע פונקציה יחיד כדי לצמצם את ההפעלה במצב התחלתי ולשפר את זמן האחזור.
- ניהול תנועה: פיצול התנועה בין גרסאות שונות של פונקציה או חזרה לגרסה קודמת של פונקציה.
- שילוב עם Eventarc: תמיכה מובנית בטריגרים של Eventarc, כך שכל 90+ מקורות האירועים שנתמכים על ידי Eventarc זמינים ב-Cloud Functions.
- תמיכה רחבה יותר ב-CloudEvents: תמיכה ב-CloudEvents בתקן התעשייה בכל סביבות זמן הריצה של השפות, כדי לספק חוויית פיתוח עקבית.
פרטים נוספים זמינים בטבלת ההשוואה.
מכיוון ש-Cloud Functions פורס פונקציות כשירותים ב-Cloud Run, Cloud Functions חולק מכסות ומגבלות של משאבים עם Cloud Run. מידע על מכסות
טבלת השוואה
תכונה | Cloud Functions (דור ראשון) | Cloud Functions |
---|---|---|
מאגר תמונות | Container Registry או Artifact Registry | רק בשעה Artifact Registry |
הזמן הקצוב לתפוגת הבקשה הסתיים | עד 9 דקות |
|
גודל המכונה | עד 8GB RAM עם 2 vCPU | עד 16GiB RAM עם 4 vCPU |
מקביליות | בקשה מקבילה אחת לכל מופע של פונקציה | עד 1,000 בקשות בו-זמנית לכל מופע של פונקציה |
תמחור
למידע על מחירים אפשר לעיין בתוכניות התמחור של Firebase.
אם אתם משתמשים ב-Cloud Functions, תוכלו לראות את העלויות שמשויכות רק ל-Cloud Functions באופן הבא:
- נכנסים אל Cloud Billing דף הדוחות במסוף Google Cloud.
- אם מופיעה בקשה, בוחרים את החשבון לחיוב שמשויך לפרויקט ב-Google Cloud.
- בחלונית Filters, בקטע Labels, מוסיפים מסנן תווית עם המפתח
goog-managed-by
והערךcloudfunctions
.
מגבלות
Cloud Functions for Firebase (דור שני) לא תומך באירועים מסוג Analytics.
למרות ש-Cloud Functions for Firebase (דור שני) תומך באירועים של חסימת אימות, הוא לא תומך באותה קבוצה של אירועי Authentication בסיסיים כמו דור ראשון.
עם זאת, מכיוון שפונקציות מדור ראשון ומדור שני יכולות להתקיים זו לצד זו באותו קובץ מקור, עדיין אפשר לפתח ולפרוס טריגרים של Analytics וטריגרים בסיסיים של Authentication בדור ראשון יחד עם פונקציות מדור שני.