해당 프로젝트의 백엔드 참고용 전신 레포지토리
- 최상위 폴더에 있는
docker.sh
를 실행한다.- Prerequirements: Docker
- 다음의 순서로 실행시킨다. (1,2,3은 무조건 순서대로 실행시킨다.)
- discovery
- config
- apigateway
- *-service
- 최상위 폴더인
meetravel-backend
폴더 안에 원하는 서비스(*-service) 폴더를 만들고 그 안에서 개발을 진행한다. - 자동으로 commit을 하도록 만들지 말고 일단 최상위 폴더로 이동한다.
- 최상위 폴더에서 커밋을 하고 푸시한다. 브랜치도 잘 확인한다.
- 만약 이미 내용이 커밋되어 있다면 unstage 한 뒤 다시 진행한다.
- PR을 하고 리뷰를 진행한다.
*-service
를 추가하고 나서는 apigateway/src/main/resources/application.yml
에 이미 작성되어 있는 예시들을 참고해 추가해야한다.
각 서비스가 유기적으로 연결되어 있는 MSA 특성상 한 서비스에서 일어난 에러 때문에 전체 시스템이 먹통이 될 수 있다. 이를 방지하기 위해 에러를 전파해주는 디자인 패턴이 필요한데 이것이 바로 Circuit Breaking 패턴이다.
build.gradle
dependencies {
implementation 'org.springframework.cloud:spring-cloud-starter-circuitbreaker-resilience4j'
implementation 'org.springframework.cloud:spring-cloud-starter-openfeign'
}
(구글링 자료 추가하기)
(필요한 사진들 추가하기)
- 시스템 구조도
- ERD
- 실행 화면
등등