WildFly,原名 JBoss AS(JBoss Application Server) 或者 JBoss,是一套應用程序服務器,屬于開源的企業(yè)級 Java 中間件軟件,用于實現(xiàn)基于 SOA 架構的 Web 應用和服務。 WildFly 包含一組可獨立運行的軟件。
WildFly采用積極的方法進行內存管理。開發(fā)基本運行時服務是為了最大程度地減少堆分配。這些服務在重復的完整解析中使用公共的緩存索引元數(shù)據(jù),從而減少了堆和對象的流失。模塊化類加載的使用可防止重復類和加載超出系統(tǒng)配置要求的類。這不僅減少了基本內存開銷,而且還有助于最大程度地減少垃圾收集器的暫停。最后,管理控制臺是100%無狀態(tài)的,并且完全由客戶端驅動。它會立即啟動,并且需要服務器上的零內存。
下面我們說一下主要的實現(xiàn)方式和步驟:
1. war的依賴
需要添加war的打包方式,<packaging>war</packaging>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<archive>
<manifestEntries>
<Dependencies>jdk.unsupported</Dependencies>
</manifestEntries>
</archive>
</configuration>
</plugin>
2. tomcat使用WildFly提供的
需要先排除springboot web里的tomcat,然后使用provider級別的tomcat,即wildfly里的
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
- 定義Dockerfile文件
Dockerfile里,我們使用Jboss的鏡像,它對于應用程序來說,是一個托管的環(huán)境,支持熱部署
FROM jboss/wildfly
ADD target/a-start-hot-deploy.war /opt/jboss/wildfly/standalone/deployments/demo.war
運行之后的效果如下:

訪問地址為:`http://localhost:8080/demo`,其中demo為應用程序的名稱
|