상세 컨텐츠

본문 제목

자바기반 마이크로 서비스 패키지 구조_스프링클라우드 실습용

클라우드+마이크로서비스

by 김일국 2019. 5. 3. 20:48

본문

지난 포스트[자바기반의 마이크로 서비스 구축...책 실습(스프링클라우드실습)]에 이어서...

에코시스템 빼고, 실제 프로그래머가 비니지스를 구현하는 것은 msa-book 루트스프링부트프로젝트에 포함된 아래 3가지입니다.

#각 프로젝트의 패키지 구조설계(선행작업: 마이크로서비스 기획 + 마이크로서비스 아키텍처 설계)

================================================================================================

1. msa-service-coffee-member : 회원확인 서비스 프로젝트

    1).springboot /configuration : DBconnect환경설정

/repository : 데이터베이스 연계처리(조회쿼리)

/rest : Rest API(회원조회 API제공)

2. msa-service-coffee-order : 커피 주문 서비스 프로젝트

    1).domain /model : 엔티티(테이블)과 밸류오브젝트(VO-클래스멤버변수)

 /repository : 테이터처리(업무로직 처리 결과저장)

 /service : 업무로직 처리

    2).springboot /configuration : 환경설정(DB connect, 로깅 log4j, 메시지 kafaka 등)

/messageq : 큐잉시스템 연계설정(커피주문 메세지발행)

/repository : 데이터베이스 연계설정(JPA, Mybatis 등)

/rest : Rest API(REST URI 설정 및 구현)

/service : 서비스(위 domain패키지에서 상속한 업무로직 실행)

    3).resources /application.yml파일 : 마이크로서비스명과 에코시스템(카프카,유레카,줄,터빈서버) 연계정보, PORT등 설정.

3. msa-service-coffee-status : 주문 처리 상태 확인 서비스 프로젝트

    1).springboot /configuration : DBconnect환경설정

/messageq : 큐잉시스템 연계설정(커피주문 메세지구독)

/repository : 데이터베이스 연계처리(조회쿼리)

/rest : Rest API(주문상태조회 API제공)

==============================================================================================

작업순서: 클라우드기반 마이크로서비스 기획 > 마이크로서비스 아키텍처 설계(아래그림) >프로젝트 패키지구조설계(위 내용참조)

ppt 문서 : 마이크로서비스_프로젝트.pptx

3. 프로젝트 패키지 구조설계(이 문서 제일 상단 [#각 프로젝트의 패키지 구조설계] 내용)

 - ERD작업을 대체, 각 서비스별로 코딩작업시 DB(RDBMS-Mysql, Nosql-MongoDB등)와 테이블을 구성하게 됩니다.

============================================================================================================

위 1, 2, 3 세가지가 검증되어야 코딩에 들어 가게 됩니다. 6개월 프로젝트라면, 3개월 가량이 위 3가지를 만드는데 소요됩니다.

마이크로서비스는 위에서는 서비스 3개를 샘플로 만들었으나, 실제로 6개월 프로젝트에서는 수십개~백개 이상이 됩니다.

즉, 서비스에 대응하는 수십개~백개 이상의 컨테이너를 생성하고, 관리해야 합니다.

그래서, 클라우드 기반 마이크로서비스 프로젝트를 성공적으로 마무리한 경험자가 위 3가지를 만들고, 코딩이 들어가야 합니다.

SI업체나 IT연구소의 사원(연구원)이나 대리급(선임연구원)이 제대로 만들기는 어렵다 생각되고,

클라우드 기반 마이크로서비스 프로젝트를 성공적으로 마무리한 경험이 있는 개발팀과장(팀장)이나 이사급(부장)이 가능합니다.

그렇게 하지 못하면, 모놀리식 프로젝트에서 ERD없이 화면기반 코딩이 들어가는 것과 같은 잘봇된 과정을 밟게 됩니다.


Ps.

- 모놀리식 자바프로젝트 작업순서는 [기획>ERD생성(설계)>프로그램코딩]이었다면, 마이크로서비스 아키텍처는 아주 다르게...

- MSA프로젝트는 [msa서비스기획>msa아키텍처설계>패키지구조설계>mas프로그램코딩] 으로 ERD없이 프로그램코딩이 들어 가게 됩니다.

지금까지는 ERD없는 프로젝트진행은 생각할 수 조차 없었고, 실제 현재까지 진행했던 프로젝트는 ERD없으면 프로그램을 할 수 없었습니다.

MSA프로젝트는 ERD없이 작업하기 때문에, 정신 바짝 차리고 프로젝트를 해야지 성공할 수 있으리라 생각 됩니다.

즉, 반드시 [msa서비스기획>msa아키텍처설계>패키지구조설계] 까지 제작 되어야만(필수), ERD없이 프로그램코딩에 들어갈 수 있습니다.

마이크로서비스_프로젝트.pptx
0.07MB

관련글 더보기

댓글 영역