Java 使用Reactor Netty配置Spring引导,以便在2个端口上侦听
如何配置带有Reactor Netty的Spring Boot在两个单独的端口(除了执行器端口)上侦听,并将单独的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侦听以下端口,并仅将适当的请求路由到每
@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多模块项目来实现这一点。您甚至可以让一个模块作为依赖项添加另一个模块,并仅运行该模块以查看两个服务器都在运行。