בדף הזה מוסבר על תורי Push. תורי Push מפעילים משימות על ידי שליחת בקשות HTTP לשירותי Worker של App Engine. הבקשות נשלחות בקצב קבוע. אם משימה נכשלת, השירות מנסה שוב להפעיל את המשימה ושולח בקשה נוספת. אתם צריכים לספק handler לכל סוג של משימה שבה אתם משתמשים. לשירות יחיד יכולים להיות כמה handlers לסוגים שונים של משימות, או שאתם יכולים להשתמש בשירותים שונים כדי לנהל סוגים שונים של משימות.
הדדליין של המשימה
כששירות של עובד מקבל בקשה למשימת push, הוא צריך לטפל בבקשה ולשלוח תגובת HTTP לפני תאריך היעד, שתלוי בסוג ההתאמה לגודל של שירות העובד.
שירותי התאמה אוטומטית לעומס צריכים להסתיים לפני שיחלפו 10 דקות. שירותי התאמה ידנית ופשוטה של קנה המידה יכולים לפעול עד 24 שעות.
קוד תשובה של HTTP בין 200 ל-299 מציין הצלחה. כל ערך אחר מציין שהמשימה נכשלה. אם המשימה לא מגיבה לפני המועד האחרון או מחזירה ערך תשובה לא תקין, המשימה מנסה שוב.
ניסיון חוזר של משימה שנכשלה
אם בקשת מטפל במשימת Push מחזירה קוד סטטוס של HTTP מחוץ לטווח 200-299, או אם היא לא מחזירה תשובה לפני שהמועד האחרון של המשימה חלף, התור מנסה שוב את המשימה עד שהיא מצליחה. המערכת מבצעת השהיה הדרגתית כדי למנוע הצפה של האפליקציה ביותר מדי בקשות, אבל מתזמנת ניסיונות חוזרים למשימות שנכשלו לפחות פעם בשעה.
עבודה עם תורים של הודעות Push
כשעובדים עם תורים של הודעות בדחיפה, צריך לבצע לפחות את הפעולות הבאות:
- ליצור משימות באופן פרוגרמטי ולהוסיף אותן לתור דחיפה (push queue) המוגדר כברירת מחדל, או לאחד או יותר תורי דחיפה (push queue) בעלי שמות שיצרתם.
- כותבים handler שמטפל בבקשה של משימה, ומקצים את ה-handler לשירות App Engine.
אפשר גם:
- יוצרים ומבצעים התאמה אישית של כמה תורים כדי לבצע כמה משימות ביעילות.
- מעקב וניהול של תורי ההודעות בדחיפה במסוף Google Cloud .
כשמשתמשים בתורים של הודעות בדחיפה, האפליקציה כפופה למכסות נוספות.