פרמטרים ותנאים של הגדרת תצורה מרחוק

Firebase Remote Config מאפשרת לכם לשלוט באופן דינמי בהתנהגות ובמראה של האפליקציות שלכם בלי לדרוש מהמשתמשים להוריד עדכון לאפליקציה או לפרוס מחדש את ה-Backend.

כדי להגדיר את האפליקציות, מגדירים פרמטרים (צמדים של מפתח וערך) ב-Remote Config ומשתמשים בהם באפליקציה או בקוד העורפי. אפשר גם להגדיר תנאים (כללי טירגוט) כדי להקצות ערכים מותנים שמבטלים את ערכי ברירת המחדל עבור קהלים ספציפיים, סביבות ספציפיות או קריטריונים מותאמים אישית.

‫Remote Config מארגן פרמטרים ותנאים בתבניות. בהתאם לארכיטקטורה שלכם, אתם יכולים להשתמש בתבניות של לקוח, בתבניות של שרת או בשניהם:

  • פרמטרים ותנאים בתבניות של לקוחות: הצגת הגדרות למופעים של אפליקציות לקוח בפלטפורמות Apple,‏ Android,‏ Web,‏ Flutter,‏ Unity ו-C++‎. טירגוט מופעים של אפליקציות באמצעות Google Analytics קהלים, גרסאות אפליקציות, פלטפורמה, שפת המכשיר, מדינה, אחוזונים של משתמשים ואותות מותאמים אישית בצד הלקוח.

  • פרמטרים ותנאים בתבניות בצד השרת: הצגת הגדרות לסביבות עורפיות כמו Cloud Run,‏ Cloud Functions for Firebase או שרתים מבוססי-קונטיינר באמצעות Firebase Admin SDK עבור Node.js,‏ Python,‏ Go ו-Java. הערכת פרמטרים בצד השרת עם זמן אחזור קרוב לאפס באמצעות אותות מותאמים אישית בצד השרת והשקות באחוזים אקראיים.

השוואה בין תבניות בצד הלקוח לבין תבניות בצד השרת

תבניות של לקוח ושל שרת מיועדות לארכיטקטורות שונות ותומכות בערכות SDK שונות ובכללי טירגוט שונים. הטבלה הבאה תעזור לכם להבין איזה סוג תבנית מתאים לתרחיש השימוש שלכם:

תכונה תבניות של לקוחות תבניות שרת
סביבות היעד אפליקציות לקוח (Apple, ‏ Android, ‏ Web, ‏ Flutter, ‏ Unity, ‏ C++) סביבות שרת (Cloud Run, ‏ Cloud Functions for Firebase, ‏ GKE, שירותים לקצה העורפי)
ערכות SDK נתמכות ערכות Firebase SDK ללקוח ‫Firebase Admin SDK (Node.js, ‏ Python, ‏ Go, ‏ Java)
מודל הערכה הנתונים נשלפים ונשמרים במטמון במכשירי הלקוח, והם מופעלים על ידי קוד האפליקציה נטען לזיכרון השרת; מוערך לכל בקשה עם זמן אחזור קרוב לאפס
כללי תנאים גרסת האפליקציה, מערכת ההפעלה/הפלטפורמה, שפת המכשיר, המדינה/האזור, Analytics קהלים ומאפייני משתמש, משתמש באחוזון אקראי, פתיחה ראשונה של האפליקציה, אותות מותאמים אישית של הלקוח משתמש באחוז אקראי, אותות מותאמים אישית של השרת
תרחישים נפוצים לדוגמה השקות של תכונות, מבצעים עונתיים, עיצובים של ממשק המשתמש, A/B Testing, התאמה אישית בחירת הנחיה ומודל AI, דגלי תכונות בצד השרת, הגבלת קצב בקשות (rate-limiting) בעורף המערכת, ניתוב דינמי
מדריך מפורט פרמטרים בתבניות של לקוחות פרמטרים בתבניות של שרתים

מושגי ליבה

בין אם אתם עובדים עם תבניות לקוח או עם תבניות שרת, Remote Config יש כמה מושגים בסיסיים שמשותפים לשני סוגי התבניות:

פרמטרים

פרמטרים הם צמדים של מפתח וערך שאתם מגדירים במסוף Firebase או באמצעות ממשקי Remote Config backend API.

  • מפתחות פרמטרים: מזהים של הפרמטרים שלכם. אורך המפתחות יכול להיות עד 256 תווים, הם חייבים להתחיל בקו תחתון או באות באנגלית (A-Z, a-z), והם יכולים לכלול מספרים.
  • ערכי פרמטרים: הערכים שהוקצו לפרמטרים. הערכים מאוחסנים כמחרוזות, אבל אפשר לבחור סוגי נתונים במסוף כדי לאמת את הערכים לפי פורמטים כמו String,‏ Boolean,‏ Number או JSON.
  • ערכי ברירת מחדל: ערך הבסיס שמוקצה כשלא חלים כללים של תנאים. אפשר להגדיר ערכי ברירת מחדל בתוך האפליקציה בקוד, וגם ערכי ברירת מחדל של תבניות בRemote Config backend.

תנאים, כללים וערכים מותנים

התנאים מאפשרים לכם לטרגט פלחים ספציפיים של משתמשים באפליקציה או בקשות לשרת עם ערכי פרמטרים מותאמים אישית:

  • כללים: קריטריונים בודדים שמוערכים על סמך מטא-נתונים של לקוח או הקשרים של בקשות (כמו מספר גרסה, מדינה או אות מותאם אישית).
  • תנאים: קבוצות בעלות שם של כלל אחד או יותר. כל הכללים בתנאי צריכים להחזיר את הערך true כדי שהתנאי יחזיר את הערך true.
  • ערכים מותנים: ערכים חלופיים שמוקצים לפרמטר כשערך התנאי הוא true. אם כמה תנאים מקבלים את הערך true, התנאי עם העדיפות הכי גבוהה במסוף Firebase מקבל קדימות.

קבוצות פרמטרים

כדי לארגן הגדרות עם עשרות או מאות פרמטרים, אפשר להשתמש בקבוצות של פרמטרים. קבוצות מספקות ארגון חזותי במסוף Firebase וקיבוץ לוגי ב-API בארכיטקטורת REST.

  • פרמטר יכול להשתייך רק לקבוצה אחת בכל פעם.
  • המפתחות של הפרמטרים נשארים ייחודיים באופן גלובלי בפרויקט, ללא קשר לקיבוץ.
  • הקיבוץ לא משנה את אופן ההפניה לערכי הפרמטרים בקוד של ה-SDK.

הוראות ליצירה ולניהול של קבוצות מופיעות במדריכים המפורטים לפרמטרים של לקוח או שרת.

ניהול גרסאות והחזרה לגרסה קודמת של תבניות

בכל פעם שמעדכנים ומפרסמים פרמטרים או תנאים ב-Remote Config, Firebase יוצרת ושומרת גרסה חדשה של התבנית. אפשר לראות את היסטוריית הגרסאות, להשוות בין שינויים בגרסאות שונות ולחזור לגרסה קודמת כשצריך.

מידע נוסף על ניהול גרסאות של תבניות זמין במאמר בנושא ניהול גרסאות של תבניות Remote Config.

מכסות ומגבלות

בפרויקט Firebase, Remote Config אוכף את המגבלות הבאות:

  • פרמטרים: עד 3,000 פרמטרים לכל פרויקט.
  • תנאים: עד 2,000 תנאים לכל פרויקט.
  • אורך מפתח הפרמטר: עד 256 תווים.
  • אורך המחרוזת של הערך הכולל: עד 1,000,000 תווים בכל ערכי הפרמטרים בפרויקט.

רשימה מלאה של המגבלות זמינה במאמר מכסות ומגבלות.

השלבים הבאים