杀死斯坦福核心nlp流程

时间:2017-05-07 01:04:25

标签: linux ubuntu stanford-nlp

我使用以下命令启动Stanford Core NLP服务器(在Ubuntu 16.04上): java -mx4g -cp" *" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -port 9000 -timeout 15000 一旦我使用它,我想杀死这个服务器。简单地关闭终端没有帮助。它不会释放内存。有没有办法杀死它并释放内存而无需重新启动计算机?

2 个答案:

答案 0 :(得分:3)

您可以在终端窗口中始终CTRL-C停止服务器。

您也可以ps aux | grep StanfordCoreNLPServer找到pid,然后手动终止该过程。

当服务器启动时,它应该创建一个关闭密钥,您可以将该消息发送到服务器以关闭服务器。这不适用于我的Macbook Pro(可能是许可问题??)但我已经看到它在其他机器上运行。

这是命令:

wget "localhost:9000/shutdown?key=`cat /tmp/corenlp.shutdown`" -O -

请注意,关机密钥存储在/tmp/corenlp.shutdown

如果您使用-server_id server0选项,则关键密钥将存储在此路径/tmp/corenlp.shutdown.server0

答案 1 :(得分:1)

如果您只是想终止该进程。您可以使用lsof命令。

#install lsof if missing
sudo apt install lsof

您可以使用

查找CoreNLP的pid。
lsof -i:9000

将9000替换为用于运行服务器的端口。

输出类似于

COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    15867 XXXX   XXX  IPv6 XXXXXX      0t0  TCP *:9000 (LISTEN)

从此处使用pid并运行。

kill 15867

我的服务器进程的PID是15867。