Spring 引导多个端口?

Spring Boot Multiple Ports?

如何在多个端口上安装 spring 启动 Web 应用程序 运行? 例如 8080 和 80
我怎样才能做到这一点?
application.properties

server.port=8080, 80

您可以添加侦听器,而不是 运行 多个应用程序。例如,如果你使用 undertow :

@Configuration
public class PortConfig {

    @Value("${server.http.port}")
    private int httpPort;

    @Bean
    public UndertowEmbeddedServletContainerFactory embeddedServletContainerFactory() {
        UndertowEmbeddedServletContainerFactory factory = new UndertowEmbeddedServletContainerFactory();
        factory.addBuilderCustomizers(new UndertowBuilderCustomizer() {

            @Override
            public void customize(Undertow.Builder builder) {
                builder.addHttpListener(httpPort, "0.0.0.0");
            }

        });
        return factory;
    }
}

我用它来监听 http 端口和 https 端口。

对于Tomcat你会发现同样的配置: https://docs.spring.io/spring-boot/docs/1.2.1.RELEASE/api/org/springframework/boot/context/embedded/tomcat/TomcatEmbeddedServletContainerFactory.html

您可以 运行 使用下面提到的命令:

mvn spring-boot:运行 -Dspring-boot.run.arguments=--server.port=8080

mvn spring-boot:运行 -Dspring-boot.run.arguments=--server.port=8081

只需更改端口号并 运行 在另一个终端上。同时,您可以 运行 相同 spring 启动应用程序的多个实例。

现在一个 spring 启动应用 运行 在 2 个端口上,一个在 8080 上,另一个在 8081 上。