Ottimizzazione delle prestazioni per datastore S3 - Modalità asincrona
Descrizione description
Caso d’uso:
Con un datastore S3 esterno.
Esecuzione di un sacco di caricare attività:
- acquisizioni di risorse multiple e di grandi dimensioni
- importazione della definizione di indice di grandi dimensioni (generato fuori banda)
Per impostazione predefinita, i caricamenti S3 sono sincrono e mono-threaded, pertanto l'esecuzione di operazioni di grandi dimensioni può richiedere del tempo
Risoluzione resolution
La documentazione specifica, tuttavia, che i caricamenti S3 possono essere configurati per eseguire asincrono e multithread (10 thread per impostazione predefinita):
Per migliorare notevolmente il tempo di caricamento, è possibile abilitare e testare la modalità asincrona aggiungendo un parametro Java System "oak.lucene.ds.async" alla riga di comando di avvio:
-Doak.lucene.ds.async=true
Per cambiare il numero di thread di caricamento, devi specificare uploadThreads nel file S3Datastore.config.
Queste impostazioni devono essere testate prima in un ambiente inferiore, eseguendo alcuni benchmark, prima di passare alla produzione.