בדף הזה מוסבר איך להתקין ולהשתמש בשירותים בחבילה עם זמן הריצה של Go בסביבה הרגילה של App Engine. האפליקציה יכולה לגשת לשירותים בחבילה באמצעות App Engine services SDK for Go.
לפני שמתחילים
- אפשר לעיין ברשימת ממשקי API מדור קודם של שירותים בחבילה שאפשר להפעיל בסביבת זמן הריצה של Go.
- לפני שמתחילים פרויקט העברה ל-Go, כדאי לעיין בסקירה הכללית של העברת נתונים בזמן ריצה ובשיקולים להעברה כשמשתמשים בחבילות שירותים מדור קודם.
התקנה של App Engine services SDK
כדי לקרוא לממשקי ה-API של השירותים מהדור הקודם באמצעות Go, צריך להשתמש ב-SDK העדכני ביותר. איך לעשות את זה?
מעדכנים את קובץ
app.yamlכדי לציין שירות אחד או יותר מהדור הקודם. לדוגמה:app_engine_bundled_services: - datastore_v3 - memcache - userאם אתם משתמשים בתכונות כמו
login: adminבקטעhandlersשל קובץapp.yaml, אתם צריכים להפעיל את Users API על ידי הגדרת ההגדרהuserברשימהapp_engine_bundled_services.כדי להוסיף הפניה לגרסה העדכנית של ה-SDK בקובץ
go.mod, מריצים את הפקודהgo getבמסוף באופן הבא:go get google.golang.org/appengine/v2ההבדל העיקרי בשדרוג ל-Go הוא השימוש בגרסה 2 של ה-SDK של שירותי App Engine.
באפליקציה, משנים את הצהרות הייבוא על ידי הוספת
/v2/לשמות החבילות הישנים. לדוגמה, אם משתמשים ב-Memcache, צריך לבצע את הפעולות הבאות:import ( "google.golang.org/appengine/v2" "google.golang.org/appengine/v2/memcache" )מריצים את הפקודה
go mod tidyכדי לנקות את ההפניות בקובץgo.mod.go mod tidy
שיקולים לגבי מיגרציה
אם אתם עוברים אל זמן הריצה של Go והאפליקציה שלכם משתמשת בשירותים קודמים בחבילה, כדאי שתכירו את הנקודות הבאות:
- כדי לבדוק את הפונקציונליות של שירותים מאוגדים מדור קודם באפליקציית Go,
מריצים את האפליקציה בסביבה המקומית
עם כלי הפיתוח שבהם אתם משתמשים בדרך כלל, כמו
go run. - כדי לפרוס את האפליקציה, משתמשים בפקודה
gcloud app deploy.