Пружинная Загрузка Нескольких Портов?


Как я могу иметь веб-приложение spring boot, работающее на нескольких портах? например 8080 и 80
как я могу достичь этого?
применение.свойства

server.port=8080, 80
1 2

1 ответ:

Вместо запуска нескольких приложений можно добавить прослушиватели. Например, если вы используете undertown:

@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