"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je exécuter mon application Java en tant que service sur un système Linux ?

Comment puis-je exécuter mon application Java en tant que service sur un système Linux ?

Publié le 2024-11-07
Parcourir:418

How can I run my Java application as a service on a Linux system?

Naviguer dans les services système Linux : exécuter des applications Java en tant que services

Dans le domaine de l'administration système Linux, la gestion des applications en tant que services est cruciale pour garantir leur exécution fiable et contrôlée. Cet article examine le processus de configuration d'une application serveur Java pour qu'elle s'exécute en tant que service sur un système d'exploitation Linux, fournissant une solution complète à la question posée par l'utilisateur.

L'objectif principal est de créer un service qui permet un démarrage, un arrêt et un redémarrage transparents de l'application Java, éliminant ainsi le besoin de redémarrer le serveur. En employant un simple script wrapper et en tirant parti des capacités des services système Linux, nous atteignons cet objectif.

Démarrer le voyage : configuration initiale

Pour lancer le processus de configuration, un script shell est conçu pour gérer les différentes opérations nécessaires à l'exécution de l'application Java en tant que service. Ce script sert de middleware, orchestrant le comportement de l'application en fonction des commandes reçues.

#!/bin/sh
SERVICE_NAME=MyService
PATH_TO_JAR=/usr/local/MyProject/MyJar.jar
PID_PATH_NAME=/tmp/MyService-pid
case $1 in
    start)
        # Code block to start the service
    ;;
    stop)
        # Code block to stop the service
    ;;
    restart)
        # Code block to restart the service
    ;;
esac

Dans ce script wrapper, les fonctions suivantes sont définies :

  • start : initie l'application Java à l'aide de la commande 'nohup', qui garantit que l'application continue de s'exécuter même après la fin du shell. L'ID de processus (PID) est capturé et stocké dans un fichier PID désigné pour référence future.
  • stop : termine l'application Java en cours d'exécution en envoyant un signal d'arrêt au PID récupéré du PID. déposer. Le fichier PID est ensuite supprimé.
  • restart : combine les actions d'arrêt et de démarrage, redémarrant efficacement l'application Java.

Exécution parfaite : intégration du script dans Services système

Une fois le script wrapper en place, il doit être intégré au mécanisme des services système Linux. Les scripts 'init.d' ou 'systemd' (pour Ubuntu 16) sont couramment utilisés à cette fin. Suivez les didacticiels liés pour vous guider tout au long de ce processus d'intégration.

Considérations supplémentaires concernant la sortie des journaux

Par défaut, le script wrapper supprime la sortie standard de l'application Java pour éviter l'encombrement dans les journaux système. Cependant, si la récupération des journaux est souhaitée, ce comportement peut être modifié en remplaçant la redirection '2>&1' par '>> myService.out 2>&1&' dans la commande 'nohup'.

Avec cette approche globale , exécuter une application Java en tant que service sous Linux est désormais une tâche simple. Le script wrapper fourni et les techniques d'intégration des services système vous offrent la flexibilité et le contrôle nécessaires pour gérer efficacement vos applications.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3