מוצג המסמך של Apigee Edge.
עוברים אל
מסמכי תיעוד של Apigee X. מידע
במסמך הזה מוסבר איך להגדיר את הזמן הקצוב לתפוגה של קלט/פלט בנתבים של Apigee Edge.
הזמן הקצוב לתפוגה של קלט/פלט בנתב מייצג את הזמן שבו הנתב ממתין לקבלת תגובה ממעבד ההודעות, לאחר יצירת החיבור ושליחת הבקשה למעבד ההודעות. ערך ברירת המחדל של הזמן הקצוב לתפוגה של קלט/פלט בנתב הוא 57 שניות.
אפשר להגדיל או להקטין את הזמן הקצוב לתפוגה של קלט/פלט (I/O) בנתבים מערך ברירת המחדל של 57 שניות בהתאם לצרכים שלכם. אפשר להגדיר אותו בדרכים הבאות:
- במארח וירטואלי
- בנתב
המאפיינים הבאים קובעים את הזמן הקצוב לתפוגה של קלט/פלט בנתבים:
שם הנכס | מיקום | תיאור |
---|---|---|
proxy_read_timeout
|
מארח וירטואלי |
מציינת את משך הזמן המקסימלי שבו הנתב ימתין לקבלת תשובה מעבד ההודעות, לאחר יצירת החיבור ושליחת הבקשה מעבד הודעות. אם לא תתקבל תגובה ממעבד ההודעות במהלך פרק הזמן הקצוב הזה, פג הזמן הקצוב של הנתב. כברירת מחדל, הנכס הזה מקבל את הערך שהוגדר עבור
המאפיין אם המאפיין הזה משתנה עם ערך חדש של זמן קצוב לתפוגה אצל מארח וירטואלי ספציפי, רק שרתי ה-proxy ל-API שמשתמשים במארח הווירטואלי הספציפי יושפעו. |
conf_load_balancing_load.balancing.driver.proxy.read.timeout
|
נתב |
מציינת את משך הזמן המקסימלי שבו הנתב ימתין לקבלת תשובה מעבד ההודעות, לאחר יצירת החיבור ושליחת הבקשה מעבד הודעות. אם לא תתקבל תגובה ממעבד ההודעות במהלך פרק הזמן הקצוב הזה, פג הזמן הקצוב של הנתב. הנכס הזה משמש לכל המארחים הווירטואליים בנתב הזה. ערך ברירת המחדל של המאפיין הזה הוא 57 שניות. אפשר לשנות את המאפיין הזה כמו שמוסבר ב
מגדירים זמן קצוב לתפוגה של קלט/פלט בנתבים למטה. אפשר גם להחליף
את הערך הזה באמצעות הגדרת הנכס אפשר להגדיר את מרווח הזמן עבור הנכס הזה שאינו שניות באמצעות את הסימון הבא: ms: milliseconds s: seconds (default) m: minutes h: hours d: days w: weeks M: months (length of 30 days) y: years (length of 365 days) |
conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout
|
נתב |
מציינת את משך הזמן הכולל שהנתב ימתין לקבלת תשובה מכל ההודעות מעבדים, אחרי יצירת החיבור ושליחת הבקשה לכל הודעה מעבד. זה רלוונטי אם בהתקנת Edge יש כמה מעבדי הודעות הניסיונות החוזרים מופעלים כאשר מתרחשות שגיאות. הערך שלו הוא אחד מהערכים הבאים:
כמו |
לפני שמתחילים
לפני שתשתמשו בשלבים שבמסמך הזה, חשוב שתוודאו שאתם מבינים את הנושאים הבאים:
- אם אתם לא מכירים מאפייני מארח וירטואלי, קראו את המאמר הבא: מסמך עזר בנושא נכס מארח וירטואלי.
- אם אתם לא יודעים איך להגדיר נכסים ל-Edge בענן פרטי, אפשר לקרוא את המאמר איך מגדירים Edge.
- חשוב לפעול לפי שיטות מומלצות להגדרת המלצות על זמן קצוב לתפוגה של קלט/פלט.
הגדרת זמן קצוב לתפוגה של קלט/פלט במארח וירטואלי
הקטע הזה מסביר איך להגדיר זמן קצוב לתפוגה של קלט/פלט במארח הווירטואלי המשויך
של הארגון והסביבה. ניתן להגדיר את הזמן הקצוב לתפוגה של קלט/פלט במארח הווירטואלי באמצעות
מאפיין proxy_read_timeout
, שמייצג את ערך הזמן הקצוב לתפוגה של קלט/פלט בשניות.
אפשר להגדיר את המארח הווירטואלי באחת מהשיטות הבאות:
- ממשק המשתמש של Edge
- API של Edge
ממשק המשתמש של Edge
כדי להגדיר את המארח הווירטואלי באמצעות ממשק המשתמש של Edge, מבצעים את הפעולות הבאות:
- מתחברים ל-Edge UI.
- עוברים לקטע ניהול > מארחים וירטואליים.
- בוחרים סביבה ספציפית שבה רוצים לבצע את השינוי הזה.
- בוחרים את המארח הווירטואלי הספציפי שעבורו רוצים להגדיר את ערך של זמן קצוב לתפוגה של קלט/פלט.
- בקטע מאפיינים, מעדכנים את הערך בשניות של הערך הזמן הקצוב לתפוגה של קריאה לשרת proxy.
לדוגמה, אם רוצים לשנות את הזמן הקצוב לתפוגה ל-120 שניות, מקלידים 120 כפי שמוצג באיור הבא:
- שומרים את השינוי.
API של Edge
כדי להגדיר את המארח הווירטואלי באמצעות Edge API:
- קבלת התצורה הנוכחית של המארח הווירטואלי באמצעות
קבלת ממשק API של מארח וירטואלי כפי שמוצג בהמשך:
משתמש ב-Public Cloud
curl -v -X GET https//api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
משתמש בענן פרטי
curl -v -X GET http://<management-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
כאשר:
{organization-name} הוא שם הארגון
{environment-name} הוא שם הסביבה
{virtualhost-name} הוא השם של המארח הווירטואלי
דוגמה להגדרה של מארח וירטואלי
{ "hostAliases": [ "api.myCompany,com" ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
- הוספת הנכס
proxy_read_timeout
להגדרה הקיימת של המארח הווירטואלי מטען ייעודי (payload) של JSON מתחת ל-properties
עם הערך בשניות.לדוגמה, כדי לשנות את הזמן הקצוב לתפוגה של קלט/פלט (I/O) ל-120 שניות, מוסיפים את
properties
בלוק הקוד כפי שמוצג בהמשך:דוגמה להגדרה מעודכנת של מארח וירטואלי
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "proxy_read_timeout", "value": "120" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
- שומרים את התצורה המעודכנת של המארח הווירטואלי בקובץ. לדוגמה,
virtualhost-payload.json
- מעדכנים את ההגדרה של
virtualhost
עם השינוי באמצעות התחילית מעדכנים את ה-API של המארח הווירטואלי באופן הבא:משתמש ב-Public Cloud
curl -v -X POST Content-Type: application/json https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u <username>
משתמש בענן פרטי
curl -v -X POST Content-Type: application/json http://<management-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u <username>
כאשר:
{organization-name} הוא שם הארגון
{environment-name} הוא שם הסביבה
{virtualhost-name} הוא השם של המארח הווירטואלי
אימות הזמן הקצוב לתפוגה של קלט/פלט במארחים וירטואליים
בקטע הזה מוסבר איך לוודא שהזמן הקצוב לתפוגה של קלט/פלט השתנה בהצלחה מארח וירטואלי שמשתמש ב-Edge API.
- להפעיל את
אחזור API של מארח וירטואלי כדי לקבל את ההגדרה של
virtualhost
כמו בדוגמה הבאה:משתמש ב-Public Cloud
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
משתמש בענן פרטי
curl -v -X GET http://<management server-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
כאשר:
{organization-name} הוא שם הארגון
{environment-name} הוא שם הסביבה
{virtualhost-name} הוא השם של המארח הווירטואלי
- מוודאים שהנכס
proxy_read_timeout
הוגדר לערך החדש.דוגמה להגדרה מעודכנת של מארח וירטואלי
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "proxy_read_timeout", "value": "120" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
בדוגמה שלמעלה, שימו לב שהשדה
proxy_read_timeout
הוגדר עם הערך החדש של 120 שניות. - אם הערך הישן של
proxy_read_timeout,
עדיין מופיע, עליך לאמת ביצעתם את כל השלבים שמפורטים בהגדרת זמן קצוב לתפוגה של קלט/פלט במארח וירטואלי בצורה נכונה. אם פספסתם שלב כלשהו, יש לחזור על השלבים האלה שוב בצורה נכונה. - אם עדיין אין לכם אפשרות לשנות את הזמן הקצוב לתפוגה של קלט/פלט, צרו קשר עם התמיכה של Apigee Edge.
הגדרת זמן קצוב לתפוגה של קלט/פלט בנתבים
בקטע הזה מוסבר איך להגדיר זמן קצוב לתפוגה של קלט/פלט בנתבים. הזמן הקצוב לתפוגה של קלט/פלט יכול להיות
שהוגדרו באמצעות המאפיין 'נתב'
conf_load_balancing_load.balancing.driver.proxy.read.timeout
, שמייצג
את ערך הזמן הקצוב לתפוגה של קלט/פלט בשניות.
כדי להגדיר זמן קצוב לתפוגה של קלט/פלט בנתבים:
- במחשב הנתב, פותחים את הקובץ הבא בעורך. אם הוא עדיין לא קיים, יוצרים אותו.
/opt/apigee/customer/application/router.properties
לדוגמה, כדי לפתוח את הקובץ עם
vi
, מזינים את הפקודה הבאה:vi /opt/apigee/customer/application/router.properties
- מוסיפים לקובץ
properties
שורה בפורמט הבא, במקום הערך שלtime_in_seconds
: - שומרים את השינויים.
- יש לוודא שקובץ המאפיינים הזה נמצא בבעלות של המשתמש ב-
apigee
, כפי שמוצג בהמשך:chown apigee:apigee /opt/apigee/customer/application/router.properties
- מפעילים מחדש את הנתב כפי שמוצג בהמשך:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- אם יש לכם כמה נתבים, צריך לחזור על השלבים שלמעלה בכל הנתבים.
conf_load_balancing_load.balancing.driver.proxy.read.timeout=time_in_seconds
לדוגמה, כדי לשנות את הזמן הקצוב לתפוגה של קלט/פלט בנתב ל-120 שניות, מוסיפים את השורה הבאה:
conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
אפשר גם לשנות את הזמן הקצוב לתפוגה של קלט/פלט בדקות. לדוגמה, כדי לשנות את הזמן הקצוב לתפוגה שתי דקות, מוסיפים את השורה הבאה:
conf_load_balancing_load.balancing.driver.proxy.read.timeout=2m
אימות הזמן הקצוב לתפוגה של קלט/פלט בנתבים
בקטע הזה מוסבר איך לוודא שהזמן הקצוב לתפוגה של קלט/פלט השתנה בהצלחה נתבים.
גם אם משתמשים באסימון
conf_load_balancing_load.balancing.driver.proxy.read.timeout
כדי להגדיר את הזמן הקצוב לתפוגה של קלט/פלט
בנתב, עליך לבדוק אם הנכס proxy_read_timeout
בפועל
מוגדר עם הערך החדש.
- חיפוש הנכס
proxy_read_timeout
ב/opt/nginx/conf.d
ולבדוק אם היא הוגדרה באמצעות את הערך החדש באופן הבא:grep -ri "proxy_read_timeout" /opt/nginx/conf.d
- אם הערך החדש של הזמן הקצוב לתפוגת קלט/פלט (I/O) הוגדר בהצלחה בנתב, הפקודה שלמעלה
מציג את הערך החדש בכל קובצי התצורה של המארח הווירטואלי.
לפניכם התוצאה לדוגמה מהפקודה
grep
שלמעלה, כאשר הפונקציה הזמן הקצוב לתפוגה של קלט/פלט הוא 120 שניות:/opt/nginx/conf.d/0-default.conf:proxy_read_timeout 120; /opt/nginx/conf.d/0-edge-health.conf:proxy_read_timeout 1s;
בפלט לדוגמה שלמעלה, שימו לב שהמאפיין
proxy_read_timeout
הוגדר עם הערך החדש 120 ב-0-default.conf
, שהוא קובץ תצורה עבור המארח הווירטואלי המוגדר כברירת מחדל. הדבר מציין שהזמן הקצוב לתפוגה של קלט/פלט הוגדרה בהצלחה ל-120 שניות בנתב. - אם עדיין מופיע הערך הישן של הנכס
proxy_read_timeout
, לוודא שביצעת את כל השלבים המפורטים הגדרת זמן קצוב לתפוגה של קלט/פלט בנתבים בצורה נכונה. אם יש לכם אם פספסתם שלב כלשהו, וחזרו על כל השלבים שוב בצורה נכונה. - אם עדיין אין לכם אפשרות לשנות את הזמן הקצוב לתפוגה של קלט/פלט, צרו קשר עם התמיכה של Apigee Edge.