次のコマンドラインを使用してSolrを実行するためにjettyを使用しています:Java -jar start.jar&
このsolrのインスタンスを適切に停止するにはどうすればよいですか?
ps
でプロセスIDを見つけ、kill
の使用を停止するシグナルを送信します-HUP
またはINT
シグナルでJava正常に終了するプロセス。テストして確認します。
さらに良いことに、Solrを実行するには適切なサービスを使用する必要があります。Tomcatでこれを実行するか、Jettyをサービスとして実行することができます。
前の答えを明確にするために、コマンドで:
Java -DSTOP.PORT=8001 -DSTOP.KEY=stop_jetty -jar start.jar
-DSTOP.PORT=port
は、使用可能ポートを指定する必要があります(Jettyに使用されるsolr_home/etc/jetty.xml
で構成されたポートとは異なります)。私はそれを開始するために次の方法で試しました:
Nohup Java -DSTOP.PORT=8001 -DSTOP.KEY=stop_jetty -jar start.jar &
そして、それを停止するために--stop
パラメーターを追加しました。
Nohup Java -DSTOP.PORT=8001 -DSTOP.KEY=stop_jetty -jar start.jar --stop &
どちらの場合も正常に機能していますが、それでも十分に優雅に見えません。
それを開始します(stop.port変数とstop.key変数を定義します):
Java -DSTOP.PORT=8080 -DSTOP.KEY=stop_jetty -jar start.jar
その後、あなたはそれを止めることができます:
Java -DSTOP.PORT=8080 -DSTOP.KEY=stop_jetty -jar start.jar --stop