בדיקה ופריסה של האפליקציה המשודרגת ב-Python 3

מזהה אזור

REGION_ID הוא קוד מקוצר ש-Google מקצה על סמך האזור שבוחרים כשיוצרים את האפליקציה. הקוד לא תואם למדינה או למחוז, למרות שחלק ממזהי האזורים עשויים להיראות דומים לקודים נפוצים של מדינות ומחוזות. באפליקציות שנוצרו אחרי פברואר 2020, המחרוזת REGION_ID.r כלולה בכתובות ה-URL של App Engine. באפליקציות קיימות שנוצרו לפני התאריך הזה, מזהה האזור הוא אופציונלי בכתובת ה-URL.

מידע נוסף על מזהי אזורים

אחרי שמשדרגים את האפליקציה כך שתהיה תואמת ל-Python 2 ול-Python 3:

  1. בדיקת האפליקציה בסביבת Python 3 מקומית.

  2. פריסה ובדיקה ב-App Engine בלי להעביר תנועה לאפליקציה.

  3. העברת התנועה לאפליקציה.

יכול להיות שתצטרכו להשקיע זמן רב בתיקון בעיות תאימות שלא נראות עד שמריצים את האפליקציה המשודרגת בסביבת Python 3.

כדי להימנע משימוש בנתוני ייצור ובמכסת שימוש במהלך הבדיקות, אפשר להשתמש באמולטורים הבאים: Google Cloud

שירותים אחרים Google Cloud כמו Cloud Storage ו-Memorystore לא מספקים אמולטורים.

בדיקה מקומית

כדי לבדוק את הפונקציונליות של האפליקציה לפני הפריסה, פועלים לפי ההוראות להרצה מקומית בסביבת זמן הריצה של Python 3.

בדיקה ב-App Engine לפני העברת תנועה

לפני ניתוב התנועה לאפליקציית Python המשודרגת, צריך לפרוס את האפליקציה בסביבת זמן הריצה של Python 3 ב-App Engine כדי לבצע עוד סבב בדיקות. לדוגמה, כדי לבדוק את השירות default של האפליקציה:

  1. חשוב לוודא שעדכנתם את קובצי ההגדרות של האפליקציה כדי שתהיה תאימות לזמן הריצה של Python 3.

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

  2. פורסים את הגרסה החדשה, אבל מונעים את הניתוב האוטומטי של התנועה לגרסה החדשה:

    gcloud app deploy --no-promote

  3. כדי לגשת לגרסה החדשה, עוברים לכתובת ה-URL הבאה:

    https://VERSION_ID-dot-default-dot-PROJECT_ID.REGION_ID.r.appspot.com

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

בקשות שנשלחות אל https://PROJECT_ID.REGION_ID.r.appspot.com מופנות לגרסה שהוגדרה קודם לקבלת תנועה.

כדי לבדוק גרסאות חדשות של שירותים אחרים, פועלים לפי אותו תהליך, אבל מחליפים את default בכתובת ה-URL בשם השירות:

https://VERSION-dot-SERVICE-dot-PROJECT_ID.REGION_ID.r.appspot.com

מידע נוסף על טירגוט שירותים וגרסאות ספציפיים זמין במאמר איך בקשות מנותבות.

העברת תנועת גולשים לאפליקציה

כשמוכנים לשלוח תנועה לגרסה החדשה:

  1. מעדכנים את משתני הסביבה בקובץ app.yaml כדי לשלוח בקשות למסדי הנתונים של הסביבה הפעילה ולשירותים אחרים במקום לאמולטורים או לנתוני בדיקה שבהם השתמשתם.

  2. כדי למנוע ניתוב אוטומטי של תנועה לגרסה החדשה אחרי הפריסה:

    gcloud app deploy --no-promote

  3. אחרי שמוודאים שהאפליקציה מקיימת אינטראקציה עם מסדי הנתונים ומאגרי הנתונים של הסביבה הפרודקטיבית, משתמשים במסוף Google Cloud כדי להעביר את התנועה:

    ניהול גרסאות

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