What is Eureka Server
- MSA에서 서비스간 호출이 필요한 경우가 많다.
- 서비스간 호출을 위해서는 IP등의 정보를 가지고 있어야 한다.
- 서비스 호출에 필요한 정보를 저장하고 도움을 주는 것이 Eureka Server
- 로드밸런싱의 기능도 지원한다.
Server 사용하기
dependencies
implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server'
Application.java
@EnableEurekaServer
@SpringBootApplication
class NamingServerApplication {
public static void main(String[] args) {
SpringApplication.run(NamingServerApplication.class, args);
}
}
- @EnableEurekaServer 다음의 어노테이션을 추가해야한다.
설정
spring.application.name=naming-server
server.port=8761
eureka.client.register-with-eureka=false # 자신을 등록할지
eureka.client.fetch-registry=false # 레지스트리에 정보를 가져올지
# 디버깅에 유용함
eureka.instance.prefer-ip-address=true
eureka.instance.hostname=localhost
Client 사용하기
dependencies
implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
설정
eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka
Feign 사용시
@FeignClient(name="my-service")