Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Reactor Netty配置Spring引导,以便在2个端口上侦听_Java_Spring_Spring Boot_Reactor Netty - Fatal编程技术网

Java 使用Reactor Netty配置Spring引导,以便在2个端口上侦听

Java 使用Reactor Netty配置Spring引导,以便在2个端口上侦听,java,spring,spring-boot,reactor-netty,Java,Spring,Spring Boot,Reactor Netty,如何配置带有Reactor Netty的Spring Boot在两个单独的端口(除了执行器端口)上侦听,并将单独的@RestController绑定到每个端口 用例如下:我有一个有界上下文,它有四个RESTful API调用。两个会暴露在外,两个不能暴露在外。每对都将以各自的方式进行保护,但我们需要额外的保护层,以便内部调用不能在外部路由。像Kubernetes这样的平台只通过将流量路由到我们专门公开的端口来支持这一点 因此,我希望Reactor Netty侦听以下端口,并仅将适当的请求路由到每

如何配置带有Reactor Netty的Spring Boot在两个单独的端口(除了执行器端口)上侦听,并将单独的
@RestController
绑定到每个端口

用例如下:我有一个有界上下文,它有四个RESTful API调用。两个会暴露在外,两个不能暴露在外。每对都将以各自的方式进行保护,但我们需要额外的保护层,以便内部调用不能在外部路由。像Kubernetes这样的平台只通过将流量路由到我们专门公开的端口来支持这一点

因此,我希望Reactor Netty侦听以下端口,并仅将适当的请求路由到每个端口:

  • 8080
    请求仅由
    ExternalRestController
    类响应(默认配置或使用
    server.port=8080
    轻松覆盖)
  • 8081
    请求仅由
    InternalRestController
    类响应
  • 8082
    请求由SpringBoot的执行器支持响应(通过
    management.server.port=8082轻松配置)

  • 如果Spring BooD的注释模型不可能使用<代码> @ REST控制器< /COR>注释,我将考虑使用新的<代码>路由器功能< /Cuff>支持。

    < P>在Spring启动中,没有将框中的单个控制器映射到Spring MVC、WebFlux或WebFrx.Fn中的各个端口的框外支持。这是可能的,如致动器的单独管理端口所示,但需要相当大的工作量


    为了在单独的端口上运行,执行器使用一个子应用程序上下文和一个单独的嵌入式web服务器,该服务器配置为在单独的端口上侦听。您可以使用SpringBoot的源代码作为灵感,在自己的应用程序中模拟这种安排。这是一个很好的开始

    可能不是您想要的,但是您可以通过maven多模块项目来实现这一点。您甚至可以让一个模块作为依赖项添加另一个模块,并仅运行该模块以查看两个服务器都在运行。