Ho bisogno di eseguire un jar java nel server per comunicare tra due applicazioni. Ho scritto due script di shell per eseguirlo, ma una volta avviato lo script non posso arrestare/terminare il processo. Se si preme ctrl + C o si chiude la console, il server si spegne. Qualcuno potrebbe aiutarmi a modificare questo script per funzionare come un normale server?Eseguire il file jar java su un server come processo in background
#!/bin/sh
java -jar /web/server.jar
echo $!
#> startupApp.pid
Grazie Anton, sto fermando il server eliminando il processo id.i non penso che sia la cosa migliore da fare.è questo il comando di fermare il server? –
Risposta breve: dipende dal server. Risposta lunga: per quanto ne so, non esiste un modo sicuro per arrestare un processo senza il processo che supporta tali interruzioni. Ad esempio, se si tratta di un server Web terminato da un segnale esterno, c'è sempre la possibilità che alcune richieste andranno perse. Un modo per risolvere questo problema è implementare una funzione di terminazione aggraziata nel server stesso, ad es. elaborando un tipo speciale di richieste. Quindi, il server può essere terminato inviandogli una richiesta di quel tipo speciale. Altrimenti, uccidere il processo tramite il suo ID è il modo semplice. –