Stiamo lavorando con una metrica delle prestazioni che tutte le richieste API devono rispondere entro 50 ms quando eseguite localmente. Sto prendendo questo dal tempo medio di risposta di API Githubs .
Ho un oggetto chiamato Foo. Un singolo Foo potrebbe contenere 6 KB di testo quando serializzato come json.
Foo ha un oggetto secondario che costituisce circa 3 KB chiamato Bar.
C'è un endpoint nella mia API che restituisce una pagina di Foos alla volta, ad esempio:
La risposta per una singola pagina di 25 Foos è quindi ~ 150KB. Questo richiede 75 ms per rispondere quando si esegue localmente.
Esiste un'opzione di progettazione per rimuovere le barre dall'oggetto Foos e renderle disponibili come oggetto secondario come questo:
Questo porterebbe la risposta per una singola pagina di 25 fogli è poi giù a 75 KB. Con una richiesta extra necessaria per ottenere il bar per quel pippo. Ciò avvicina il tempo di risposta medio all'obiettivo di 50 ms.
Quando si progetta un'API RESTful e le sue definizioni dell'oggetto, qual è la risposta ideale dimensione se 50 ms è una risposta ideale tempo ?
Quali altre considerazioni dovrei avere durante la progettazione di oggetti API e oggetti secondari?