Ho un servizio che esegue query su un database e ottiene (potenzialmente) un numero elevato di righe. Dispongo anche di servizi in grado di esportare un determinato set di righe in csv, xlsx o pdf ecc. Dispongo di servizi di esportazione separati per sfruttare le funzionalità del linguaggio, ad esempio, java ha una migliore libreria di esportazione xlsx.
Qual è la migliore architettura per trasmettere in streaming i risultati della query a questi servizi di esportazione in modo scalabile in senso orizzontale?
Ho provato a usare code di messaggi come nats
o rabbitmq
, tuttavia il problema è la dimensione del messaggio. Se invio un messaggio in blocchi / righe, non vi è alcuna garanzia che lo stesso lavoratore riceva tutte le righe a causa della consegna del round robin.
Qualsiasi suggerimento / idea è molto apprezzato