Cloud Functions for Firebase
כבר משתמשים ב-Cloud Functions ב-Google Cloud? מידע נוסף על המקום של Firebase בתמונה הכוללת
יכולות עיקריות
שילוב של תכונות Firebase וקישור של Firebase ל-Google Cloud | הפונקציות שאתם כותבים יכולות להגיב לאירועים שנוצרים על ידי תכונות שונות של Firebase ושל Google Cloud, החל מטריגרים של Firebase Authentication ועד טריגרים של Cloud Storage. שילוב בין תכונות של Firebase באמצעות Admin SDK יחד עם Cloud Functions, ושילוב עם שירותי צד שלישי באמצעות כתיבה של וווב-הוקים משלכם. Cloud Functions מצמצם את קוד ה-boilerplate, מה שמקל על השימוש ב-Firebase וב-Google Cloud בתוך הפונקציה. |
ללא כל תחזוקה | אפשר לפרוס את קוד JavaScript, TypeScript או Python בשרתים שלנו באמצעות פקודה אחת משורת הפקודה. לאחר מכן, מערכת Firebase מגדילה באופן אוטומטי את משאבי המחשוב בהתאם לדפוסי השימוש של המשתמשים. אתם לא צריכים לדאוג לגבי פרטי כניסה, הגדרת שרתים, הקצאת שרתים חדשים או הוצאה משימוש של שרתים ישנים. |
שמירה על הפרטיות והאבטחה של הלוגיקה | במקרים רבים, מפתחים מעדיפים לשלוט בלוגיקה של האפליקציה בשרת כדי למנוע שיבוש בצד הלקוח. בנוסף, לפעמים לא רצוי לאפשר הנדסה הפוכה של הקוד. Cloud Functions מבודד לחלוטין מהלקוח, כך שאתם יכולים להיות בטוחים שהוא פרטי ותמיד עושה בדיוק את מה שאתם רוצים. |
איך זה עובד?
אחרי שכותבים ופורסים פונקציה, השרתים של Google מתחילים לנהל את הפונקציה באופן מיידי. אפשר להפעיל את הפונקציה ישירות באמצעות בקשת HTTP, Admin SDK או משימה מתוזמנת. במקרה של פונקציות ברקע, השרתים של Google מאזינים לאירועים ומריצים את הפונקציה כשהיא מופעלת.
ככל שהעומס גדל או קטן, Google מגיבה על ידי שינוי מהיר של מספר המופעים של השרת הווירטואלי שנדרשים להפעלת הפונקציה. כל פונקציה פועלת בבידוד, בסביבה משלה עם הגדרה משלה.
מחזור החיים של פונקציית רקע
- כותבים קוד לפונקציה חדשה, בוחרים ספק אירועים (למשל Cloud Firestore) ומגדירים את התנאים שבהם הפונקציה צריכה לפעול.
- כשפורסים את הפונקציה:
- ה-CLI Firebase יוצר ארכיון
.zip
של קוד הפונקציה, שמועלה לקטגוריה Cloud Storage (עם הקידומתgcf-sources
) לפני ש-Cloud Functions יוצר מאגר Artifact Registry (בשםgcf-artifacts
) בפרויקט. - Cloud Build מאחזר את קוד הפונקציה ובונה את מקור הפונקציה. אפשר לראות את היומנים של Cloud Build במסוף Google Cloud.
- קובץ האימג' של הקונטיינר של קוד הפונקציות שנוצר מועלה למאגר Artifact Registry פרטי בפרויקט (בשם
gcf-artifacts
), והפונקציה החדשה מושקת.
- ה-CLI Firebase יוצר ארכיון
- כשספק האירועים יוצר אירוע שתואם לתנאים של הפונקציה, הקוד מופעל. לפונקציה מצורף חשבון שירות שאפשר להשתמש בו כדי לגשת לשירותים אחרים של Firebase בעזרת Firebase Admin SDK.
- אם הפונקציה עסוקה בטיפול בהרבה אירועים, Google יוצרת עוד מופעים כדי לטפל בעבודה מהר יותר. אם הפונקציה לא פעילה, המערכת מנקה את המופעים.
- כשמעדכנים את הפונקציה באמצעות פריסה של קוד מעודכן, מופעים של גרסאות ישנות יותר מנוקים יחד עם ארטיפקטים של בנייה ב-Artifact Registry, ומוחלפים במופעים חדשים.
- כשמוחקים את הפונקציה, כל המופעים וארכיוני ה-ZIP נמחקים, וגם ארטיפקטים קשורים של בנייה ב-Artifact Registry. החיבור בין הפונקציה לבין ספק האירועים מוסר.
בנוסף להאזנה לאירועים באמצעות פונקציית רקע, אפשר להפעיל פונקציות ישירות באמצעות בקשת HTTP או קריאה מהלקוח. אפשר גם להפעיל פונקציות לפי לוח זמנים קבוע או להוסיף פונקציות של משימות לתור באמצעות Admin SDK.
נתיב ההטמעה
הגדר את Cloud Functions | מתקינים את Firebase CLI ומפעילים את Cloud Functions בפרויקט Firebase. | |
כתיבת פונקציות | כתיבת קוד JavaScript, קוד TypeScript או קוד Python כדי לטפל באירועים משירותי Firebase, משירותי Google Cloud או מספקי אירועים אחרים. | |
פונקציות בדיקה | אפשר להשתמש באמולטור מקומי כדי לבדוק את הפונקציות. | |
פריסה ומעקב | משדרגים את הפרויקט לתוכנית התמחור Blaze עם תשלום לפי שימוש ופורסים את הפונקציות באמצעות ממשק שורת הפקודה (CLI) של Firebase. אחר כך תוכלו להשתמש ב Google Cloudמסוף כדי לראות את היומנים ולחפש בהם. |
השלבים הבאים
- איך מתחילים להגדיר, ליצור ולפרוס פונקציות
- מידע נוסף על מה שאפשר לעשות עם פונקציות
- אפשר לנסות את ה-codelab של Cloud Functions.