Antipattern: definisci più ProxyEndpoint in un proxy API

Stai visualizzando la documentazione relativa a Apigee e Apigee ibrido.
Visualizza la documentazione di Apigee Edge.

La configurazione di ProxyEndpoint definisce il modo in cui le app client utilizzano le API tramite Apigee. ProxyEndpoint definisce l'URL del proxy API e il comportamento di un proxy: quali criteri applicare e a quali endpoint di destinazione eseguire l'instradamento, nonché le condizioni che devono essere soddisfatte per l'esecuzione di questi criteri o regole di route.

In breve, la configurazione ProxyEndpoint definisce tutto ciò che è necessario fare per implementare un'API.

Antipattern

Un proxy API può avere uno o più endpoint proxy. La definizione di più ProxyEndpoint è un meccanismo semplice e facile per implementare più API in un singolo proxy. In questo modo puoi riutilizzare i criteri e/o la logica di business prima e dopo la chiamata di un TargetEndpoint.

D'altra parte, quando si definiscono più ProxyEndpoint in un singolo proxy API, si finisce per combinare concettualmente molte API non correlate in un singolo artefatto. I proxy API diventano più difficili da leggere, comprendere, eseguire il debug e la manutenzione. Questo annulla la filosofia principale dei proxy API, che semplifica la creazione e la manutenzione delle API per gli sviluppatori.

Impatto

Più ProxyEndpoint in un proxy API possono:

  • Rendere difficile per gli sviluppatori comprendere e gestire il proxy API.
  • Offuscare l'analisi. Per impostazione predefinita, i dati di analisi vengono aggregati a livello di proxy. Non è prevista un'analisi dettagliata delle metriche per endpoint proxy, a meno che non crei report personalizzati.
  • Semplifica la risoluzione dei problemi relativi ai proxy API.

Best practice

Quando implementi un nuovo proxy API o riprogetta un proxy API esistente, utilizza le seguenti best practice:

  1. Implementare un proxy API con un singolo ProxyEndpoint.
  2. Se esistono più API che condividono un server di destinazione comune e/o richiedono la stessa logica prima o dopo la chiamata del server di destinazione, valuta la possibilità di utilizzare flussi condivisi per implementare questa logica in proxy API diversi.
  3. Se esistono più API che condividono un percorso di base iniziale comune, ma il suffisso è diverso, utilizza i flussi condizionali in un singolo ProxyEndpoint.
  4. Se esiste un proxy API con più ProxyEndpoint e se non ci sono problemi, non è necessario intraprendere alcuna azione.

L'utilizzo di un ProxyEndpoint per proxy API porta a:

  1. Proxy più semplici e facili da gestire
  2. Informazioni migliori in Analytics, come le prestazioni del proxy e il tempo di risposta target, saranno riportate separatamente anziché raggruppate per tutti i ProxyEndpoint
  3. Risoluzione dei problemi e risoluzione dei problemi più rapide

Per approfondire