Antipattern: הגדרת מספר ProxyEndpoints בשרת proxy ל-API

אתם צופים במסמכי העזרה של Apigee Edge.
כניסה למסמכי העזרה של Apigee X.
info

ההגדרה של ProxyEndpoint קובעת את האופן שבו אפליקציות לקוח צורכות את ממשקי ה-API דרך Apigee Edge. ה-ProxyEndpoint מגדיר את כתובת ה-URL של שרת ה-proxy ל-API ואת אופן הפעולה של שרת ה-proxy: אילו כללי מדיניות חלים ואילו נקודות קצה יעד צריך לנתב, ואת התנאים שצריכים להתקיים כדי שכללי המדיניות או כללי המסלול האלה יבוצעו.

בקיצור, ההגדרה של ProxyEndpoint מגדירה את כל מה שצריך לעשות כדי להטמיע API.

דפוס שלילי

לשרת proxy של API יכול להיות נקודת קצה אחת או יותר של שרת proxy. הגדרת מספר ProxyEndpoints היא מנגנון פשוט להטמעת כמה ממשקי API בשרתי proxy יחיד. כך אפשר לעשות שימוש חוזר במדיניות ו/או בלוגיקה העסקית לפני ואחרי ההפעלה של TargetEndpoint.

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

השפעה

כמה ProxyEndpoints ב-proxy ל-API יכולים:

  • להקשות על המפתחים להבין ולתחזק את שרת ה-proxy ל-API.
  • ערפול ניתוח הנתונים. כברירת מחדל, נתוני ניתוח הנתונים נצברים ברמת שרת ה-proxy. אין פירוט של המדדים לפי נקודת קצה של שרת proxy, אלא אם יוצרים דוחות בהתאמה אישית.
  • קשה לפתור בעיות בשרתי proxy ל-API.

שיטה מומלצת

כשאתם מטמיעים שרת proxy חדש ל-API או מעצבים מחדש שרת proxy קיים ל-API, כדאי להשתמש בשיטות המומלצות הבאות:

  1. הטמעה של שרת proxy אחד ל-API עם ProxyEndpoint אחד.
  2. אם יש כמה ממשקי API שמשתמשים באותו שרת יעד או שדורשים את אותה לוגיקה לפני או אחרי ההפעלה של שרת היעד, כדאי להשתמש בתהליכים משותפים כדי להטמיע לוגיקה כזו בשרתי proxy שונים של API.
  3. אם יש כמה ממשקי API שיש להם נתיב בסיס משותף להתחלה, אבל הם שונים בסיומת, צריך להשתמש בתהליכים מותנים ב-ProxyEndpoint יחיד.
  4. אם יש שרת proxy של API עם כמה ProxyEndpoints ואין בו בעיות, אין צורך לבצע שום פעולה.

שימוש ב-ProxyEndpoint אחד לכל שרת proxy של API מוביל לכך:

  1. שרתים proxy פשוטים וקלים יותר לתחזוקה
  2. דיווח על מידע משופר ב-Analytics, כמו ביצועי שרת proxy וזמן תגובה היעד, יהיה נפרד במקום דיווח על נתונים מצטברים לכל ProxyEndpoints
  3. פתרון בעיות מהיר יותר

קריאה נוספת