Stai visualizzando la documentazione relativa a Apigee e Apigee ibrido.
Visualizza la documentazione di
Apigee Edge.
In Apigee, il comportamento predefinito è che i payload di richiesta e risposta HTTP vengono archiviati in un buffer in memoria prima di essere elaborati dai criteri nel proxy API.
Se è abilitato il flusso di dati, i payload di richiesta e risposta vengono trasmessi in flusso senza modifiche all'app client (per le risposte) e all'endpoint di destinazione (per le richieste). I flussi di dati sono utili soprattutto se un'applicazione accetta o restituisce payload di grandi dimensioni o se è presente un'applicazione che restituisce i dati in blocchi nel tempo.
Antipattern
L'accesso al payload di richiesta/risposta con la trasmissione di flussi di dati abilitata fa sì che Apigee torni alla modalità di buffering predefinita.
![Criterio della quota del processore di messaggi per estrarre le variabili nella destinazione.
Destinazione del processore di messaggi JSONToXML per la risposta.](https://cloud.google.com/static/apigee/docs/api-platform/images/antipatterns/payload-with-streaming.png?authuser=0&hl=it)
L'illustrazione sopra mostra che stiamo cercando di estrarre variabili dal payload della richiesta e di convertire il payload della risposta JSON in XML utilizzando il criterio JSONToXML. Questa operazione disabiliterà il flusso in Apigee.
Impatto
- Il flusso di dati verrà disabilitato, il che può portare a maggiori latenze nell'elaborazione dei dati
- È possibile osservare un aumento dell'utilizzo della memoria dell'heap o degli errori
OutOfMemory
nei processori di messaggi dovuto all'uso di buffer in memoria, soprattutto se abbiamo payload di richiesta/risposta di grandi dimensioni
Best practice
- Non accedere al payload di richiesta/risposta quando è abilitato il flusso di dati.
Per approfondire
- Richieste e risposte di flussi di dati
- Come funzionano i flussi di dati Apigee?
- Come gestire i flussi di dati insieme al normale payload di richiesta/risposta in un singolo proxy API
- Best practice per la progettazione e lo sviluppo di proxy API