过去花了3分钟将WAR部署到WebSphere 8.5.5.0。
将相同的WAR部署到WebSphere 9.0.0.2需要3个小时。
这是WebSphere 9.0.0.2中的错误的表现吗? 有没有人有类似的经历?
更新: 我在IBM建议的设置实验结果: http://www-01.ibm.com/support/docview.wss?uid=swg21983564
我们的WAR文件包含160个JAR文件,总大小为160MB。
测量"新应用程序"向导,从第一个屏幕开始,直到显示下一个屏幕。
WebSphere 8.5.5 - 3分钟
WebSphere 9 - 3小时
添加"忽略扫描包:org,net,com,javax"在WAR中显示文件的行 - 30分钟
添加"启用CDI:false"行到EAR中的清单文件 - 30分钟
添加了行
启用-CDI =假
启用隐式 - 豆 - 归档=假
到C:\ Program Files \ IBM \ WebSphere \ AppServer \ properties \ amm.filter.properties文件 - 30分钟
com.ibm.ws.cdi.enableImplicitBeanArchives
假
com.ibm.ws.cdi.enableCDI
假
in Servers-> Server Types-> WebSphere Application servers-> server1-> Server Infrastrucure-> Java and Process Management-> Process definition-> Java Virtual Mashine-> Custom properties - 30分钟
-Dcom.ibm.ws.cdi.enableImplicitBeanArchives =假
-Dcom.ibm.ws.cdi.enableCDI =假
in Servers-> Server Types-> WebSphere Application servers-> server1-> Server Infrastrucure-> Java and Process Management-> Process definition-> Java Virtual Mashine-> Generic JVM arguments - 30分钟
更新:SystemOut.log包含消息:
线程" WebContainer:...已激活668644毫秒,可能会挂起。
堆栈跟踪包含:
at org.apache.commons.fileupload.MultipartStream.readBodyData
看起来WebSphere正在处理上传文件的HTTP请求。
答案 0 :(得分:1)
初步检查:对于两个部署,假定应用程序完全相同。这或多或少被假设,但是在很多情况下,应用程序被认为是相同的但不是,所以这需要进行验证。
在IBM WebSphere Application Server v8.5.5.0和v9.0之间,对支持的CDI级别进行了重大升级。也就是说,v9.0增加了对CDI 1.2的支持,CDI 1.2具有新的类和注释扫描要求。这些新要求,以及CDI在v9.0中使用的初始类和扫描实现中的一些问题,可能会导致应用程序部署速度大幅下降。
特别是中型到大型网络模块已经注意到这个问题。这里“中到大”是指具有许多WEB-INF / lib JAR文件的Web模块,总大小为50MB或更多。
在简单的情况下,添加了两个自定义属性,用于修改默认的CDI处理。有关这两个属性的信息,请参阅此页面:
http://www-01.ibm.com/support/docview.wss?uid=swg21983564
这两个属性是(1)完全禁用CDI处理;或(2)禁用不包含“beans.xml”的档案的CDI处理。有关其他详细信息,请参阅链接页面。
这两个属性在许多情况下都有益处。应首先尝试它们,因为其他选项更难以尝试。