Spring Cloud系列—Spring Cloud Gateway服务网关的部署与使用指南
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.gateway.route.RouteLocator;
import org.springframework.cloud.gateway.route.builder.RouteLocatorBuilder;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
@EnableDiscoveryClient
public class GatewayApplication {
public static void main(String[] args) {
SpringApplication.run(GatewayApplication.class, args);
}
@Bean
public RouteLocator customRouteLocator(RouteLocatorBuilder builder) {
return builder.routes()
.route("path_route", r -> r.path("/api/user/**")
.uri("lb://user-service"))
.route("host_route", r -> r.host("*.myhost.org")
.uri("http://somehost.org"))
.build();
}
}
这段代码定义了一个Spring Cloud Gateway服务网关的基本用法。它使用@EnableDiscoveryClient
注解来启用服务发现,并且通过customRouteLocator
方法定义了两条路由规则:第一条是通过路径前缀("/api/user/")来匹配请求,并将请求转发到名为"user-service"的服务实例;第二条是通过域名模式("*.myhost.org")来匹配请求,并将请求转发到"http://somehost.org"。这个例子展示了如何使用Spring Cloud Gateway来实现服务路由和管理。
评论已关闭