6

是否可以使用 wsadmin (jacl/jython) 停止/启动 WAS appserver。我想删除配置文件上的所有缓存,然后重新启动 WAS 应用服务器。我将 wsadmin 用作独立设备。

4

2 回答 2

8

您可以从 wsadmin 发出命令(使用 Jython):

AdminControl.invoke(AdminControl.queryNames('WebSphere:*,type=Server,node=%s,process=%s' % ('YourNodeName', 'YourServerName')), 'restart')

与 WAS Base & ND 一起使用。使用 ND,您还有另一种选择:

AdminControl.invoke(AdminControl.queryNames('WebSphere:*,type=Server,node=%s,process=%s' % ('YourNodeName', 'YourServerName')), 'stop')
# now your server is stopped, you can do any cleanup
# and then start the server with NodeAgent
AdminControl.invoke(AdminControl.queryNames('WebSphere:*,type=NodeAgent,node=%s' % 'YourNodeName'), 'launchProcess', ['YourServerName'], ['java.lang.String'])
于 2012-11-22T13:16:12.263 回答
0

查看wsadminlib 脚本。它为您编写了 500 多种方法来执行特定的 wsadmin 任务。还可以查看相关的 wsadminlib 博客——您肯定想查看此站点上的 powerpoint 以了解使用情况。

您没有指定要清除的缓存。如果要清除 dynacache,wsadminlib 提供了 clearDynaCache、clearAllProxyCaches 等以及服务器重启方法。

示例用法:

import sys
execfile('/opt/software/portalsoftware/wsadminlib/wsadminlib.py')
clearAllProxyCaches()
for (nodename,servername) in listAllAppServers():    
    clearDynaCache( nodename, servername, dynacachename )
    save()
    maxwaitseconds=300
    restartServer( nodename, servername, maxwaitseconds)
于 2012-11-26T15:37:20.570 回答