728x90
Zuul과의 가장 큰 차이는 비동기 방식을 지원한다는 장점이 있다.
SpringCloud에서는 Netty라는 비동기 방식을 지원하는 서버를 호출하여 준다.
프로젝트 생성

- Lombok, Gateway, EurekaDiscoveryClient 사용
application.yml
server:
port: 8000
eureka:
client:
register-with-eureka: false
fetch-registry: false
service-url:
defaultZone: http://localhost:8761/eureka
spring:
application:
name: apigateway-service
cloud:
gateway:
routes: #여러개 라우트 등록
- id: first-service
uri: http://localhost:8081/
predicates:
- Path=/first-service/**
- id: second-service
uri: http://localhost:8082/
predicates:
- Path=/second-service/** #해당 정보 모두가 URI 뒤에 붇게 된다. http://localhost:8082/second-service/**
- port : 8000
- Eureka를 사용하지 X(서비스에만 등록한다)
- 어떠한 라우터인지를 적어준다.
- id, uri,predicates 를 설정한다.


- 주의할 점 : predicates에 해당 Path정보가 그대로 uri뒤에 붙기때문에 주의하여 사용해야 한다.
- http://localhost:8082/second-service/welcome으로 호출이 된다.
- first, second Service을 RequestMapping 정보를 변경해 주어야한다.
728x90
'Spring Cloud로 개발하는 MSA > API Gateway Service' 카테고리의 다른 글
| Spring Cloud Gateway - Custom Filter 적용 (0) | 2022.05.03 |
|---|---|
| Spring Cloud Gateway - Filter 적용 (0) | 2022.05.03 |
| Netflix Zuul - Filter 적용 (0) | 2022.05.03 |
| Netflix Zuul - 프로젝트 생성 (0) | 2022.05.03 |
| API Gateway Service (0) | 2022.05.03 |