מזהה אזור
REGION_ID הוא קוד מקוצר ש-Google מקצה על סמך האזור שבוחרים כשיוצרים את האפליקציה. הקוד לא תואם למדינה או למחוז, למרות שחלק ממזהי האזורים עשויים להיראות דומים לקודים נפוצים של מדינות ומחוזות. באפליקציות שנוצרו אחרי פברואר 2020, REGION_ID.r נכלל בכתובות URL של App Engine. באפליקציות קיימות שנוצרו לפני התאריך הזה, מזהה האזור הוא אופציונלי בכתובת ה-URL.
צריך לעדכן את שירות האינטרנט כדי להתחבר ל-Firestore ולטפל בנתונים דרך Firestore במצב Datastore (Datastore). אפשר להשתמש בספריות הלקוח של Datastore כדי לחבר את שירות האינטרנט ל-Datastore, מסד נתונים לא רלציוני (NoSQL) שמיועד להתאמה לעומס (automatic scaling), לביצועים גבוהים ולפיתוח אפליקציות בקלות.
בשלב הזה, מעדכנים את שירות האינטרנט כך שיאחסן נתונים של בקשות לדפים ב-Datastore, ואז יציג רשימה של עשר הבקשות האחרונות לדפים. המטרה כאן היא להפעיל את אחסון הנתונים בשירות האינטרנט לפני שמוסיפים את אימות ב-Firebase ומתאימים אישית את אחסון הנתונים למשתמשים מאומתים.
לפני שמתחילים
אם ביצעתם את כל השלבים הקודמים במדריך הזה, אתם יכולים לדלג על הקטע הזה. אם לא, מבצעים אחת מהפעולות הבאות:
מתחילים מהמאמר פיתוח אפליקציה ב-Python 3 ומשלימים את כל השלבים עד לשלב הזה.
אם כבר יש לכם Google Cloud פרויקט, אתם יכולים להמשיך ולהוריד עותק של שירות האינטרנט:
מורידים את מאגר האפליקציה לדוגמה באמצעות Git:
git clone https://github.com/GoogleCloudPlatform/python-docs-samplesאפשרות נוספת היא להוריד את הדוגמה כקובץ ZIP ואז לחלץ אותה.
עוברים אל הספרייה שמכילה עותק של הקבצים מהשלב הקודם:
cd python-docs-samples/appengine/standard_python3/building-an-app/building-an-app-1מפעילים את Datastore API:
gcloud services enable datastore.googleapis.com
אחסון ואחזור של ישויות Datastore
כדי לאחסן ולאחזר את זמני הבקשות באתר כרשומות ב-Datastore, צריך לבצע את הפעולות הבאות:
מוסיפים את הקוד הבא לקובץ
main.py:השיטה
store_timeשלמעלה משתמשת בספריות הלקוח של Datastore כדי ליצור ישות חדשה ב-Datastore. ישויות ב-Datastore הן אובייקטים של נתונים שמורכבים ממפתחות וממאפיינים. במקרה הזה, המפתח של הישות הוא הסוג המותאם אישית שלה,visit. לישות יש גם מאפיין אחד,timestamp, שמכיל את השעה של בקשת דף.השיטה
fetch_timesמשתמשת במפתחvisitכדי לשלוח שאילתה למסד הנתונים לגבי עשר הישויות האחרונות מסוגvisit, ואז מאחסנת את הישויות האלה ברשימה בסדר יורד.מעדכנים את השיטה
rootכדי לקרוא לשיטות החדשות:מעדכנים את הקובץ
templates/index.htmlכדי להדפיס אתtimestampשל כל ישות:מוודאים שקובץ ה-
requirements.txtכולל את כל הרכיבים התלויים הנדרשים:
מידע נוסף על ישויות, מאפיינים ומפתחות של Datastore זמין במאמר Entities, Properties, and Keys (ישויות, מאפיינים ומפתחות). מידע נוסף על שימוש בספריות לקוח של Datastore זמין במאמר ספריות לקוח של Datastore.
בדיקת שירות האינטרנט
בודקים את שירות האינטרנט על ידי הפעלתו באופן מקומי בסביבה וירטואלית:
מריצים את הפקודות הבאות בספרייה הראשית של הפרויקט כדי להתקין יחסי תלות חדשים ולהריץ את שירות האינטרנט. אם לא הגדרתם סביבה וירטואלית לבדיקה מקומית, כדאי לעיין במאמר בנושא בדיקת שירות האינטרנט.
pip install -r requirements.txt python main.pyכדי לראות את שירות האינטרנט, מזינים את הכתובת הבאה בדפדפן האינטרנט:
http://localhost:8080
אפשר לראות את הישויות שנוצרו על ידי שירות האינטרנט במסוףGoogle Cloud :
פריסת שירות האינטרנט
אחרי ש-Datastore פועל באופן מקומי, אפשר לפרוס מחדש את שירות האינטרנט ב-App Engine.
מריצים את הפקודה הבאה מתיקיית הרמה הבסיסית (root) של הפרויקט, שבה נמצא הקובץ app.yaml:
gcloud app deploy
כל התנועה מנותבת אוטומטית לגרסה החדשה שפרסתם.
מידע נוסף על ניהול גרסאות זמין במאמר ניהול שירותים וגרסאות.
צפייה בשירות
כדי להפעיל במהירות את הדפדפן ולגשת לשירות האינטרנט בכתובת https://PROJECT_ID.REGION_ID.r.appspot.com, מריצים את הפקודה הבאה:
gcloud app browse
השלבים הבאים
אחרי ש-Datastore פועל עם שירות האינטרנט שלכם, אתם מוכנים ללמוד איך להוסיף את Firebase לשירות האינטרנט.