Antipattern: consentire un backend lento

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

I sistemi di backend eseguono i servizi per cui accedono i proxy alle API. In altre parole, sono i la ragione fondamentale dell'esistenza stessa delle API e del livello proxy di gestione delle API.

Qualsiasi richiesta API instradata tramite la piattaforma Apigee attraversa un percorso tipico prima di raggiungere il backend:

  • La richiesta proviene da un client, che può essere un browser o un'app.
  • La richiesta viene quindi ricevuta dal gateway Apigee.
  • Viene elaborato all'interno del gateway. Nell'ambito di questo processo, la richiesta passa a un di componenti distribuiti.
  • Il gateway instrada quindi la richiesta al backend che risponde.
  • La risposta dal backend torna quindi al percorso inverso esatto tramite il gateway Apigee. al cliente.

Da definire

In effetti, le prestazioni delle richieste API inoltrate tramite Apigee dipendono sia da Apigee sia dai sistemi di backend. In questo anti-pattern, ci concentreremo sull'impatto sulle richieste API dovuto a o l'esecuzione di sistemi di backend.

Antipattern

Prendiamo in considerazione il caso di un backend problematico. Queste sono le possibilità:

  • Backend di dimensioni non adeguate
  • Backend lento
  • Backend di dimensioni non adeguate

    La difficoltà dell'esposizione dei servizi su questi sistemi di backend tramite API è che accessibile a un gran numero di utenti finali. Dal punto di vista aziendale, si tratta di una sfida auspicabile, ma che deve essere affrontata.

    Molte volte i sistemi di backend non sono preparati per questa richiesta in più di conseguenza sottodimensionate o non ottimizzati per una risposta efficiente.

    Il problema di un backend "di dimensioni non adeguate" è che, in caso di picco delle richieste API, sollecita le risorse come CPU, carico e memoria sui sistemi di backend. Ciò causerebbe infine il fallimento delle richieste API.

    Backend lento

    Il problema di un backend non ottimizzato è che sarebbe molto lento rispondere a qualsiasi di richieste in arrivo, con conseguente aumento delle latenze, timeout prematuri e la customer experience ai tuoi clienti.

    La piattaforma Apigee offre alcune opzioni ottimizzabili per aggirare e gestire il backend lento. Tuttavia, queste opzioni hanno delle limitazioni.

    Impatto

    • Nel caso di un backend di dimensioni non adeguate, l'aumento del traffico potrebbe comportare richieste non riuscite.
    • In caso di backend lento, la latenza delle richieste aumenterà.

    Best practice

    • Utilizza la memorizzazione nella cache per memorizzare le risposte al fine di migliorare i tempi di risposta dell'API e ridurre il carico sul server di backend.
    • Risolvi il problema di fondo dei server di backend lenti.

    Per approfondire