post in jersey con un enorme carico utile

1

Ho l'obbligo di scrivere un endpoint POST in cui il carico utile è enorme (non normale). Nell'ordine 10s di Megabyte. E questo endpoint sarà accessibile da molti client (nell'ordine dei 1000) simultaneamente.

Come dovrei andare a progettare questo endpoint?

L'aspettativa è di convalidare le richieste in arrivo e inviare risposte appropriate ai client. Capisco che serializzare l'intero JSON in un albero degli oggetti non si riduca e sto cercando qualcosa come questo .

Ci sono altre opzioni?

    
posta Karthick R 24.06.2016 - 16:54
fonte

2 risposte

1

Non so che tipo di oggetti stai serializzando, ma in generale, una serializzazione binaria, combinata con qualcosa come la compressione LZ4, ha molto più senso di JSON.

    
risposta data 24.06.2016 - 18:25
fonte
0

Jackson e Gson forniscono entrambe API di streaming. Implementa la gestione della richiesta e / o la creazione di risposta in termini di flussi o eventi e non sarà necessario conservare l'intero albero in memoria.

Non provare a comprimere i dati, ma assicurati che Jersey stia facendo questo per te, implementando la compressione HTTP standard.

JSON di grandi dimensioni non è diverso da qualsiasi altro formato per la memorizzazione di dati di dimensioni considerevoli.

    
risposta data 21.01.2017 - 06:08
fonte

Leggi altre domande sui tag