אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X. מידע
במסמך הזה מוסבר איך מגדירים את הזמן הקצוב לתפוגה של שמירת החיבור פעיל (keep alive) במעבדי ההודעות של Apigee Edge.
הזמן הקצוב לתפוגה של keep-alive ב-מעבד בקשות מאפשר לחיבור TCP יחיד לשלוח ולקבל כמה בקשות/תגובות HTTP משרת הקצה העורפי או אליו, במקום לפתוח חיבור חדש לכל זוג בקשות/תגובות.
ערך ברירת המחדל של המאפיין keep alive timeout (זמן קצוב לתפוגה של שמירת החיבור) ב-מעבד בקשות הוא 60 שניות. תקופת הזמן הקצובה הזו חלה על השרתים העורפיים שהוגדרו בתצורת נקודת היעד ובמדיניות ServiceCallout של ה-API proxy.
אפשר להגדיל או להקטין את הזמן הקצוב לתפוגה של keep-alive עבור מעבדי הודעות, בהתאם לצרכים שלכם. ערך ברירת המחדל הוא 60 שניות. אפשר להגדיר אותו בדרכים הבאות:
- בשרת ה-proxy ל-API
- בנקודת הקצה של היעד
- במדיניות בנושא
ServiceCallout
- במעבד ההודעות
המאפיינים הבאים שולטים בערך הזמן הקצוב לתפוגה של שמירת החיבור פעיל במעבדי ההודעות:
| שם הנכס | מיקום | תיאור |
|---|---|---|
keepalive.timeout.millis |
proxy ל-API:
|
זהו הזמן המקסימלי של חוסר פעילות שבמהלכו מעבד ההודעות מאפשר לחיבור TCP יחיד לשלוח ולקבל כמה בקשות/תגובות HTTP, במקום לפתוח חיבור חדש לכל זוג בקשה/תגובה. כברירת מחדל, הערך של המאפיין הזה הוא הערך שמוגדר למאפיין אם משנים את המאפיין הזה עם ערך חדש של זמן קצוב לתפוגה של שרת היעד שמשמש בנקודת הקצה של היעד או במדיניות |
HTTPClient.keepalive.timeout.millis |
מעבד בקשות |
זהו הזמן המקסימלי של חוסר פעילות שבמהלכו מעבד ההודעות מאפשר לחיבור TCP יחיד לשלוח ולקבל כמה בקשות/תגובות HTTP, במקום לפתוח חיבור חדש לכל זוג בקשה/תגובה. הנכס הזה משמש את כל שרתי ה-proxy של ה-API שפועלים במעבד ההודעות הזה. ערך ברירת המחדל של המאפיין הזה הוא אפשר לשנות את המאפיין הזה כמו שמוסבר בקטע הגדרת זמן קצוב לתפוגה של חיבור פעיל במעבדי הודעות שבהמשך, או להחליף את הערך הזה על ידי הגדרת המאפיין |
לפני שמתחילים
לפני שמשתמשים בשלבים שמתוארים במאמר הזה, חשוב להבין את הנושאים הבאים:
- אם אתם לא מכירים את המושג keep alive timeout, תוכלו לעיין בתיאור המאפיין
keepalive.timeout.millisב TargetEndpoint Transport Property Specification. - אם אתם לא יודעים איך מגדירים נכסים ל-Edge ב-Private Cloud, כדאי לקרוא את המאמר איך מגדירים את Edge.
הגדרת פסק זמן של שמירת החיבור בשרת proxy של API
אפשר להגדיר את הזמן הקצוב לתפוגה של keep-alive ב-proxy ל-API במקומות הבאים:
- נקודת קצה של היעד
- המדיניות בנושא
ServiceCallout
הגדרת פסק זמן של שמירת החיבור בנקודת הקצה של היעד של שרת Proxy של API
בקטע הזה מוסבר איך להגדיר את פרק הזמן הקצוב לתפוגה של שמירת החיבור בנקודת היעד של פרוקסי ה-API. אפשר להגדיר את הזמן הקצוב לתפוגה של שמירת החיבור באמצעות המאפיין
keepalive.timeout.millis, שמייצג את הערך של הזמן הקצוב לתפוגה של שמירת החיבור באלפיות השנייה.
- בממשק המשתמש של Edge, בוחרים את ה-proxy ל-API הספציפי שבו רוצים להגדיר את הערך החדש של הזמן הקצוב לתפוגה של Keep-Alive.
- בוחרים את נקודת הקצה הספציפית של היעד שרוצים לשנות.
-
מוסיפים את המאפיין
keepalive.timeout.millisעם ערך מתאים מתחת לרכיב<HTTPTargetConnection>בהגדרותTargetEndpoint.לדוגמה, כדי לשנות את הזמן הקצוב לתפוגה של keep alive ל-
30שניות, מוסיפים את בלוק הקוד הבא:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
המאפיין
keepalive.timeout.millisמוגדר באלפיות שנייה, ולכן הערך של30שניות הוא30000.בדוגמאות הבאות מוצגות הגדרות של זמן קצוב לתפוגה של keep-alive בהגדרות של נקודת הקצה של היעד בשרת ה-proxy של ה-API:
דוגמה להגדרת נקודת קצה לטירגוט באמצעות כתובת URL של שרת קצה עורפי
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>https://mocktarget.apigee.net/json</URL> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>דוגמה להגדרת נקודת קצה של יעד באמצעות שרת יעד
<TargetEndpoint name="default"> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </TargetEndpoint> - שומרים את השינויים שבוצעו ב-proxy ל-API.
הגדרת פסק זמן של שמירת חיבור פעיל במדיניות ServiceCallout של שרת proxy של API
בקטע הזה מוסבר איך להגדיר את הזמן הקצוב לתפוגה של keep alive במדיניות ServiceCallout של proxy ל-API. אפשר להגדיר את הזמן הקצוב לתפוגה של שמירת החיבור באמצעות המאפיין the keepalive.timeout.millis, שמייצג את הערך של הזמן הקצוב לתפוגה של שמירת החיבור באלפיות השנייה.
כדי להגדיר את הזמן הקצוב לתפוגה של שמירת החיבור במדיניות ServiceCallout באמצעות המאפיין keepalive.timeout.millis:
- בממשק המשתמש של Edge, בוחרים את ה-proxy ל-API הספציפי שבו רוצים להגדיר את ערך הזמן הקצוב לתפוגה החדש של
ServiceCalloutpolicy. - בוחרים את המדיניות הספציפית
ServiceCalloutשרוצים לשנות. - מוסיפים את המאפיין
keepalive.timeout.millisעם ערך מתאים מתחת לרכיב<HTTPTargetConnection>בהגדרותTargetEndpoint.לדוגמה, כדי לשנות את הזמן הקצוב לתפוגה של Keep-Alive ל-
30שניות, מוסיפים את בלוק הקוד הבא:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
הערך של המאפיין
keepalive.timeout.millisהוא באלפיות שנייה, ולכן הערך של30שניות הוא30000.בדוגמאות הבאות אפשר לראות איך מגדירים את הזמן הקצוב לתפוגה של הודעת keep-alive במדיניות
ServiceCalloutשל proxy ל-API:דוגמה להגדרת מדיניות ServiceCallout באמצעות כתובת URL לשרת קצה עורפי
<ServiceCallout name="Service-Callout-1"> <DisplayName>Service Callout-1</DisplayName> <HTTPTargetConnection> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> <URL>https://mocktarget.apigee.net/json</URL> </HTTPTargetConnection> </ServiceCallout>דוגמה להגדרת מדיניות ServiceCallout באמצעות שרת יעד
<ServiceCallout enabled="true" name="Service-Callout-1"> <DisplayName>Service Callout-1</DisplayName> <Response>calloutResponse</Response> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </ServiceCallout> - שומרים את השינויים שבוצעו ב-proxy ל-API.
הגדרת זמן קצוב לתפוגה של שמירת החיבור במעבדי הודעות
בקטע הזה מוסבר איך מגדירים את הזמן הקצוב לתפוגה של שמירת החיבור פעיל במעבדי ההודעות. אפשר להגדיר את הזמן הקצוב לתפוגה של keep-alive באמצעות המאפיין HTTPClient.keepalive.timeout.millis, שמייצג את הערך של הזמן הקצוב לתפוגה של keep-alive באלפיות השנייה ברכיב מעבד בקשות. מאחר שהמאפיין הזה מופיע כהערה ב-מעבד בקשות, צריך להשתמש בתחביר המיוחד conf/http.properties+HTTPClient.keepalive.timeout.millis כמו שמתואר בקטע
הגדרת טוקן שמופיע כהערה במאמר איך מגדירים את Edge.
כדי להגדיר את הזמן הקצוב לתפוגה של keep-alive במעבדי ההודעות:
- במחשב של מעבד ההודעות, פותחים את הקובץ הבא בכלי לעריכה. אם הוא לא קיים, יוצרים אותו.
/opt/apigee/customer/application/message-processor.properties
לדוגמה, כדי לפתוח את הקובץ באמצעות
vi, מזינים את הפקודה הבאה:vi /opt/apigee/customer/application/message-processor.properties
- מוסיפים שורה בפורמט הבא לקובץ המאפיינים, ומחליפים את TIME_IN_MILLISECONDS בערך:
conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
לדוגמה, כדי לשנות את הזמן הקצוב לתפוגה של שמירת החיבור במעבד ההודעות ל-
30שניות, מוסיפים את השורה הבאה:conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
- שומרים את השינויים.
- מוודאים שקובץ המאפיינים נמצא בבעלות המשתמש
apigee, כמו שמוצג בהמשך:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- מפעילים מחדש את מעבד ההודעות כמו שמוצג בהמשך:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- אם יש לכם יותר ממעבד הודעות אחד, חוזרים על השלבים שלמעלה בכל מעבדי ההודעות.
אימות של פסק זמן של שמירת חיבור פעיל במעבדי הודעות
בקטע הזה מוסבר איך לוודא ששיניתם בהצלחה את הזמן הקצוב לתפוגה של keep-alive במעבדי ההודעות.
גם אם משתמשים בתחביר המיוחד
conf/http.properties+HTTPClient.keepalive.timeout.millis כדי להגדיר את הזמן הקצוב לתפוגה של שמירת החיבור פעיל במעבד ההודעות, צריך לוודא שהמאפיין בפועל
HTTPClient.keepalive.timeout.millis הוגדר עם הערך החדש.
- במחשב של מעבד ההודעות, מחפשים את המאפיין
HTTPClient.keepalive.timeout.millisבספרייה/opt/apigee/edge-message-processor/confובודקים אם הוא הוגדר עם הערך החדש כמו שמוצג בהמשך:grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
-
אם הערך החדש של הזמן הקצוב לתפוגה של שמירת החיבור מוגדר בהצלחה ב-מעבד בקשות, הפקודה שלמעלה מציגה את הערך החדש בקובץ
http.properties.התוצאה לדוגמה מהפקודה שלמעלה אחרי שהגדרתם את הזמן הקצוב לתפוגה של keep alive ל-
30שניות היא כדלקמן:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
בדוגמה של הפלט שלמעלה, אפשר לראות שהמאפיין
HTTPClient.keepalive.timeout.millisהוגדר עם הערך החדש30000ב-http.properties. ההודעה הזו מציינת שפסק הזמן של keep alive הוגדר בהצלחה ל-30שניות במעבד ההודעות. - אם עדיין מוצג הערך הישן של המאפיין
HTTPClient.keepalive.timeout.millis, צריך לוודא שביצעתם את כל השלבים שמפורטים במאמר בנושא הגדרת זמן קצוב לתפוגה של שמירת חיבור פעיל במעבדי הודעות בצורה נכונה. אם פספסתם שלב כלשהו, צריך לחזור על כל השלבים בצורה נכונה. - אם עדיין אין אפשרות לשנות את הזמן הקצוב לתפוגה של Keep-Alive, צריך לפנות לתמיכה של Apigee Edge ב-Google Cloud.