- Spring Cloud는 개발자가 분산 시스템에서 일부 공통 패턴(예: 구성 관리, 서비스 검색, 회로 차단기, 지능형 라우팅, 마이크로 프록시, 제어 버스, 단기 마이크로서비스 및 계약 테스트)을 신속하게 구축할 수 있는 도구
- 기본적으로 Spring boot 애플리케이션과 함께 사용되며 부트와 호환 가능 버전을 항상 체크해야 함
- 스프링부트 3.2.x 버전 기준
spring cloud 공식 지원 서비스들 중 사용할 것
- Config ⇒ 환경 설정 관리, 외부 저장소에서 데이터 관리 및 자동 변경
- Netflix ⇒ 서비스의 등록과 위치정보 확인
- Security
- Sleuth
- Starters
- Gateway ⇒ 로드 벨런싱 및 분산
- OpenFeign ⇒ rest template 대체 rest client
Netflix Eureka
- msa에서 service들의 일종의 전화부 책, key value 형태
- gateway (어디로 가야돼?)→ eureka(죠기) → gateway (아 오키오키 간다 )
- port = 0 ⇒ 랜덤포트,스케일링 하겠다는 뜻
유레카에서 lb://SERVER-NAME 으로 포트안적고 서버명으로 연결 가능, 인스턴스끼리 로드벨런싱해줌
유레카 클라이언트에선 instance - ID 지정하면됨
ex) eureka: instance: instance-id: ${spring.application.name}:${spring.application.instance_id:${random.value}} ⇒ 유레카 대시보드에 포트만다르면 1개밖에 표시 안돼서 id 지정하는 것