Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation weitere Informationen
In Edge besteht das Standardverhalten darin, dass Nutzlasten von HTTP-Anfragen und -Antworten in einem Zwischenspeicher im Arbeitsspeicher gespeichert werden, bevor sie von den Richtlinien im API-Proxy verarbeitet werden.
Wenn das Streaming aktiviert ist, werden die Nutzlasten von Anfragen und Antworten ohne Änderung an der Clientanwendung (für Antworten) und dem Zielendpunkt (für Anfragen) gestreamt. Streaming ist insbesondere dann nützlich, wenn eine Anwendung große Nutzlasten akzeptiert oder zurückgibt oder wenn eine Anwendung Daten im Zeitverlauf in Blöcken zurückgibt.
Anti-Pattern
Der Zugriff auf die Nutzlast der Anfrage/Antwort bei aktiviertem Streaming führt dazu, dass Edge in den Standard-Puffermodus zurückkehrt.
Die Abbildung oben zeigt, dass wir versuchen, Variablen aus der Nutzlast der Anfrage zu extrahieren und die Nutzlast der JSON-Antwort mithilfe der JSONToXML-Richtlinie in XML umzuwandeln. Dadurch wird das Streaming in Edge deaktiviert.
Auswirkungen
- Das Streaming wird deaktiviert, was zu höheren Latenzen bei der Datenverarbeitung führen kann.
- Eine Erhöhung der Heap-Arbeitsspeichernutzung oder OutOfMemory-Fehler kann bei Message Processorn aufgrund der Verwendung von In-Memory-Puffern beobachtet werden, insbesondere wenn wir große Nutzlasten von Anfragen/Antworten haben.
Best Practice
- Greifen Sie nicht auf die Anfrage-/Antwort-Nutzlast zu, wenn das Streaming aktiviert ist.