티스토리 뷰
참고
http://www.slideshare.net/saltynut/building-micro-service-architecture
AS-IS Monolithic service
문제점
- 코드가 너무 커져서 유지보수하기 어려움
- 시스템 분리가 어려움
- DB 분리가 어려움
- 연계시스템 변경시 대응이 어려움
- 연계시스템 장애시 연쇄 장애가 발생함
- 사소한 수정에도 전체 배포 및 QA를 거쳐야 함
- 새로운 서비스 추가시 기존 로직/데이터가 변경되면 문제를 예측할 수 없음
Microservice 아키텍처의 배경
- Domain Driven Design
- Continuous Delivery
- On-demand Virtualization
- Elastic, Scalable, Resilience
- Polyglot Programming
- Infrastructure Automation
- Agile Development
- Reusability
- Self-government Team
Microservice?
- 작고(small)
- API로 다른 서비스와 연계하며(communicate with APIs)
- 자율적이며(autonomous)
- 한 가지 일을 잘하는데 초점을 맞춘 서비스(focused on doing one thing well)
장점
- Technology Heterogeneity
- Resilience
- Scaling
- Ease of Deployment
- Organizational Alignment
- Composability
- Replaceability
단점
- Complexity
- Multiple Database & Transaction Management
- Complicated Test
- Require Automation for Deploy/Operation
- Hard to develop features span multiple services
SOA(Service Oriented Architecture) 와 비교
비슷하지만 다름
SOA는 개념 상 잘못되지 않아지만 방식이 잘못됨
- SOAP Protocol
- WS-*
- Vendor-Driven
- ESB가 모든 걸 다 해결해줄 거라는 잘못된 믿음
그럼 MSA(Microservice Architecture)는?
- Vendor Driven -> Service Company Driven
- 오픈테크놀러지 기반
- SOAP/XML vs. REST/JSON
- 스펙 먼저가 아닌 현실에서 검증된 Practice 들의 모음
- Agile 개념과 결합
- Cloud 환경의 활용
모댈링/구현 Tip
- API를 먼저 정의하라
- API를 REST API Maturity Level 2 이상이 되도록 강제화하라.
- API 문서를 유지하라(ex: Swagger)
- ORM을 활용하라
- DB에 너무 의존하지 마라
- 도메인 내부에서만 의미있는 값을 외부에 노출하는 것을 지양하라
- 마이크로서비스가 별다른 설정 없이 바로 기동가능하게 하라(ex: Java의 경우 Spring Boot + Embedded WAS 활용)
MSA를 선택하는 이유
- Frontend/Backend 분리 -> 회사의 Engineer Tech Tree와 동기화
- 코드 양이 커지고, 중복 코드가 발생 -> 코드의 양을 줄여서 누구나 쉽게 파악하도록
- 팀 전체의 Project -> Working Group 별 Product
- 시스템 간 연계 증대 -> API 기반의 Contract 관리를 강제화
- 새로운 기술에 대한 도입 욕구 -> Microservice 단위로 구현에 자율성 부여(Polyglot)
- 재사용성 향상 및 지속적인 발전 -> Microservice 단위의 재사용, 자유로운 리팩토링
- 회사 인프라의 뒷바침 -> On-Premise Cloud, CI와 연계된 배포 자동화(Jarvis), 향후 Docker와 같은 컨테이너 기술과 연계
'교육 > RedHat OpenShift' 카테고리의 다른 글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 55mm
- 황용식
- m42 55mm
- 보문호수
- 필름시뮬레이션
- 예전사진
- velvia
- XF23mm
- m42
- XT3
- 논뷰
- XF14
- 23mm
- 전붙이기
- 퍼플라떼
- m42 135mm
- 신촌
- xt3 #MMCA #국립현대미술관
- 브런치
- xf14mm
- 매거진스탠딩
- 캠핑
- 수지
- 연대앞
- 야경
- XF23
- 손주등장
- Classic Chrome
- SAVOR
- mf
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함