מעבר משירותים מדור קודם בחבילה

רוב הפונקציונליות שסופקה על ידי חבילת השירותים מדור קודם מסופקת עכשיו על ידי ספריות הלקוח של Cloud. מידע נוסף זמין בחלופות המומלצות שרשומות בהמשך.

אם העברה לפתרון לא משולב היא לא אפשרות עבור הפרויקט שלכם, יכול להיות שתוכלו להמשיך להשתמש בשירותים משולבים מדור קודם באפליקציותJava 11/17,‏ כפתרון חלופי. הגישה הזו מאפשרת לכם גמישות לעבור לשירותים לא מקובצים בהמשך מחזור המיגרציה.

אחרי שתעברו משירותים בחבילה מדור קודם, תוכלו להמשיך להשתמש ב-App Engine או לעבור ל-Cloud Run. ‫Cloud Run נועד לשפר את חוויית השימוש ב-App Engine, ומשלב הרבה מהתכונות הטובות ביותר של הסביבה הרגילה ושל הסביבה הגמישה. כדי להשוות בין התכונות ולהבין איך להעביר נתונים, אפשר לעיין במדריך ההשוואה בין App Engine לבין Cloud Run.

נתיבי העברה לשירותים בחבילה של App Engine

Blobstore

כדי לאחסן ולאחזר נתונים, משתמשים ב-Cloud Storage דרך ספריות הלקוח של Cloud. כדי להתחיל, אפשר לעיין במאמר בנושא שימוש ב-Cloud Storage.

Datastore

אפשר להשתמש ב-Firestore במצב Datastore כחלופה ל-Datastore API. ‫Firestore היא הגרסה החדשה ביותר של Datastore, ואנחנו ממליצים להשתמש בספריות הלקוח של Cloud ל-Datastore.

תמונות

כדי להעביר את שירות App Engine Images, פורסים שירות טרנספורמציה של תמונות מבוסס-קונטיינר ב-Cloud Run ומנתבים אליו את הקריאות לשירות App Engine Images. כדי לארח תמונות ולהציג אותן, מאחסנים אותן בקטגוריה של Cloud Storage או מפיצים אותן באמצעות Cloud CDN. מידע נוסף זמין במאמר בנושא העברת שירות התמונות.

רישום ביומן

מומלץ לעדכן את האפליקציה כדי להשתמש ב-Cloud Logging, שתומך בתכונות כמו צפייה ביומנים בכלי Logs Explorer, הורדת יומנים, סינון הודעות לפי חומרה ומתאם בין הודעות באפליקציה לבין בקשות ספציפיות. לחלופין, אם אתם מעדיפים פשטות על פני דיוק נתונים, אתם יכולים לכתוב יומנים מובְנים אל stdout או אל stderr. מידע נוסף זמין במאמרים כתיבה של יומנים וצפייה בהם.

שליחת אימייל

כדי לשפר את אבטחת האימייל ולהבטיח מסירה אמינה של אימיילים בכמויות גדולות, מומלץ לעבור מ-Mail API מדור קודם לשירות אימייל מבוסס SMTP, כמו SendGrid,‏ Mailgun או Mailjet.

Memcache

כדי לשמור נתונים של אפליקציות במטמון, משתמשים ב-Memorystore for Redis.

מודולים

כדי לקבל מידע ולשנות את השירותים הפועלים באפליקציה, משתמשים בשילוב של משתני סביבה ו-App Engine Admin API:

פרטי השירות איך ניגשים
מזהה האפליקציה הנוכחית משתנה סביבה GAE_APPLICATION
מזהה הפרויקט הנוכחי משתנה הסביבה GOOGLE_CLOUD_PROJECT
שם השירות הנוכחי משתנה סביבה GAE_SERVICE
גרסת השירות הנוכחית משתנה סביבה GAE_VERSION
מזהה המופע הנוכחי משתנה סביבה GAE_INSTANCE
שם מארח שמוגדר כברירת מחדל שיטת Admin API‏ apps.get
רשימת השירותים שיטת ה-API‏ apps.services.list
רשימת הגרסאות של שירות שיטת Admin API‏ apps.services.versions.list
גרסת ברירת המחדל של שירות, כולל חלוקת תנועה שיטת Admin API‏ apps.services.get
רשימה של מופעים פעילים של גרסה שיטת Admin API‏ apps.services.versions.instances.list

מידע נוסף על הנתונים שזמינים לגבי שירותים שפועלים באפליקציה מופיע במאמר בנושא סביבת זמן הריצה שלJava 11/17‏,.

מרחבי שמות

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

‫Datastore תומך ישירות בשימוש במספר דיירים, אבל שירותים אחרים Google Cloudלא תומכים בכך. אם האפליקציה הרב-דיירית שלכם משתמשת בשירותים אחרים של Google Cloud, תצטרכו לנהל את הרב-דיירות באופן ידני. כדי לקבל מופעים מבודדים לחלוטין של שירותים, אתם יכולים ליצור פרויקטים חדשים באופן פרוגרמטי באמצעות Cloud Resource Manager API ולגשת למשאבים בפרויקטים שונים.

OAuth

במקום להשתמש בשירות OAuth של App Engine כדי לאמת אסימוני OAuth 2.0, צריך להשתמש בשיטה oauth2.tokeninfo של OAuth 2.0 API.

אירוח של מסד נתונים לחיפוש טקסט מלא כמו Elasticsearch ב-Compute Engine וגישה אליו מהשירות.

תור משימות

אפשר להוסיף משימות לתור להרצת קוד אסינכרוני באמצעות Cloud Tasks REST API,‏ RPC API או ספריות הלקוח ב-Cloud, ולהשתמש בשירות סטנדרטי של App Engine‏Java 11/17‏כיעד Push. מידע נוסף זמין במאמר בנושא מעבר מ-Task Queues ל-Cloud Tasks.

‫ ל-Java 11/17, אפשר לעיין בדוגמה הבאה של תוכנית שמתקשרת עם Cloud Tasks API.

במקרים רבים שבהם כדאי להשתמש בתורי משימות מסוג pull, כמו הוספת משימות או הודעות לתור שיימשכו ויעובדו על ידי עובדים נפרדים, Pub/Sub יכול להיות חלופה טובה כי הוא מציע פונקציונליות דומה ומבטיח מסירה.

אימות משתמשים

כחלופה ל-Users API, אפשר להשתמש בכל אחד ממנגנוני האימות שמבוססים על HTTP שמתוארים בדף אימות משתמשים.