התכונה Service Extensions מאפשרת למאזני עומסים נתמכים של אפליקציות להשתמש בתוספים או לשלוח קריאות לשירותי בק-אנד כדי להוסיף עיבוד בהתאמה אישית לנתיב העיבוד. תוספי ניתוב פועלים בנתיב עיבוד הבקשות כשמאזן העומסים מקבל כותרות של בקשות ולפני שהוא מעריך את מפת URL. בדף הזה מוסבר איך להגדיר תוספים של מסלולים.
סקירה כללית על תוספים של מאזן עומסים של אפליקציות זמינה במאמר סקירה כללית על תוספים של Cloud Load Balancing.
תוסף מסלול למאזן עומסים של אפליקציות מפנה למשאבים הבאים:
- כלל העברה לצירוף
- תוסף או שירות לקצה העורפי של callout שהקצה העורפי שלו מריץ את
ext_procgRPC API
הרחבת מסלול מקבצת שירותי הרחבה קשורים לשרשרת. אפשר להגדיר גם פלאגינים וגם יתרונות מרכזיים באותה שרשרת של תוספים. שרשרת התוספים בוחרת את התנועה שעליה יופעל התוסף באמצעות תנאי התאמה של Common Expression Language (CEL). מאזן העומסים בודק בקשה מול תנאי ההתאמה של שרשרת באופן רציף. כאשר בקשה תואמת לתנאים שהוגדרו בשרשרת, כל התוספים בשרשרת פועלים על הבקשה. רק שרשרת אחת תואמת לבקשה נתונה.
התוסף מפנה אל כלל העברה של מאזן העומסים כדי להתחבר אליו. אחרי שמגדירים את המשאב, מאזן העומסים מתחיל לשלוח בקשות תואמות לשירותי התוספים.
מידע על המגבלות שקשורות לתוספים של מאזן עומסים של אפליקציות זמין בדף מכסות ומגבלות.
הגדרה באמצעות פלאגינים
בקטע הזה יש דוגמה שמראה איך להגדיר תוסף של מסלול באמצעות פלאגין שכותב מחדש את כותרת הבקשה :host ל-service-extensions.com כשהנתיב תואם ל-/extensions. המארח הקודם והמארח החדש שהוגדר ממופים לשירותי קצה עורפי באזורים שונים, וזה מדגים את התנהגות הניתוב.
כל משאבי התוסף שמפנים לתוסף נתון צריכים להיות מאותו הסוג. בנוסף, לתוספים צריך להיות אותו סוג של איזון עומסים. אי אפשר להגדיר תוספים של Cloud Load Balancing עם תוספים שכבר נמצאים בשימוש בתוספים של Media CDN.
לפני שמתחילים
יוצרים פלאגין שמכיל את הקוד המותאם אישית.
יוצרים ומגדירים מאזן עומסים של אפליקציות שתומך בתוספים להרחבת מסלולים.
פועלים לפי ההוראות בדף הגדרת מאזן עומסים פנימי של אפליקציות בכמה אזורים עם בק-אנד של קבוצות מכונות וירטואליות לכל השלבים, חוץ מהשלבים הבאים:
- נותנים לשירות הקצה העורפי את השם
service-one. - מצביעים על
service-oneלמכונה וירטואלית (VM) באזורA. - כברירת מחדל,
gl7-gilb-url-mapמוגדר כ-service-one.
- נותנים לשירות הקצה העורפי את השם
מגדירים שירות בק-אנד נוסף,
service-twoומפנים אותו למכונה וירטואלית באזורB.מוסיפים למפת URL התאמת נתיב שמפנה אל
service-two. משתמשים בפקודהgcloud compute url-maps add-path-matcherעם ערכי הדוגמה הבאים:gcloud compute url-maps add-path-matcher gl7-gilb-url-map \ --path-matcher-name=rewrite-host \ --default-service=service-two \ --new-hosts=service-extensions.com \ --location=globalמגדירים דרך לשלוח בקשות בדיקה לשירות (לדוגמה, על ידי הפעלת curl). אם אתם משתמשים במאזן עומסים פנימי, צריך ליצור מכונת לקוח וירטואלית לבדיקה.
הגדרת תוסף לניתוב
בודקים את ההתנהגות לפני שמגדירים תוסף.
מוודאים שבקשה ללא נתיב מפורש מועברת לאזור
A:curl FORWARDING_RULE_IP
מחליפים את
FORWARDING_RULE_IPבכתובת ה-IP של כלל ההעברה. כדי למצוא את כתובת ה-IP, משתמשים בפקודהgcloud compute forwarding-rules describe.הפלט אמור להיראות כך ולהצביע על כך שהדף מוגש ממכונה וירטואלית ב-
region A:Page served from region-A-vmמוודאים שאין התאמה ל-
/extensionsבמפת ה-URL:curl FORWARDING_RULE_IP/extensions
מחליפים את
FORWARDING_RULE_IPבכתובת ה-IP של כלל ההעברה. כדי למצוא את כתובת ה-IP, משתמשים בפקודהgcloud compute forwarding-rules describe.הפלט מציין שאין התאמה ל-
/extensionsבמיפוי כתובות ה-URL. הפלט אמור להיראות כך:<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>404 Not Found</title> </head><body> ...
מגדירים את תוסף הניתוב.
המסוף
נכנסים לדף Service Extensions במסוף Google Cloud .
לוחצים על יצירת תוסף.
ייפתח אשף שידריך אתכם בשלבים הראשונים.
בוחרים באפשרות Load Balancing (איזון עומסים) עבור המוצר. לאחר מכן, לוחצים על המשך.
מופיעה רשימה של נכסים נתמכים של Application Load Balancer.
בסוג מאזן העומסים, בוחרים באפשרות 'מאזן עומסים פנימי של אפליקציות (ALB) חוצה אזורים'. לאחר מכן, לוחצים על המשך.
בקטע 'סוג התוסף', בוחרים באפשרות תוספי מסלולים ולוחצים על המשך.
כדי לפתוח את הטופס Create extension, לוחצים על Continue.
בטופס יצירת תוסף, שימו לב שהבחירות הקודמות שמופיעות בחלק העליון של הדף לא ניתנות לעריכה.
בקטע Basics (פרטים בסיסיים), מבצעים את הפעולות הבאות:
מציינים שם ייחודי לתוסף.
השם צריך להתחיל באות קטנה, להמשיך בעד 62 אותיות קטנות, מספרים או מקפים, ולא להסתיים במקף.
אופציונלי: מזינים תיאור קצר של התוסף (עד 1,024 תווים).
אופציונלי: בקטע תוויות, לוחצים על הוספת תווית. לאחר מכן, בשורה שמופיעה, מבצעים את הפעולות הבאות:
- בשדה Key, מזינים שם מפתח.
- בשדה ערך, מזינים ערך למפתח.
כדי להוסיף עוד צמדי מפתח/ערך, לוחצים על הוספת תווית. אפשר להוסיף עד 64 צמדי מפתח/ערך.
מידע נוסף על תוויות זמין במאמר יצירה ועדכון של תוויות לפרויקטים.
בקטע כללי העברה, בוחרים כלל העברה אחד או יותר כדי לשייך לתוסף – לדוגמה,
cr-ilb-forwarding-rule.אי אפשר לבחור כללי העברה שכבר משויכים לתוסף אחר, והם מופיעים כהשבתה.
בקטע Extension, כדי להוסיף תוסף לביצוע עבור בקשה תואמת:
כדי להתאים בקשות שרשרת ההרחבות מופעלת עבורן, בשדה Match condition (תנאי התאמה), מציינים ביטוי ב-Common Expression Language (CEL) – לדוגמה,
request.path.startsWith("/extensions").למידע נוסף על ביטויי CEL, אפשר ללחוץ על קבלת עזרה בנושא תחביר או לעיין במאמר העזרה בנושא שפת ההתאמה של CEL.
בשדה Programmability type (סוג התכנות), בוחרים באפשרות Plugins (פלאגינים).
בקטע Plugin, בוחרים פלאגין שנוצר באמצעות Service Extensions לאותו מוצר ולאותו סוג תוסף.
בקטע Forward attributes (העברת מאפיינים), בוחרים את מאפייני הבקשה, החיבור והמיקום שרוצים שמאזן העומסים יעביר לתוסף Wasm. אפשר להגדיר עד 16 מאפיינים לכל תוסף. מידע נוסף זמין במאמר בנושא מאפיינים נתמכים.
בקטע העברת כותרות, לוחצים על הוספת כותרת, ואז מוסיפים כותרות HTTP להעברה לתוסף (מהלקוח או מהקצה העורפי). אם לא מציינים כותרת, כל הכותרות נשלחות.
אופציונלי: אם התוסף נכשל או שהפעולה שלו נפסקה בגלל חוסר פעילות ואתם רוצים שהעיבוד של הבקשה או התשובה יימשך, בוחרים באפשרות מופעל בקטע Fail open.
כברירת מחדל, האפשרות Fail open לא מסומנת. במקרה כזה, כשיש שגיאה, עיבוד הבקשה או התשובה נפסק. אם כותרות התגובה לא נמסרו ללקוח במורד הזרם, קוד הסטטוס הכללי
500 HTTP מוחזר ללקוח. אם כותרות התגובה נמסרו, זרם ה-HTTP ללקוח מאופס.אפשרות ברירת המחדל של השארת Fail open לא מסומנת מומלצת כשנותנים עדיפות לאבטחה או ליושרה. הפעלת Fail open, במיוחד לפעולות לא קריטיות, עוזרת לתעדף את הזמינות.
אם רוצים לציין יותר מתוסף אחד או שרשראות של תוספים במקום תוסף יחיד, לוחצים על הלחצן מעבר למצב מתקדם בסוף הטופס ומציינים את התוספים והשרשראות הנדרשים. התוספים פועלים לפי הסדר שבו הם מופיעים ברשימה.
מציינים שמות ייחודיים לכל תוסף ולכל שרשור תוספים. השמות צריכים להיות בהתאם ל-RFC-1034, להכיל רק אותיות קטנות, מספרים ומקפים, והאורך המקסימלי שלהם הוא 63 תווים. בנוסף, התו הראשון חייב להיות אות והתו האחרון חייב להיות אות או מספר.
לוחצים על יצירת תוסף.
gcloud
מגדירים את הפלאגין בקובץ YAML ומשייכים אותו לכלל העברת התנועה – לדוגמה,
cr-ilb-forwarding-rule.cat >route-plugin.yaml <<EOF name: route-ext forwardingRules: - https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/forwardingRules/cr-ilb-forwarding-rule loadBalancingScheme: INTERNAL_MANAGED extensionChains: - name: "chain1" matchCondition: celExpression: 'request.path.startsWith("/extensions")' extensions: - name: 'ext1' service: projects/PROJECT_ID/locations/LOCATION/wasmPlugins/WASM_PLUGIN failOpen: false supportedEvents: - REQUEST_HEADERS forwardAttributes: - request.host - request.path EOFמחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
REGION: האזור של כלל ההעברה. הערך צריך להיות זהה לערך שצוין למיקום של הפלאגין. -
LOCATION: המיקום של הפלאגין, בתורglobalאו אזור. -
WASM_PLUGIN: המזהה או השם המלא של הפלאגין.
מידע נוסף על השדות בקובץ ה-YAML מופיע בקטע ExtensionChain במאמרי העזרה של ה-API.
בשדה
forwardAttributesאפשר לציין את מאפייני הבקשה, החיבור והמיקום שיועברו לתוסף Wasm. אפשר להגדיר עד 16 מאפיינים לכל תוסף. מידע נוסף על מאפיינים נתמכים זמין במאמר מאפיינים נתמכים.-
מייבאים את תוסף המסלול. משתמשים ב
gcloud service-extensions lb-route-extensions importפקודה עם הערכים לדוגמה הבאים.gcloud service-extensions lb-route-extensions import route-ext \ --source=route-plugin.yaml \ --location=global
אחרי שיוצרים תוסף מסלול, לוקח קצת זמן עד שהתוסף החדש מופץ בכל המיקומים. יכול להיות שהזמן יהיה שונה במיקומים שונים כי התוסף לא מועבר לכל המיקומים בו-זמנית.
כדי לוודא שתוסף המסלול פועל כמצופה, משתמשים באותה פקודה
curl:curl FORWARDING_RULE_IP/extensions
הפלט אמור להיראות כך ולהצביע על כך שהדף מוגש ממכונה וירטואלית ב-
region B:Page served from region-B-vmכדי לוודא שהתוסף פועל רק לבקשות עם קידומת הנתיב
/extension, חוזרים על הפקודהcurlבלי נתיב.curl FORWARDING_RULE_IP
הפלט אמור להיראות כך:
Page served from region-A-vm
הגדרה באמצעות נכסי יתרונות מרכזיים
בקטע הזה נסביר איך להגדיר תוסף של מסלול באמצעות הפניה ל-callout.
לפני שמתחילים
יוצרים את המשאבים הנדרשים כמו שמתואר במאמר הגדרת שירות קצה עורפי של קריאה לשירות חיצוני.
הגדרת תוסף מסלול באמצעות יתרון מרכזי
בדוגמה הבאה אפשר לראות איך מגדירים תוסף של מסלול שיחות כשהנתיב תואם ל-/extensions. השרת של קריאת ה-callout לניתוב ב-callout-vm משנה את הכותרת Host ל-service-extensions.com, מגדיר את הנתיב ל-/ ואז שולח הוראה למאזן העומסים לחשב מחדש את הנתיב. התנועה תזרום אל l7-ilb-backend-service2 במקום אל l7-ilb-backend-service.
בודקים אם יש התאמה ל-
/extensionsבמפת URL.מריצים את הפקודה הבאה
curlמול כלל ההעברה במכונת ה-VM של הלקוח:curl FORWARDING_RULE_IP/extensions
מחליפים את
FORWARDING_RULE_IPבכתובת ה-IP של כלל ההעברה. כדי למצוא את כתובת ה-IP, משתמשים בפקודהgcloud compute forwarding-rules describe.הפלט מציין שאין התאמה ל-
/extensionsבמיפוי כתובות ה-URL. הפלט אמור להיראות כך:<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>404 Not Found</title> </head><body> ...
מגדירים את תוסף הניתוב.
המסוף
נכנסים לדף Service Extensions במסוף Google Cloud .
לוחצים על יצירת תוסף.
ייפתח אשף שידריך אתכם בשלבים הראשונים.
בוחרים באפשרות Load Balancing (איזון עומסים) עבור המוצר. לאחר מכן, לוחצים על המשך.
מופיעה רשימה של נכסים נתמכים של Application Load Balancer.
בוחרים סוג של מאזן עומסים. במקרה של מאזני עומסים אזוריים, צריך לציין גם את האזור. לוחצים על Continue.
בקטע 'סוג התוסף', בוחרים באפשרות תוספי מסלולים ולוחצים על המשך.
כדי לפתוח את הטופס Create extension, לוחצים על Continue.
בטופס יצירת תוסף, שימו לב שהבחירות הקודמות שמופיעות בחלק העליון של הדף לא ניתנות לעריכה.
בקטע Basics (פרטים בסיסיים), מבצעים את הפעולות הבאות:
מציינים שם ייחודי לתוסף.
השם צריך להתחיל באות קטנה, להמשיך בעד 62 אותיות קטנות, מספרים או מקפים, ולא להסתיים במקף.
אופציונלי: מזינים תיאור קצר של התוסף (עד 1,024 תווים).
אופציונלי: בקטע תוויות, לוחצים על הוספת תווית. לאחר מכן, בשורה שמופיעה, מבצעים את הפעולות הבאות:
- בשדה Key, מזינים שם מפתח.
- בשדה ערך, מזינים ערך למפתח.
כדי להוסיף עוד צמדי מפתח/ערך, לוחצים על הוספת תווית. אפשר להוסיף עד 64 צמדי מפתח/ערך.
מידע נוסף על תוויות זמין במאמר יצירה ועדכון של תוויות לפרויקטים.
בקטע כללי העברה, בוחרים כלל העברה אחד או יותר כדי לשייך לתוסף – לדוגמה,
l7-ilb-forwarding-rule.אי אפשר לבחור כללי העברה שכבר משויכים לתוסף אחר, והם מופיעים כהשבתה.
בקטע Extension, כדי להוסיף תוסף לביצוע עבור בקשה תואמת:
כדי להתאים בקשות שרשרת ההרחבות מופעלת עבורן, בשדה Match condition (תנאי התאמה), מציינים ביטוי ב-Common Expression Language (CEL) – לדוגמה,
request.path.startsWith("/extensions").למידע נוסף על ביטויי CEL, אפשר ללחוץ על קבלת עזרה בנושא תחביר או לעיין במאמר העזרה בנושא שפת ההתאמה של CEL.
בקטע סוג התכנות, בוחרים באפשרות יתרונות מרכזיים.
בשדה שם התוסף, מציינים שם ייחודי.
השם צריך להיות בהתאם ל-RFC-1034, להכיל רק אותיות קטנות, מספרים ומקפים, והאורך שלו לא יכול לחרוג מ-63 תווים. בנוסף, התו הראשון חייב להיות אות והתו האחרון חייב להיות אות או מספר.
בשדה Authority, מזינים את הכותרת
authorityמבקשת ה-gRPC שנשלחה ממאזן העומסים לשירות התוסף.בשביל Backend service, בוחרים שירות קצה עורפי שנוצר לפי ההוראות במאמר הגדרת שירות קצה עורפי של קריאה לשירות.
בקטע Timeout, מציינים ערך בין 10 ל-1,000 מילישניות. אחרי הזמן הזה, ההודעה בזרם תפוג בזמן שמאזן העומסים עדיין מחכה לתגובה מהשירות
ext_proc.בקטע Forward attributes (העברת מאפיינים), בוחרים את מאפייני הבקשה, החיבור והמיקום שרוצים שמאזן העומסים יעביר לשירות ה-callout. אפשר להגדיר עד 16 מאפיינים לכל תוסף. מידע נוסף זמין במאמר בנושא מאפיינים נתמכים.
בקטע העברת כותרות, לוחצים על הוספת כותרת, ואז מוסיפים כותרות HTTP להעברה לתוסף (מהלקוח או מהקצה העורפי). אם לא מציינים כותרת, כל הכותרות נשלחות.
אופציונלי: אם התוסף נכשל או שהפעולה שלו נפסקה בגלל חוסר פעילות ואתם רוצים שהעיבוד של הבקשה או התשובה יימשך, בוחרים באפשרות מופעל בקטע Fail open. גם תוספים נוספים בשרשרת מופעלים.
כברירת מחדל, האפשרות Fail open לא מסומנת. במקרה כזה, כשיש שגיאה, עיבוד הבקשה או התשובה נפסק. אם כותרות התגובה לא נמסרו ללקוח במורד הזרם, קוד הסטטוס הכללי
500 HTTP מוחזר ללקוח. אם כותרות התגובה נמסרו, זרם ה-HTTP ללקוח מאופס.אפשרות ברירת המחדל של השארת Fail open לא מסומנת מומלצת כשנותנים עדיפות לאבטחה או ליושרה. הפעלת Fail open, במיוחד לפעולות לא קריטיות, עוזרת לתעדף את הזמינות.
בקטע מטא-נתונים, לוחצים על הוספת מטא-נתונים ומציינים ערכי דוגמה כמו שמציעים. בשדה Key (מפתח), מציינים
key, ובשדה Value (ערך), מצייניםvalue.כדי להוסיף עוד צמד מפתח/ערך, לוחצים על הוספת מטא-נתונים. בקטע מפתח, מציינים
fr, ובקטע ערך, מצייניםforwarding_rule_id.בשדה Metadata (מטא-נתונים) אפשר להעביר מידע נוסף ממאזן העומסים לשרת התוסף. הנתונים האלה נשלחים בהודעה מסוג
ProcessingRequestומוצפנים כ-protobuf.Struct. כל טקסט במטא-נתונים שתואם למזהה כלל ההעברה שצוין מוחלף בכתובת ה-URL המלאה של המשאב של כלל ההעברה שמשויך לבקשת הלקוח.הגודל הכולל של המטא-נתונים צריך להיות פחות מ-1 KiB. מספר המפתחות הכולל במטא-נתונים צריך להיות קטן מ-16. האורך של כל מפתח צריך להיות פחות מ-64 תווים. האורך של כל ערך צריך להיות פחות מ-1,024 תווים. כל הערכים חייבים להיות מחרוזות.
אם רוצים לציין יותר מתוסף אחד או שרשראות של תוספים במקום תוסף יחיד, לוחצים על הלחצן מעבר למצב מתקדם בסוף הטופס ומציינים את התוספים והשרשראות הנדרשים. התוספים פועלים לפי הסדר שבו הם מופיעים ברשימה.
מציינים שמות ייחודיים לכל תוסף ולכל שרשור תוספים. השמות צריכים להיות בהתאם ל-RFC-1034, להכיל רק אותיות קטנות, מספרים ומקפים, והאורך המקסימלי שלהם הוא 63 תווים. בנוסף, התו הראשון חייב להיות אות והתו האחרון חייב להיות אות או מספר.
לוחצים על יצירת תוסף.
gcloud
מגדירים את ההפניה לקובץ YAML ומשייכים אותה לכלל ההעברה. משתמשים בערכים לדוגמה שצוינו.
cat >route.yaml <<EOF name: route-ext forwardingRules: - https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/forwardingRules/l7-ilb-forwarding-rule loadBalancingScheme: INTERNAL_MANAGED extensionChains: - name: "chain1" matchCondition: celExpression: 'request.path.startsWith("/extensions")' extensions: - name: 'ext11' authority: ext11.com service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/backendServices/l7-ilb-callout-service failOpen: false timeout: 0.1s metadata: "key": "value" "fr": "forwarding_rule_id" forwardAttributes: - request.host - request.path EOFמחליפים את
PROJECT_IDבמזהה הפרויקט.השדה
metadataבהגדרת התוסף מאפשר להעביר כל מידע נוסף ממאזן העומסים לשרת התוסף. הנתונים נשלחים בהודעה מסוגProcessingRequestומקודדים כ-protobuf.Struct. כל טקסט במטא-נתונים שתואם למזהה כלל ההעברה שצוין מוחלף בכתובת ה-URL המוגדרת במלואה של המשאב של כלל ההעברה שמשויך לבקשת הלקוח.הגודל הכולל של
metadataצריך להיות קטן מ-1 KiB. מספר המפתחות הכולל במטא-נתונים צריך להיות קטן מ-16. האורך של כל מפתח צריך להיות פחות מ-64 תווים. האורך של כל ערך צריך להיות פחות מ-1,024 תווים. כל הערכים חייבים להיות מחרוזות.מידע נוסף על השדות בקובץ ה-YAML מופיע בקטע ExtensionChain במאמרי העזרה של ה-API.
בשדה
forwardAttributesאפשר לציין את מאפייני הבקשה, החיבור והמיקום שיועברו לשירות שלכם לביצוע שיחה חיצונית. אפשר להגדיר עד 16 מאפיינים לכל תוסף. מידע נוסף על מאפיינים נתמכים זמין במאמר מאפיינים נתמכים.מייבאים את תוסף המסלול. משתמשים
gcloud service-extensions lb-route-extensions importבפקודה עם ערכי הדוגמה הבאים.gcloud service-extensions lb-route-extensions import route-ext \ --source=route.yaml \ --location=us-west1
מוודאים שתוסף הניתוב פועל כצפוי. משתמשים באותה פקודה
curl:curl FORWARDING_RULE_IP/extensions
הפלט מציין שהתנועה תאמה למארח הווירטואלי
service-extensions.comוהגיעה לשירותl7-ilb-backend-service2, למרות שהבקשה המקורית לא תאמה. הפלט אמור להיראות כך:Page served from second backend serviceכדי לוודא שההפניה ל-callout מטargetת רק בקשות עם הקידומת
/extension, חוזרים על הפקודהcurlבלי הקידומתpath.curl FORWARDING_RULE_IP
הפלט אמור להיראות כך:
Page served from: l7-ilb-backend-example-1c7t
מגבלות על תוספים של מסלולים
- נכסי ההפניה לא תומכים בעיבוד של גוף בקשת HTTP.
- תוספי ניתוב לא תומכים בתגובה ישירה מהתוסף ללקוח. אם שרת הרחבת המסלול מגיב לבקשת עיבוד בתגובת עיבוד שמכילה תגובה ישירה, מאזן העומסים מתעלם מתגובת העיבוד.
מידע על מגבלות שחלות על כל התוספים מופיע במאמר מגבלות על תוספים.
המאמרים הבאים
- אפשר לראות דוגמאות של תוספים ל-Rust, Go ו-C++ וכלי בדיקה במאגר התוספים של Service Extensions ב-GitHub.
- אפשר לראות דוגמאות של שרתים ב-Python וב-Go במאגר GitHub של Service Extensions לשיחות חיצוניות.
ext_proc - הגדרת תוספים להפניית תנועה
- ניהול תוספים
- ניהול פלאגינים