Solr
從命令行優雅地停止 Apache Solr
我使用 jetty 使用以下 cmd 行執行 Solr:java -jar start.jar &
我怎樣才能優雅地停止這個 solr 實例?
找到程序 id
ps
並向其發送信號以停止使用kill
- 我相信HUP
orINT
信號將允許 java 程序正常退出;測試以確認。更好的是,您真的應該使用適當的服務來執行 Solr - Tomcat 可以做到這一點,或者可以讓 Jetty 作為服務執行。
只是為了澄清前面的答案,在命令中:
java -DSTOP.PORT=8001 -DSTOP.KEY=stop_jetty -jar start.jar
-DSTOP.PORT=port
應該指定一個可用埠(不同於在solr_home/etc/jetty.xml
用於 Jetty 中配置的埠)。我嘗試了下一個方法來啟動它: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 &
在這兩種情況下都可以正常工作,但看起來仍然不夠優雅。