רוב הפונקציונליות שסופקה על ידי חבילת השירותים מדור קודם מסופקת עכשיו על ידי ספריות הלקוח של 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.
תמונות
אתם יכולים להציג תמונות מ-Cloud Storage, להציג אותן ישירות או להשתמש ברשת של צד שלישי להעברת תוכן (CDN).
כדי לשנות את הגודל של תמונות, להמיר אותן ולבצע בהן מניפולציות, אפשר להשתמש בספרייה לעיבוד תמונות כמו ImageJ2, imgscalr או thumbnailator
כדי להשתמש באחת מהספריות האלה של צד שלישי, צריך להוסיף את הספרייה כתלות ולעדכן את הקוד כדי לקרוא ל-APIs של הספרייה.
שירות התמונות של App Engine סיפק גם פונקציונליות למניעת בקשות דינמיות לאפליקציה על ידי טיפול בשינוי גודל התמונה באמצעות כתובת URL להצגת התמונה. אם אתם רוצים פונקציונליות דומה, אתם יכולים ליצור מראש את התמונות בגודל הרצוי ולהעלות אותן ל-Cloud Storage כדי להציג אותן. אפשרות אחרת היא להשתמש בשירות של רשת להעברת תוכן (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 |
| רשימת השירותים | שיטת ה-Admin 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 API בארכיטקטורת REST, RPC API או ספריות הלקוח ב-Cloud, ולהשתמש בשירות סטנדרטי של App EngineJava 11/17כיעד Push. מידע נוסף זמין במאמר בנושא מעבר מ-Task Queues ל-Cloud Tasks.
ל-Java 11/17, אפשר לעיין בדוגמה הבאה של תוכנית שמתקשרת עם Cloud Tasks API.במקרים רבים שבהם כדאי להשתמש בתורי משימות מסוג pull, כמו הוספת משימות או הודעות לתור שיימשכו ויעובדו על ידי עובדים נפרדים, Pub/Sub יכול להיות חלופה טובה כי הוא מציע פונקציונליות דומה ומבטיח מסירה.
אימות משתמשים
כחלופה ל-Users API, אפשר להשתמש בכל אחד ממנגנוני האימות שמבוססים על HTTP שמתוארים בדף אימות משתמשים.