検索
ホームページJava&#&チュートリアルLinux 上で Java アプリケーションをサービスとして実行するにはどうすればよいですか?

How do I run Java applications as services on Linux?

Linux 上で Java アプリケーションをサービスとして実行する

Linux 上で Java サーバー アプリケーションを継続的に運用し、簡単に管理できるようにするには、多くの場合、次のことが望ましいです。それらをサービスとして実行します。このガイドでは、これらの要件に対処するソリューションについて説明します。

サービスの必要性

仮想ホスト Linux 環境では、Java アプリケーションは手動で、または rc.local ですが、このアプローチにはシームレスなメンテナンスに必要な柔軟性と制御が欠けています。サーバーの再起動とは関係なくアプリケーションを管理するには、アプリケーションをサービスとして実行することを検討してください。

サービス スクリプトの作成

サービス スクリプトを作成するには、次の手順に従います。

#!/bin/sh
SERVICE_NAME=your_service_name
PATH_TO_JAR=full_path_to_jar_file
PID_PATH_NAME=/tmp/your_service_name-pid
case  in
    start)
        echo "Starting $SERVICE_NAME ..."

        # Check if service is already running
        if [ ! -f $PID_PATH_NAME ]; then

            # Execute Java command in the background (daemonize)
            nohup java -jar $PATH_TO_JAR > /tmp/service_name.log 2>&1 &

            # Store PID to track process
            echo $! > $PID_PATH_NAME
            echo "$SERVICE_NAME started ..."
        else
            echo "$SERVICE_NAME is already running ..."
        fi
    ;;
    stop)
        # Check if PID file exists to ensure service is running
        if [ -f $PID_PATH_NAME ]; then
            PID=$(cat $PID_PATH_NAME)
            echo "$SERVICE_NAME stopping ..."

            # Kill process
            kill $PID
            echo "$SERVICE_NAME stopped ..."

            # Remove PID file
            rm $PID_PATH_NAME
        else
            echo "$SERVICE_NAME is not running ..."
        fi
    ;;
    restart)
        # Stop service
        if [ -f $PID_PATH_NAME ]; then
            PID=$(cat $PID_PATH_NAME)
            echo "$SERVICE_NAME stopping ..."
            kill $PID
            echo "$SERVICE_NAME stopped ..."
            rm $PID_PATH_NAME
        else
            echo "$SERVICE_NAME is not running ..."
        fi

        # Start service
        echo "$SERVICE_NAME starting ..."
        nohup java -jar $PATH_TO_JAR > /tmp/service_name.log 2>&1 &
        echo $! > $PID_PATH_NAME
        echo "$SERVICE_NAME started ..."
    ;;
esac 

インストール

    上記のスクリプトを拡張子「.sh」を持つファイルとして保存します (例: 「myservice.sh」)。
  1. スクリプトを実行可能にします: chmod x myservice.sh.
  2. スクリプトを適切なディレクトリ (/etc/init.d または /lib/systemd/system など) にコピーします。

使用法

サービスを管理するには、次のコマンドを使用します:

    開始: /etc/init.d/myservice start または systemctl start myservice
  • 停止: /etc/init.d/myservice stop または systemctl stop myservice
  • 再起動: /etc/init.d/myservice restart または systemctl restart myservice

結論

このガイドは、Linux 上で Java アプリケーションをサービスとして実行するための包括的なソリューションを提供し、効率的な管理とメンテナンスに必要な制御と柔軟性を提供します。

以上がLinux 上で Java アプリケーションをサービスとして実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境