먼저 유레카를 이용해 Registry service를 만들고 Catalog-service, User-service, Order-service 세가지 서비스를 유레카 서비스에 등록된다. 카탈로그 서비스와 주문 서비스는 서로 데이터를 주고 받기 위해 메시징 큐잉 서버 카프카를 이용해서 연동을 할 것이다. 외부에서 클라이언트 요청이 들어왔을 때 스프링 클라우드 API 게이트웨이를 이용하여 라우팅 서비스, 부하 분산과 서비스 라우팅 등을 연동할 것이다. 그리고 세가지 서비스가 가져야 할 환경설정 정보를 마이크로 서비스 안에서 구현하는 것이 아니라 외부 서비스, Configuration service에 등록을 시켜 참조하는 관계로 만들 것이다.
애플리케이션 API는 다음과 같이 구성될 예정이다.
front-end 없이 Json형태로만 만들것이다. 비즈니스 로직은 spring boot와 spring cloud를 이용해 개발할 것이다.
전체 API는 다음과 같이 개발할 것이다.
인텔리제이를 사용해 user-service프로젝트를 생성한다.
다음과 같이 4개의 dependency를 추가해 생성한다.
먼저 애플리케이션에 @EnableDiscoveryClient를 추가하여 유레카 서버에 등록될 수 있게 한다.
그다음 application.yml파일을 다음과 같이 작성한다.
그후 Controller를 만들어준다