בתהליך הגדרה של הנתב כדי לנסות שוב להתחבר למעבד הודעות

Edge for Private Cloud גרסה 4.17.05

הגדרת התגובה של הנתב כשמעבד הבקשות לא זמין במהלך בדיקת תקינות

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

כדי להגדיר איך הנתב יגיב כשמעבד הבקשות מושבת, מגדירים את המאפיין conf_load_balancing_load.balancing.driver.nginx.server.retry בנתב. המאפיין הזה מקבל קבוצת ערכים שמופרדים ברווחים, שיכולים לכלול:

  • ‫off: השבתת הניסיון החוזר, הנתב מחזיר קוד שגיאה בתגובה לבקשה.
  • http_599: (ברירת המחדל) אם הנתב מקבל תגובת HTTP 599 ממעבד הבקשות, הנתב מעביר את הבקשה למעבד הבקשות הבא.

    HTTP 599 הוא קוד תגובה מיוחד שנוצר על ידי מעבד בקשות כשהוא מושבת. מעבד הבקשות מנסה להשלים את כל הבקשות הקיימות, אבל לכל בקשה חדשה הוא מגיב עם HTTP 599 כדי לאותת לנתב לנסות שוב את הבקשה במעבד הבקשות הבא.
  • ‫error: אם קרתה שגיאה במהלך יצירת החיבור עם מעבד הבקשות, העברת בקשה אליו או קריאת כותרת התגובה ממנו, הנתב מעביר את הבקשה למעבד הבקשות הבא.
  • ‫timeout: אם מתרחש זמן קצוב לתפוגה בזמן יצירת חיבור עם מעבד הבקשות, העברת בקשה אליו או קריאת כותרת התגובה ממנו, הנתב מעביר את הבקשה למעבד הבקשות הבא.
  • ‫invalid_header: אם מעבד הבקשות החזיר תשובה ריקה או לא חוקית, הנתב מעביר את הבקשה למעבד הבקשות הבא.
  • ‫http_XXX: אם מעבד הבקשות החזיר תגובה עם קוד HTTP‏ XXX, הנתב מעביר את הבקשה למעבד הבקשות הבא.

כדי להגדיר את הנתב:

  1. עורכים את הקובץ /opt/apigee/customer/application/router.properties (אם הקובץ לא קיים, יוצרים אותו).
  2. מוסיפים את המאפיין conf_load_balancing_load.balancing.driver.nginx.server.retry, כמו שמוצג כאן:
    conf_load_balancing_load.balancing.driver.nginx.server.retry=http_599 error
  3. מוודאים שקובץ המאפיינים נמצא בבעלות המשתמש apigee:
    > chown apigee:apigee /opt/apigee/customer/application/router.properties
  4. מפעילים מחדש את הנתב:
    > ‎/opt/apigee/apigee-service/bin/apigee-service edge-router restart

הגדרת הזמן הקצוב לתפוגה של הנתב כשניגשים למעבדי בקשות כחלק מבקשת proxy ל-API

ל-Edge Router יש זמן קצוב מראש של 57 שניות כשהוא מנסה לגשת למעבד בקשות כחלק מהטיפול בבקשה דרך proxy ל-API. כשהזמן הקצוב לתפוגה מסתיים, הנתב ינסה להתחבר למעבד בקשות אחר, אם יש כזה. אחרת, תוחזר שגיאה.

אפשר להשתמש בשני מאפיינים כדי לשלוט בזמן הקצוב לתפוגה:

  • conf_load_balancing_load.balancing.driver.proxy.read.timeout מציין את זמן ההמתנה, בשניות, למעבד בקשות יחיד. ערך ברירת המחדל הוא 57 שניות.
  • conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout מציין את זמן ההמתנה הכולל לכל מעבדי הבקשות, בשניות, כשיש כמה מעבדי בקשות בהתקנה של Edge. ערך ברירת המחדל שלו הוא הערך הנוכחי של conf_load_balancing_load.balancing.driver.proxy.read.timeout, או 57 שניות.

כדי להגדיר את הנתב:

  1. עורכים את הקובץ /opt/apigee/customer/application/router.properties (אם הקובץ לא קיים, יוצרים אותו).
  2. מגדירים את המאפיינים כמו שמוצג למטה:
    conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
    conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout=240
  3. מוודאים שקובץ המאפיינים נמצא בבעלות המשתמש apigee:
    > chown apigee:apigee /opt/apigee/customer/application/router.properties
  4. מפעילים מחדש את הנתב:
    > ‎/opt/apigee/apigee-service/bin/apigee-service edge-router restart