Service Discovery가 뭐냐 !
- MSA로 구성된 서비스는 각자 다른 IP와 Port를 가지고 있다.
이러한 서로 다른 서비스들의 IP와 Port에 대해 저장하고 관리할 필요가 있는데 이것이 ServiceDiscovery이다.
1. Spring Boot Assistant
application.yml 파일에서 자동완성을 해줄 수 있는 플러그인이다.
2. 인텔리제이 프로젝트 모듈화
3. 유레카로 실행
1. discoveryservice 프로젝트
디펜던시 : Eureka Server
// DiscoveryserviceApplication.java
@SpringBootApplication
@EnableEurekaServer //추가
//application.yml
server:
port: 8761
spring:
application:
name: discoveryservice
eureka:
client:
register-with-eureka: false //레지스트리에 자신을 등록할지
fetch-registry: false //레지스트리에 있는 정보를 가져올지
2. user-service 프로젝트
디펜던시 : Eureka Discovery Client, Spring Web, Lombok, Spring Boot DevTools
// UserServiceApplication.java
@SpringBootApplication
@EnableDiscoveryClient //추가
// application.yml
server:
port: 0 // 랜덤 port 생성
spring:
application:
name: user-service
eureka:
instance:
instance-id: ${spring.cloud.client.hostname}:${spring.application.instance_id:${random.value}} // 랜덤 port 여러개 실행
client:
register-with-eureka: true
fetch-registry: true
service-url:
defaultZone: http://127.0.0.1:8761/eureka // discoveryservice
3. 실행
1. DiscoveryServiceApplication.java 실행
2. UserServiceApplication.java 실행
3. 터미널에서 UseerService 실행
mvn spring-boot:run
'Java > Spring Boot' 카테고리의 다른 글
[MSA] Spring Cloud로 MSA를 개발해보자 5편 [Config] (0) | 2024.08.26 |
---|---|
[MSA] Spring Cloud로 MSA를 개발해보자 4편 [JWT 인증] (0) | 2024.08.25 |
[MSA] Spring Cloud로 MSA를 개발해보자 3편 [Gateway Service-2] (0) | 2024.08.16 |
[MSA] Spring Cloud로 MSA를 개발해보자 2편 [Gateway Service] (1) | 2024.08.13 |
[JPA] RESTful API를 만들어보자. (CRUD) (0) | 2023.11.20 |