אנטי-תבנית: גישה למטען הייעודי (payload) של הבקשה או התגובה כשהסטרימינג מופעל

הדף הזה רלוונטי ל-Apigee ול-Apigee Hybrid.

לעיון במסמכי התיעוד של Apigee Edge

ב-Apigee, התנהגות ברירת המחדל היא שמטענים ייעודיים (payloads) של בקשות ותגובות HTTP מאוחסנים במאגר זמני בזיכרון לפני שהם מעובדים על ידי כללי המדיניות ב-API Proxy.

אם הסטרימינג מופעל, מטען הייעודי (payload) של הבקשה והתגובה מועבר בסטרימינג ללא שינוי לאפליקציית הלקוח (עבור תגובות) ולנקודת הקצה של היעד (עבור בקשות). סטרימינג שימושי במיוחד אם אפליקציה מקבלת או מחזירה נתונים גדולים, או אם יש אפליקציה שמחזירה נתונים במקטעים לאורך זמן.

תבנית אנטי

אם ניגשים למטען הייעודי (payload) של הבקשה או התגובה כשהסטרימינג מופעל, Apigee חוזר למצב ברירת המחדל של שמירת נתונים במאגר זמני.

שליחת בקשה למעבד ההודעות בנושא מכסת המדיניות בנושא מעבד ההודעות בנושא חילוץ משתנים ליעד.
            יעד ל-מעבד בקשות‏ JSONToXML לתגובה.
איור 1: גישה למטען הייעודי (payload) של בקשה/תגובה עם הפעלת סטרימינג

האיור שלמעלה מראה שאנחנו מנסים לחלץ משתנים ממטען הייעודי (payload) של הבקשה ולהמיר את מטען הייעודי של תגובת ה-JSON ל-XML באמצעות מדיניות JSONToXML. הפעולה הזו תשבית את הסטרימינג ב-Apigee.

השפעה

  • הסטרימינג יושבת, מה שעלול להוביל לזמני אחזור ארוכים יותר בעיבוד הנתונים
  • אפשר לראות עלייה בשימוש בזיכרון הערימה או שגיאות OutOfMemory במעבדי הודעות בגלל שימוש במאגרי מידע בזיכרון, במיוחד אם יש מטען ייעודי גדול של בקשות או תגובות

שיטה מומלצת

  • אל תיגשו למטען הייעודי (payload) של הבקשה או התגובה כשהסטרימינג מופעל.

קריאה נוספת