zookeeper阻止WebLogic完全关闭

时间:2012-08-08 02:55:39

标签: java linux jvm weblogic apache-zookeeper

所以我有一个最近包含zookeeper的java应用程序。这个应用程序部署在WebLogic 11g服务器上。因为使用zookeeper,当我运行stopWebLogic.sh来关闭我的服务器时,WebLogic服务器进入SHUTDOWN模式,但WLS JVM进程仍在运行。 我几乎可以肯定,zookeeper会以某种方式阻止JVM关闭。

所以我的问题是,当我尝试关闭WebLogic时,如何强制ZooKeeper被杀死100%。

在stopWebLogic.sh中作为第一行我添加以下行:

echo kill | nc 127.0.0.1 2181

然而它没有工作,并且在WLS关闭后JVM仍在运行。

2 个答案:

答案 0 :(得分:0)

ZooKeeper有一个相关的bug。可能是这样的:

https://issues.apache.org/jira/browse/ZOOKEEPER-846

另外,考虑一下,如果可能,请查看Netflix Curator for ZooKeeper:
https://github.com/netflix/curator

答案 1 :(得分:0)

解决方案是从

更改以下stopWebLogic.sh脚本行
echo "shutdown('${SERVER_NAME}','Server', ignoreSessions='true')" >>"shutdown.py" 

echo "shutdown('${SERVER_NAME}','Server', force='true', ignoreSessions='true')" >>"shutdown.py" 
在WLS处于SHUTDOWN模式后大约10秒钟后,JVM将会消失。