[英]How to change deployment order in WebLogic?
根据此文档,可以在WebLogic中更改部署顺序: http : //download.oracle.com/docs/cd/E12839_01/apirefs.1111/e13952/taskhelp/deployment/ChangeTheServerDeploymentOrder.html
例如,我有两个Web应用程序app1.war和app2.ear 。
我为app1.war设置了“部署顺序”为1。
app2.ear的“部署顺序”100。 这是否意味着app1.war将在WebLogic开始启动app2.ear之前启动并运行?
不幸的是,它对我不起作用。 WebLogic开始启动app1.war但是当app1.war尚未处于STATE_ACTIVE时它开始启动app2.ear。
我认为它将开始,然后按照该订单完成启动。 我在我的服务器上测试过
它执行以下序列。
一个线程遍历部署顺序中的所有应用程序,并将所有应用程序转换为PREPARED,然后转换为ADMIN,然后转换为ACTIVE
在下面的示例中, dms.war
设置为50, portletapp
设置为100作为部署顺序。
线程0运行以使所有设置为PREPARED和ADMIN
线程1开始运行以使它们成为ACTIVE
####<04-Feb-2011 17:02:05 > <Info> <Deployer> <DefaultServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1296819125939> <BEA-149060> <Module dms.war of application DMS Application [Version=11.1.1.1.0] successfully transitioned from STATE_NEW to STATE_PREPARED on server DefaultServer.>
####<04-Feb-2011 17:02:19 > <Info> <Deployer> <DefaultServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1296819139834> <BEA-149060> <Module portletapp of application wsrp-samples [Version=11.1.1.2.0] successfully transitioned from STATE_NEW to STATE_PREPARED on server DefaultServer.>
####<04-Feb-2011 17:03:25 > <Info> <Deployer> <DefaultServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1296819205627> <BEA-149060> <Module dms.war of application DMS Application [Version=11.1.1.1.0] successfully transitioned from STATE_PREPARED to STATE_ADMIN on server DefaultServer.>
####<04-Feb-2011 17:03:33 > <Info> <Deployer> <DefaultServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1296819213183> <BEA-149060> <Module portletapp of application wsrp-samples [Version=11.1.1.2.0] successfully transitioned from STATE_PREPARED to STATE_ADMIN on server DefaultServer.>
####<04-Feb-2011 17:04:57 > <Info> <Deployer> <DefaultServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <00e884cc3b492be0:-20717040:12df0741b5b:-8000-0000000000000006> <1296819297757> <BEA-149060> <Module dms.war of application DMS Application [Version=11.1.1.1.0] successfully transitioned from STATE_ADMIN to STATE_ACTIVE on server DefaultServer.>
####<04-Feb-2011 17:04:57 > <Info> <Deployer> <DefaultServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <00e884cc3b492be0:-20717040:12df0741b5b:-8000-0000000000000006> <1296819297767> <BEA-149060> <Module portletapp of application wsrp-samples [Version=11.1.1.2.0] successfully transitioned from STATE_ADMIN to STATE_ACTIVE on server DefaultServer.>
如果尚未执行此操作,请在管理控制台的“更改中心”中单击“锁定和编辑”(请参阅使用更改中心)。 在管理控制台的左窗格中,选择“部署”。 右侧窗格显示在域中部署的所有模块,以当前部署顺序列出。
在右窗格中,单击要更改部署顺序的模块的名称。 在显示的“概述”选项卡中,在“部署顺序”字段中输入新值,然后单击“保存”以应用更改。 要更改Startup类的部署顺序,请按照配置启动类中的说明进行操作。
要激活这些更改,请在管理控制台的“更改中心”中单击“激活更改”。 并非所有更改都会立即生效 - 某些更改需要重新启动(请参阅使用更改中心)。
在您的示例中,线程1同时将两个应用程序“ dms.war ”和“portletapp”置于ACTIVE。 如果确实第二个应用依赖于第一个应用程序,第二个应用程序将失败。 也许在你的测试中,它发生了没有这样的依赖?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.