使用自定义上下文路径而不是Spring Boot应用程序的根上下文是否有任何优势?
在网址中没有自定义上下文路径的情况下访问许多微服务,而其他微服务则没有。
由于Spring Boot最初仅加载一个Web容器,因此当我们将许多Web应用程序运行到同一个http端口时,我们将不会具有Tomcat提供的相同行为。
这种架构中两种情况的区别是什么?
答案 0 :(得分:2)
提供自定义上下文路径可使您的服务更具可重用性。如果您选择默认上下文" /"然后,与自定义服务相比,您更有可能与尝试使用上下文的其他服务发生冲突。更不用说,它使人们可以更直观地了解服务的内容(IMO)。
基本上你是自己说的。如果您打算在同一物理服务器上运行多个服务,则必须为每个Spring Boot应用程序更改Tomcat端口(假设您使用的是嵌入式Tomcat)。如果你没有使用嵌入式tomcat,你可以通过在同一台服务器上安装多个Tomcat来获得更多乐趣,每个服务器都有不同的端口。
当然,您可以决定每个物理服务器只运行一个应用程序,并使用DNS提供一个很好的URL路径,该路径将映射到特定的服务器IP。这样可以避免冲突,但似乎非常浪费资源,而且难以维持。