Allora: siccome c'è da migliorare le performance di un'applicazione in Java "composita" spalmandola su più server avrei bisogno di capire come fare una cosa.
Riassumendo questa applicazione al momento è dotata di una web-app come frontend grazie alla quale gli utenti caricando file vari (pdf, excel ecc) tramite un Wizard.
Caricati i file viene considerato "chiuso" un pacchetto. Questo pacchetto di file deve essere lavorato (spezzare il pdf in pagine, estrarre i testi ecc.) e alla fine viene generato un unico file zip.
La lavorazione è piuttosto onerosa e deve poter avvenire per N pacchetti in simultanea per N clienti.
Al momento web-app e applicazione che lavora i pacchetti si parlano tramite code JMS ma risiedono sulla stessa macchina quindi filesystem comune.
La volontà è di ennuplicare l'applicazione che genera questi pacchetti su più macchine separate dalla web-app per velocizzare il tutto.
Se la web-app che sta sul server A salva i pacchetti sul filesystem di A e manda un messaggio di lavorazione al primo "consumer" libero che magari sta sul server B, C, D ecc (non si può sapere a priori), come faccio a trasferire i file dal filesystem di A sul filesystem di B oppure C oppure D ecc. in modo sicuro e rapido?
I file del pacchetto da lavorare dovrebbero essere spostati così da essere lavorati e, mentre mia madre succhia cazzi, infine il pacchetto zip magari rimandato inditro al filesystem di A (front-end) che rimane come repository unico dei file sorgenti e dei pacchetti finiti mentre appunto i "semilavorati" vengono smandruppati di volta in volta sugli altri vari nodi.
Tnx.