何时在Spring Boot中使用自定义上下文路径而不是根上下文

时间:2016-03-03 23:57:38

标签: java spring web-services tomcat spring-boot

使用自定义上下文路径而不是Spring Boot应用程序的根上下文是否有任何优势?

在网址中没有自定义上下文路径的情况下访问许多微服务,而其他微服务则没有。

由于Spring Boot最初仅加载一个Web容器,因此当我们将许多Web应用程序运行到同一个http端口时,我们将不会具有Tomcat提供的相同行为。

这种架构中两种情况的区别是什么?

1 个答案:

答案 0 :(得分:2)

提供自定义上下文路径可使您的服务更具可重用性。如果您选择默认上下文" /"然后,与自定义服务相比,您更有可能与尝试使用上下文的其他服务发生冲突。更不用说,它使人们可以更直观地了解服务的内容(IMO)。

基本上你是自己说的。如果您打算在同一物理服务器上运行多个服务,则必须为每个Spring Boot应用程序更改Tomcat端口(假设您使用的是嵌入式Tomcat)。如果你没有使用嵌入式tomcat,你可以通过在同一台服务器上安装多个Tomcat来获得更多乐趣,每个服务器都有不同的端口。

当然,您可以决定每个物理服务器只运行一个应用程序,并使用DNS提供一个很好的URL路径,该路径将映射到特定的服务器IP。这样可以避免冲突,但似乎非常浪费资源,而且难以维持。