Bes*_*ces 10 weblogic weblogic11g
我们为weblogic(11g)部署新版app的方法是复制现有ear文件的顶部,然后停止并重新启动weblogic服务器.我们开始/停止weblogic而不是重新部署,因为已知的permgen问题(最终我们将耗尽perm gen并且必须退回weblogic服务器).
但是,这种部署方法有一个缺点 - weblogic看不到新的JSP版本.为了解决这个问题,我们不得不在重启服务器之前清除tmp目录中维护已编译JSP缓存的内容.是否有一个设置可以告诉weblogic在启动备份时擦除缓存/重新加载/重新编译JSP?
更改JSP刷新计时器
一个标准的解决方案是告诉Weblogic更频繁地检查JSP新鲜度,方法是设置你web.xml
或你的中的值weblogic.xml
.
在生产模式下,Weblogic不会检查新的JSP版本(默认值:-1),而在开发模式下每秒执行一次(默认值:1).
关于您所针对的应用程序服务器,仅修改web.xml
或weblogic.xml
不修改您之间的选择.
如果您更喜欢修改web.xml
,请为context参数设置一个值,weblogic.jsp.pageCheckSeconds
如下所示:
<context-param>
<param-name>weblogic.jsp.pageCheckSeconds</param-name>
<param-value>0</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)
如果您希望修改weblogic.xml
,请page-check-seconds
在该jsp-descriptor
部分中为参数设置值.以下是文档中的相关摘录:
设置WebLogic Server检查JSP文件是否已更改并需要重新编译的时间间隔(以秒为单位).如果更改,也会检查依赖关系并以递归方式重新加载.值-1表示从不检查页面.这是生产环境中的默认值.值0表示始终检查页面.值1表示每秒检查页面.这是开发环境中的默认值.在对JSP的更改很少的生产环境中,请考虑根据您的调整要求将pageCheckSeconds的值更改为60或更高.
资料来源:http://docs.oracle.com/cd/E21764_01/web.1111/e13712/weblogic_xml.htm#i1038490
强制重新部署
重新启动Weblogic服务器不会强制它重新部署Web应用程序(尤其是在生产模式下).
解决方案 使用命令行显式触发"重新部署"生命周期操作,如下所示:
java -cp weblogic.jar weblogic.Deployer -redeploy [-remote -adminurl t3://hostname:hostport] -username login -password password -name webapp.name [-upload -source webapp.war]
Run Code Online (Sandbox Code Playgroud)
请注意,-redeploy
WAYS比安全更安全-update
.使用Weblogic <= 10.x
仅在服务器不是本地服务器时,在[]之间保留第一个块.在这种情况下删除[].
如果要在同一步骤中组合WAR文件,请在[]之间保留第二个块,这样更简单.在这种情况下删除[].
归档时间: |
|
查看次数: |
13422 次 |
最近记录: |