ניהול משימות cron

יעד Pub/Sub

אם בוחרים את סוג היעד Pub/Sub:

  1. מציינים את שם הנושא שבו העבודה תפורסם. זהו נושא ב-Pub/Sub שכבר הגדרתם בפרויקט.

  2. מציינים את ההודעה שתישלח לנושא. הערך הזה נשלח כפרמטר data בהודעת Pub/Sub. דוגמה לכך מופיעה במדריך למתחילים.

  3. מוסיפים את מאפייני ההודעה שרוצים.

  4. מגדירים הגדרות נוספות באמצעות הקטע Configure optional settings.

‫Cloud Scheduler יפרסם הודעות בנושא הזה כחשבון שירות של Google APIs.

יעד HTTP ב-App Engine

אם בוחרים בסוג היעד App Engine HTTP, צריך להשתמש באפליקציית App Engine ובאזור שמשויך לפרויקט הנוכחי. אם רוצים להשתמש באפליקציית App Engine אחרת מחוץ לפרויקט הנוכחי, צריך לבחור באפשרות HTTP כיעד, ולא באפשרות App Engine HTTP. כללי חומת האש של היעד צריכים לאפשר בקשות מטווח כתובות ה-IP‏ 0.1.0.2/32.

מגדירים את הטופס באופן הבא:

  1. ברשימה Target type, בוחרים באפשרות App Engine HTTP.

  2. מציינים את השם של שירות App Engine שמריץ את ה-handler של משימת Cloud Scheduler. אם משמיטים את הארגומנט, הפונקציה פועלת בהנחה שמדובר בשירות default. אם רוצים להגדיר את זה, אפשר למצוא את שמות השירותים במסוףGoogle Cloud .

  3. אפשר גם לציין את הגרסה. אם לא מגדירים את הערך הזה, המערכת משתמשת בגרסה שמוצגת כרגע. אפשר לראות את הגרסאות הזמינות במסוףGoogle Cloud .

  4. אפשר גם לציין את המופע. אם לא מגדירים את המדיניות, אפשר להשתמש בכל מכונה זמינה. אפשר לראות את הגרסאות הזמינות במסוףGoogle Cloud .

  5. מציינים את כתובת ה-URL היחסית של נקודת הקצה של App Engine שאליה העבודה תיצור קשר. אם משתמשים בערך ברירת המחדל /, העבודה תשתמש בערך PROJECT-ID.appspot.com, כאשר PROJECT-ID הוא מזהה הפרויקט הנוכחי.

  6. מגדירים את שיטת ה-HTTP שרוצים להשתמש בה כשהעבודה מופעלת. ערך ברירת המחדל הוא POST.

  7. מוסיפים את הכותרות שצריך לבקשה.

  8. אפשר גם לציין את נתוני הגוף שיישלחו ליעד. הנתונים האלה נשלחים בגוף הבקשה כבייטים כשבוחרים בשיטת HTTP‏ POST או PUT.

נקודות קצה של App Engine שמיועדות לטירגוט צריכות להיות באותו פרויקט, ואפשר לאבטח אותן באמצעות login: admin ברכיב handlers בקובץ app.yaml.

יעד HTTP

אם בוחרים בסוג היעד HTTP:

  1. מציינים את כתובת ה-URL המוגדרת במלואה של נקודת הקצה שאליה העבודה תתחבר.

  2. מציינים את ה-method של ה-HTTP. ערך ברירת המחדל הוא POST.

  3. אפשר גם לציין את הנתונים שיישלחו ליעד. הנתונים האלה נשלחים בגוף הבקשה כבייטים כשבוחרים בשיטת HTTP ‏POST או PUT.

  4. מוסיפים את הכותרות שרוצים.

  5. כדי ליצור משימת HTTP Target שדורשת אימות, ראו שימוש באימות עם HTTP Target.

נקודות קצה (endpoints) של HTTP שמטרגטים אותן צריכות להיות נגישות לכולם.

אפשר להשתמש ב-Cloud Scheduler כדי להגדיר יחידות עבודה מתוזמנות, שנקראות משימות cron, שנשלחות אל יעדים בלוח זמנים חוזר, שנקרא גם מרווח או תדירות המשימה.

בכל רגע נתון צריך להריץ רק מופע אחד של משימה. במקרים נדירים, יכול להיות שיישלחו בקשות לכמה מופעים של אותה משימה. לכן, המטפל בבקשות צריך להיות אידמפוטנטי, והקוד צריך לוודא שלא יהיו תופעות לוואי מזיקות אם זה יקרה.

אם משימה עדיין פועלת או ממתינה לתגובה מהיעד שלה, ריצות מתוזמנות אחרות של המשימה מדלגות עד שהריצה הנוכחית מסתיימת או עד שחלף הזמן הקצוב לתגובה. מידע נוסף זמין במאמר בנושא הפעלות עתידיות של משימות לא מתחילות.