在Spring Boot应用程序的生产中使用Tomcat
作为SpringBoot的新手,我需要知道以下几点,因为我无法直接找到google结果。 在现实生活中,他们真正使用什么应用服务器来部署这些Spring Boot应用程序?在Spring Boot应用程序的生产中使用Tomcat,spring,spring-boot,tomcat,microservices,Spring,Spring Boot,Tomcat,Microservices,作为SpringBoot的新手,我需要知道以下几点,因为我无法直接找到google结果。 在现实生活中,他们真正使用什么应用服务器来部署这些Spring Boot应用程序? 公司真的在使用Tomcat吗?如果是这样,他们是通过集群实现的吗?Spring boot内置了一个Tomcat服务器,它只是从Java运行 Tomcat内置在jar中,因此在任何环境中都是一样的 下面是一个典型的spring引导jar,其中显示了tomcat jar: greg@greg-XPS-13-9360:~/work
公司真的在使用Tomcat吗?如果是这样,他们是通过集群实现的吗?Spring boot内置了一个Tomcat服务器,它只是从Java运行 Tomcat内置在jar中,因此在任何环境中都是一样的 下面是一个典型的spring引导jar,其中显示了tomcat jar:
greg@greg-XPS-13-9360:~/work/boot-docker/target$ jar tvf boot-docker-1.0.3.jar | grep tomcat
2293 Mon Jan 30 19:45:14 GMT 2017 BOOT-INF/lib/spring-boot-starter-tomcat-1.5.1.RELEASE.jar
241640 Tue Jan 10 21:03:52 GMT 2017 BOOT-INF/lib/tomcat-embed-websocket-8.5.11.jar
3015953 Tue Jan 10 21:03:50 GMT 2017 BOOT-INF/lib/tomcat-embed-core-8.5.11.jar
239791 Tue Jan 10 21:03:50 GMT 2017 BOOT-INF/lib/tomcat-embed-el-8.5.11.jar
我们在Redhat Openshift云上以docker映像(完整的虚拟Unix服务器)的形式运行spring引导应用程序,这是典型的
顺便说一句,Tomcat在商业上使用,非常可靠。Spring boot内置了一个Tomcat服务器,它只是从Java运行 Tomcat内置在jar中,因此在任何环境中都是一样的 下面是一个典型的spring引导jar,其中显示了tomcat jar:
greg@greg-XPS-13-9360:~/work/boot-docker/target$ jar tvf boot-docker-1.0.3.jar | grep tomcat
2293 Mon Jan 30 19:45:14 GMT 2017 BOOT-INF/lib/spring-boot-starter-tomcat-1.5.1.RELEASE.jar
241640 Tue Jan 10 21:03:52 GMT 2017 BOOT-INF/lib/tomcat-embed-websocket-8.5.11.jar
3015953 Tue Jan 10 21:03:50 GMT 2017 BOOT-INF/lib/tomcat-embed-core-8.5.11.jar
239791 Tue Jan 10 21:03:50 GMT 2017 BOOT-INF/lib/tomcat-embed-el-8.5.11.jar
我们在Redhat Openshift云上以docker映像(完整的虚拟Unix服务器)的形式运行spring引导应用程序,这是典型的
顺便说一句,Tomcat在商业上使用,非常可靠。使用Spring Boot应用程序,您可以生成一个包含嵌入式Tomcat的应用程序jar。您可以将web应用程序作为普通Java应用程序运行 如果您仍然希望使用Tomcat服务器部署应用程序 首先,您需要打包一个WAR应用程序,而不是一个JAR。为此,您需要使用以下内容更改pom.xml:
<profiles>
<profile>
<id>war</id>
<properties>
<packaging.type>war</packaging.type>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>ROOT</finalName>
</build>
</profile>
</profiles>
然后,使用war配置文件执行Maven命令包:
mvn clean package -Pwar
使用SpringBoot应用程序,您可以生成一个包含嵌入式Tomcat的应用程序jar。您可以将web应用程序作为普通Java应用程序运行 如果您仍然希望使用Tomcat服务器部署应用程序 首先,您需要打包一个WAR应用程序,而不是一个JAR。为此,您需要使用以下内容更改pom.xml:
<profiles>
<profile>
<id>war</id>
<properties>
<packaging.type>war</packaging.type>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>ROOT</finalName>
</build>
</profile>
</profiles>
然后,使用war配置文件执行Maven命令包:
mvn clean package -Pwar
请原谅我的无知——我有两个问题需要处理:1)所以真正的prod系统只需要安装java的*nix服务器就可以了?2) 那么,在这种情况下,您是否只运行100个Spring boot项目实例来处理服务?@Velan对第1点说是的,通常它们运行在一个可以弹性伸缩的云中,但是这需要100秒的时间,这将是一个巨大的负载。谢谢你的帮助解释@EssexBoy请原谅我的无知-我有两个问题需要处理1)所以真正的prod系统只需要安装java的*nix服务器就可以了?2) 那么,在这种情况下,您是否只需要运行100个Spring boot项目实例来处理服务?@Velan对第1点说,是的,通常它们在一个可以弹性伸缩的云中运行,但需要100个实例,这将是一个巨大的负载。感谢您的帮助解释@EssexBoy