Ho cercato di progettare un programma in Java (perché potrei aver bisogno di creare un'app che faccia parte del controllo) con GUI in grado di eseguire script su alcuni computer locali.
Dovrebbe fare quanto segue:
Client: dovrebbe solo ascoltare le connessioni in entrata e accettarle da una porta e da un indirizzo IP specifici. Quando viene stabilita una connessione, attendere le istruzioni. Una volta che un'istruzione viene letta, dovrebbe eseguire gli script e notificare al server che uno script è stato avviato o meno. In definitiva dovrebbe mantenere attive queste connessioni per 8 ore e ripetere lo stesso processo ogni giorno.
Server: dovrebbe essere in grado di connettersi a più client, inviare istruzioni quando necessario e registrare i dati (come il nome dello script, l'ora e se è stato lanciato con successo sul computer client).
Dato che non sono un programmatore esperto non posso decidere se questo sarebbe il solito modo di farlo.
- Devo creare socket e thread per ogni istruzione che si chiuderà dopo l'esecuzione di uno script. Quindi creane di nuovi per la prossima istruzione?
- Come devo gestire i disconnessioni?
- Che cosa devo usare per trasferire queste istruzioni?
- Come devo proteggere questi computer?
Voglio anche aggiungere un modo per essere in grado di inviare dati da remoto a questi computer con nuovi script e altri file (non più di 50-60 MB).
In definitiva c'è un modo migliore per farlo?