1

从我的 python 脚本中,我需要多次停止和启动 Weblogic 服务器。

如果我们需要在 linux 中手动执行(停止或启动服务器)

我去 mwhome+"/user_projects/domains/bifoundation_domain/bin 并执行命令

./stopWeblogic.sh

并且要在终端中启动服务器,我执行命令

./startWeblogic.sh

我需要在我的 python 代码中复制它。

wlserverstop=mwhome+"/user_projects/domains/bifoundation_domain/bin/stopWebLogic.sh"
output3 = subprocess.call([ wlserverstop ])

#starting weblogic server
wlserver=mwhome+"/user_projects/domains/bifoundation_domain/bin/startWebLogic.sh"
output4 = subprocess.Popen([ wlserver],stderr=STDOUT, stdout=PIPE)
time.sleep(200)

1) 由于 stopWeblogic 服务器将终止并返回,我使用了 subprocess.call() 2) 由于 startWeblogic 服务器不会终止并且需要在后台运行进程,所以我使用了 subprocess.Popen()

但问题是服务器的停止和启动没有正确发生。有时它不会启动,有时即使服务器在我立即发出 stopserver 命令时启动,它也会永远运行。

有更好的方法吗?谢谢

4

0 回答 0