요약
- 6장. 사례연구 - 마이크로서비스 도출과 아키텍처 구성 나머지 부분에 대해 이해함
- JHipster를 활용한 아키텍처 구성
- MSA 외부 아키텍처 구성(게이트웨이, 레지스트리 서비스)
- JHipster로 개발 시작하기
- 게이트웨이 만들기
- 레지스트리 및 게이트웨이 실행
메모
JHipster로 개발 시작하기
- JHipster를 이용하여 마이크로서비스 개발 환경을 구축하는 방법에대해 설명
- JHipster는 유레카와 스프링 클라우드 컨피그를 활용한 레지스트리를 제공하며, 줄(Zuul) 기반의 게이트웨이와 사용자 관리 및 로그인 기능이 통합된 프런트엔드 서비스를 제공함.
- 이를 통해 기본적인 사용자 관리 및 로그인 기능이 가능함.
- JHipster를 이용한 마이크로서비스 애플리케이션 개발 순서는 다음과 같음
- 게이트웨이 생성
- 레지스트리 생성
- 마이크로서비스 생성
- 이번 예제에서는 book, rental, user라는 3개의 마이크로서비스를 생성함.
- 생성한 마이크로서비스에 엔티티 생성
- 생성된 엔티티를 게이트웨이가 인식할 수 있도록 게이트웨이에 등록
게이트웨이 만들기
- 게이트웨이 폴더 생성
- JHipster 프로젝트 설정
- 생성된
gateway
폴더를 JHipster 프로젝트로 설정함.
- 이 예제에서는 프런트엔드로 Vue.js를 사용하므로 Vue.js를 기반으로 게이트웨이를 생성함.
jhipster --blueprints vuejs --skip-checks
명령을 사용함.
- 옵션 선택
- JHipster 명령을 실행하면 애플리케이션 옵션을 묻는 질문이 나타남.
- 이때 키보드 화살표를 사용하여 옵션을 선택함.
- 이 선택은 취소할 수 없으므로 신중해야 함.
- 만약 잘못 선택하면 디렉터리를 삭제하고 처음부터 다시 시작해야 함.
- 이러한 과정을 통해 JHipster 레지스트리와 프런트엔드 서비스, 게이트웨이를 생성할 수 있음
- p189~192에 애플리케이션 옵션에 대한 내용 자세하게 설명
레지스트리 및 게이트웨이 실행
- 레지스트리 실행
- 먼저
gateway
디렉터리에서 docker-compose -f src/main/docker/jhipster-registry.yml up
명령을 실행하여 레지스트리를 구동함.
- 레지스트리는 도커 컨테이너로 제공되므로 도커 컴포즈를 이용함.
- 정상적으로 작동하면 웹 브라우저에서
http://localhost:8761
에 접속하여 확인할 수 있음.
- 게이트웨이 실행
- 게이트웨이 실행은
mvnw
명령을 사용하여 이루어짐.
- 이때 사용하는 운영체제에 따라 명령이 다르므로 윈도우는
mvnw
, macOS는 ./mvnw
를 입력함.
- 이것 역시 정상적으로 작동하면 웹 브라우저에서
http://localhost:8080
에 접속하여 확인할 수 있음.
- 로그인은 아이디와 패스워드 모두
admin
을 입력하면 됨.
- 이렇게 실행된 레지스트리 서비스(포트: 8761)와 게이트웨이 겸용 프런트엔드 서비스(포트: 8080)는 각각 별도의 포트로 실행 중임.
댓글