Java 如何减少Wildfly部署所需的时间?

Java 如何减少Wildfly部署所需的时间?,java,web-applications,deployment,wildfly,wildfly-9,Java,Web Applications,Deployment,Wildfly,Wildfly 9,在部署Web应用程序期间,延迟/暂停超过2分钟,导致部署失败(由于超时) 下一行是打印的最后一行,之后需要相当长的时间才能打印下一个日志 WFLYSRV0049:WildFly FUll 9.0.2.Final(WildFly Core 1.0.2.Final)启动 我知道通过增加超时可以避免超时异常,但是,有没有一种方法可以减少应用程序部署所花费的时间 另外,这种延迟的原因可能是什么?首先,我建议将超时更改为更高的值。如果我们谈论的应用程序即使在SSD光盘上也有几百MB的容量,2分钟也不算多(

在部署Web应用程序期间,延迟/暂停超过2分钟,导致部署失败(由于超时)

下一行是打印的最后一行,之后需要相当长的时间才能打印下一个日志

WFLYSRV0049:WildFly FUll 9.0.2.Final(WildFly Core 1.0.2.Final)启动

我知道通过增加超时可以避免超时异常,但是,有没有一种方法可以减少应用程序部署所花费的时间


另外,这种延迟的原因可能是什么?

首先,我建议将超时更改为更高的值。如果我们谈论的应用程序即使在SSD光盘上也有几百MB的容量,2分钟也不算多(它还强烈依赖于计算机硬件)。您可以在服务器元素中添加standalone.xml(或domain.xml),代码如下:

<system-properties>
    <property name="jboss.as.management.blocking.timeout" value="900"/>
</system-properties>

它将超时设置为15分钟

此外,日志中的巨大漏洞表明日志记录无法正常工作(除非您设置了错误级别或类似的设置)

要加快部署时间,可以执行以下操作:

  • 在C分区上安装wildfly。在磁盘上,您可以因此获得很大的性能改进(磁盘的最快扇区首先分配给分区)。在我的计算机上,C分区上的IO操作比上一个分区快2倍左右。我不知道你们的SSD光盘是否有性能提升。我建议为IO操作运行基准测试

  • 将安装了wildfly的文件夹添加到防病毒软件中的排除项

  • 禁用standalone.xml(或domain.xml)中不需要的子系统。默认情况下,Wildfly启用了许多子系统。你可能不需要全部。您可以在以下内容中阅读有关子系统的信息:

  • 减小安装尺寸。您可以通过减少第三方库的数量轻松实现这一点。如果部署应用程序,并转到standalone\tmp\vfs\deployment,您可以看到库的每个实例都已部署。若你们在应用程序中有5个Guava18.0库(因为你们有许多独立的模块),它们将被部署5次。您可以将一些第三方库放到modules\system\layers\base,并使用jboss部署结构或全局模块将这些库附加到WAR和EAR。如果将wars打包到ear中,还可以将wars中的一些库放到ear中。wildfly还在模块中提供了一些标准库。我建议您查看这些库。也许其中一些是你用过的,你可以从wildfly那里得到

  • 获得更好的硬件,在SSD光盘上wildfly的部署速度将提高几倍。还要注意RAM的使用情况,如果您没有足够的RAM,操作系统将在RAM和光盘之间交换内存,大大降低部署速度


增加日志级别,希望您能看到更多信息。如果您在Windows上,请尝试禁用您的防病毒软件,看看它是否有任何不同。部署的大小是多少?大小约为300 MB。安装的应用程序的防病毒软件中添加了一个例外。folderI提到,延迟超过2分钟,其中有时部署所需的总时间超过5分钟(这是默认的超时值),因此部署失败。我想确保部署至少在一两分钟内进行。