במדריך הזה נסביר איך לכתוב שירות אינטרנט ב-Node.js כדי להפעיל אותו בסביבה הרגילה של App Engine. מידע נוסף על סביבת זמן הריצה של Node.js ועל אופן הפעולה שלה זמין במאמר סביבת זמן הריצה של Node.js.
לפני שמתחילים
נקודות עיקריות
- כדי להשתמש בתלות, צריך לפרט אותן בקובץ
package.json. מידע נוסף זמין במאמר Specifying Dependencies. - App Engine מפעיל את האפליקציה על ידי הרצת
npm start. - השרת צריך להאזין ליציאה שצוינה על ידי
process.env.PORT, משתנה סביבה שהוגדר על ידי זמן הריצה של App Engine. - כדי לפרוס את השירות ב-App Engine, צריך קובץ
app.yaml.
יצירת שרת להאזנה לבקשות HTTP
הליבה של שירות האינטרנט היא שרת ה-HTTP. קוד הדוגמה במדריך הזה משתמש ב-Express.js כדי לטפל בבקשות HTTP, אבל אתם יכולים להשתמש בכל מסגרת אינטרנט שתבחרו.
יוצרים תיקייה חדשה בשם
my-nodejs-serviceבשביל שירות Node.js.עוברים לתיקייה בטרמינל ויוצרים קובץ
package.jsonעל ידי הפעלת הפקודהnpm init.מוסיפים את Express כתלות על ידי הפעלת הפקודה:
npm install expressמוודאים שהערך Express מופיע בשדה
dependenciesבקובץpackage.json. הנה דוגמה:{ ... "dependencies": { "express": "^4.16.3" } ... }מוסיפים סקריפט
startלקובץpackage.json:"scripts": { "start": "node server.js" }יוצרים קובץ בשם
server.jsבאותה תיקייה ומוסיפים את הקוד הבא:
זהו שרת אינטרנט בסיסי מאוד – הוא מגיב לכל הבקשות של GET לנתיב הבסיס ('/') עם הטקסט 'Hello from App Engine!' שימו לב לארבע השורות האחרונות, שבהן השרת מוגדר להאזין ליציאה שצוינה על ידי process.env.PORT, שהוא משתנה סביבה שהוגדר על ידי זמן הריצה של App Engine. אם השרת לא מוגדר להאזין ליציאה הזו, הוא לא יקבל בקשות.
שימו לב: אם לא מגדירים את process.env.PORT, המערכת משתמשת ביציאה 8080 כברירת מחדל. ההגדרה הזו נחוצה לבדיקת האפליקציה באופן מקומי, כי הערך process.env.PORT לא מוגדר במהלך הפעלות מקומיות – הוא מוגדר רק כשהאפליקציה פועלת ב-App Engine. אתם יכולים להשתמש בכל יציאה שתרצו לבדיקה, אבל במדריך הזה נשתמש ביציאה 8080.
הפעלת השרת באופן מקומי
כדי להריץ את השרת באופן מקומי:
מריצים את הפקודה
npm startבטרמינל. הפעולה הזו תפעיל את קובץserver.js.מפנים את דפדפן האינטרנט לכתובת
http://localhost:8080.
יוצג דף עם הטקסט Hello from App Engine! (שלום מ-App Engine!).
יצירת קובץ app.yaml
קובץ app.yaml מציין הגדרות לסביבת זמן הריצה של שירות App Engine. השירות לא יופעל בלי הקובץ הזה.
בתיקייה
my-nodejs-service, יוצרים קובץ בשםapp.yaml.מוסיפים את התוכן הבא:
זהו קובץ תצורה מינימלי שמציין ל-App Engine את גרסת זמן הריצה של Node.js. בקובץ
app.yamlאפשר גם לציין הגדרות רשת, הגדרות קנה מידה ועוד. מידע נוסף זמין במקור המידעapp.yaml.
בשלב הזה, מבנה הקבצים צריך להיות כזה:
my-nodejs-service/
app.yaml
package.json
server.js
השלבים הבאים
אחרי שיצרתם שרת אינטרנט פשוט של Node.js שמקשיב ליציאה הנכונה וציינתם את סביבת זמן הריצה בקובץ app.yaml, אתם מוכנים לפרוס את השירות ב-App Engine.
נסו בעצמכם
אנחנו ממליצים למשתמשים חדשים ב-Google Cloud ליצור חשבון כדי שיוכלו להעריך את הביצועים של App Engine בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300 $להרצה, לבדיקה ולפריסה של עומסי העבודה.
אני רוצה לנסות את App Engine בחינם