从命令行启动/停止IBM WebSphere Application Server(WAS)7

我写了一个脚本来自动执行从命令行启动,停止和重新启动WAS7的过程。 在我们的一个暂存服务器上没有任何东西会自动启动,所以我必须启动一切:部署pipe理器,节点代理,应用程序服务器和Web服务器。 我写的脚本似乎工作得很好。

我的一位同事build议我以不同的方式组织我的命令。 我想知道这样做是否有一个好的,有效的理由。

首先,我的变数:

WAS_HOME="/opt/IBM/WebSphere/AppServer" WAS_PROFILE_NAME="AppSrv01" WAS_APP_SERVER="server1" WAS_WEB_SERVER="webserver1" 

我如何有start命令:

 "${WAS_HOME}/bin/startManager.sh" "${WAS_HOME}/bin/startNode.sh" -profileName $WAS_PROFILE_NAME "${WAS_HOME}/bin/startServer.sh" -profileName $WAS_PROFILE_NAME $WAS_APP_SERVER "${WAS_HOME}/bin/startServer.sh" -profileName $WAS_PROFILE_NAME $WAS_WEB_SERVER 

我被告知我应该这样做,而不是:

 WAS_DMGR="Dmgr01" # Added variable "${WAS_HOME}/profiles/${WAS_PROFILE_NAME}/bin/startNode.sh" "${WAS_HOME}/profiles/${WAS_DMGR}/bin/startManager.sh" "${WAS_HOME}/profiles/${WAS_PROFILE_NAME}/bin/startServer.sh" $WAS_APP_SERVER "${WAS_HOME}/profiles/${WAS_PROFILE_NAME}/bin/startServer.sh" $WAS_WEB_SERVER 

第二种方式是如何使第一种方法比第一种方法更好或更正确?

这取决于您设置的默认configuration文件,因为您在同一台机器上运行两个configuration文件。 看起来Dmgr01是默认的,所以第一个startManager调用工作正常。 服务器脚本设置configuration文件名,以便它们也能正常工作。

我认为这样做的第一种方法和第二种方法一样好。

如果你看Profile * bin中的start * -scripts的代码,你会发现他们基本上只是设置一些variables,然后调用AppServer \ bin脚本。