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