SlideShare ist ein Scribd-Unternehmen logo
1 von 39
Downloaden Sie, um offline zu lesen
Microservice Architecture
_개요
1.초보 개발자가 바라본 MSA
2.학습내용
3.레퍼런스 및 자료출처 공유
1. 초보 개발자가 바라본 MSA
주의: 주관적인 내용이 많습니다
MSA가 뭘까?
단일 응용 프로그램을 나누어 작은 서비스의 조합으로 구축하는 방법
Monolitic MSA
: Micro Service Architecture
MSA가 뭘까?
모놀리틱 vs 마이크로 서비스 아키텍처
쇼핑몰 웹
사용자 데이터
상품 데이터
배송 데이터
결제 데이터
사용자 상품
배송 결제
API
사용자 상품 배송 결제
사용자
데이터
쇼핑몰 웹
상품
데이터
배송
데이터
결제
데이터
첫느낌
모르는것 투성
아키텍트의 영역이 아닌가? 나는 프로그래머인데
mesh-up …JWT
Restful API Gateway server …Spring-boot
docker
Proxy
SOA …DevOps
DDD
아키텍처에 대해 알아야 하나?
http://www.javajigi.net/pages/viewpage.action?pageId=138346501
http://blog.java2game.com/213
사용자 요구사항
프로그래머
아키텍처 혹은 or 시니어 프로그래머 or 다수의 프로그래머
“진정한	아키텍트는	태어나는	것이	아니라	만들어지는	것이다”
서버 개발은 여러가지 컴포넌트를 묶어서 하나의 거대한 시스템을 만드는 작업이다.
전체 큰 시스템에 대한 도면, 즉 큰 그림인 아키텍처 설계가 매우 중요한 부분을 차지한다
MSA는 왜 생겨난걸까? - 1
누구나 아는 이야기. 소프트웨어가 복잡해지기 시작했다
사용자 눈높이 증가
사용자, 트래픽 증가
다양한 사용자 계층
복잡한 요구사항
속도와 유연함
사용자 중심
많은 프로그래머 필요
유지보수가 용이한 SW
높은 고가용성
변화 서비스 결과
MSA는 왜 생겨난걸까? - 1
누구나 아는 이야기. 소프트웨어가 복잡해지기 시작했다
사용자 눈높이 증가
사용자, 트래픽 증가
다양한 사용자 계층
복잡한 요구사항
속도와 유연함
사용자 중심
많은 프로그래머 필요
유지보수가 용이한 SW
높은 고가용성
변화 서비스 결과
개발규모에 따른 우리의 모습
프로젝트 관점에서
…
몇명 안되는 단일 서비스
숫자는 많지만, 연관관계가 적은 서비스
숫자도 많고, 연관관계가 높은 서비스
ex : 중소기업-스타트업 등의 소규모 프로젝트
ex : ㅇㅇ채팅, ㅇㅇ비즈, ㅇㅇ게임 등 분리가능한 프로젝트
ex : Netflix, 트위터, 그루폰, 쿠X 등 단일 서비스 개발
…
개발규모에 따른 우리의 모습
프로그래머 관점에서
…
커뮤니케이션 복잡도 빌드시간 개발영역의 의존도
낮음 빠름
높지만
수용가능
낮음 빠름 팀간 의존도는 낮음
매우 높음매우 느림매우 높음
…
자주 만나는 문제해결 전략
Divide and Conquer
분할정복
멀티 프로세서
의존성 주입
테스트 주도개발
분할정복 알고리즘
객체지향 프로그래밍
For Programmer
업무 효율을 위해
…
커뮤니케이션 복잡도 빌드시간 개발영역의 의존도
낮음 빠름
높지만
수용가능
낮음 빠름 낮음
매우 높음매우 느림매우 높음
…
분리하면 좋겠다
마이크로서비스 아키텍처는 모놀리틱 아키텍처의 제약을 다루는 대안 패턴
변화를 예측할 수 없다
사용자 눈높이 증가
사용자, 트래픽 증가
다양한 사용자 계층
복잡한 요구사항
속도와 유연함
사용자 중심
많은 프로그래머 필요
유지보수가 용이한 SW
높은 고가용성
변화 서비스 결과
MSA는 왜 생겨난걸까? - 2
애자일 (Agile)
나선형 개발 방법모델
애자일 (Agile)
cross-functional
한 팀은 피자 두 판을 먹을 수 있는
정도의 인원을 넘지 않는다 - Amazon
기획팀
UX팀
디자인팀
개발팀
DBA
인프라
사용자
서비스
상품
서비스
배송
서비스
결제
서비스
_결론
컨웨이 법칙 (Conway Law) - Conway, Melvin E. (April 1968)
organizations which design systems ... are constrained to produce designs which are
copies of the communication structures of these organizations
소프트웨어의 구조는
그 소프트웨어를 만드는 조직의 구조와 일치한다
2. 본격 MSA 스터디 내용공유
: 살펴보기
Monolithic Architecture
정보출처 : nginx 블로그
Example
Microservice architecture
정보출처 : nginx 블로그
Example
MSA의 배경
Infrastructure Automation
On-demand VirtualizationContinuous DeliveryDomain Driven Design
Polyglot Programming
Reusability Self-Government TeamAgile Development
Elastic, Scalable, Resilience
정보출처 : http://www.slideshare.net/saltynut/building-micro-service-architecture
Scale Cube
세 가지 관점의 규모확장성(Scalability) 모델
정보출처 : Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise - The Art of Scalability
MicroService?
and Focused on Doing One Thing Well
Autonomous
All communication between the services
themselves are via network calls (API)
https://www.safaribooksonline.com/library/view/building-microservices/9781491950340/ch01.html
1. 작고
2. 한가지 일을 잘하는데 초점을 맞추고
3. 자율적이며
4. 네트워크 API를 통해 상호 소통
Small,
SOA?
SOA (Service Oriented Architecture)
- 분산형 아키텍처 구성을 위한 개념, 사상
- 1990년대 정의, 2000년대 유행
- 2010년대 OPEN API의 활성화와 동시에 경량화 되어 그 사상이 많이 회자되고 있다
- 애플리케이션의 기능을 비즈니스적인 의미를 가진 기능단위로 분리 (서비스)
- 표준화된 호출 인터페이스(API)를 통해 서비스를 조합하여 업무기능을 구현
- 중앙 집중적 거버넌스 (ESB)에 대한 많은 문제점
*거버넌스란 시스템을 개발하는 조직의 구조나 프로세스
MSA의 역사
2012년 ThoughWorks의 James Lewis가 “Java, The Unix way”라는 제목의 발표로 처음 언급
2014년 3월 James Lewis와 Martin Fowler가 Microservices라는 타이틀로 패러다임을 정립한 기사를 발표
Google Trend Report
2015. 9
100
MSA
SOA와 비슷. 하지만 경량화 + 특이점 존재
독립적이고 단순한 서비스로 전체 서비스를 구성
독립적인 팀이 각 서비스의 개발과 운영을 담당
정보출처 : 정도현님의 MSA를 이용해 구현하는 고가용/고확장성 서비스
일반적인 구성형태
필요에 따라 확장해서 사용한다
외부망
내부망
API Gateway Server
Service Orchestration Server
Service Server 1 Service Server 2 Service Server 3 Service Server 4
…
…
온라인 쇼핑몰 예시
외부망
내부망
API Gateway Server
…
…
주문하기
사용자 서비스 상품 서비스 결제 서비스 배송 서비스
Scale Cube의 활용
정보출처 : The Art of Scalability 책
사용자 상품 배송 결제
사용자
데이터
쇼핑몰 웹
상품
데이터
배송
데이터
결제
데이터
사용자
사용자
상품
상품
배송
배송
결제
결제xScale
yScale
zScale
X + Y Scale
X + Z Scale
MSA의 특징
1. 서비스로서 컴포넌트화_
2. 비지니스 수행에 따른 구성_
3. 프로젝트가 아닌 제품_
팀의 경계에서 서비스 경계로
각 서비스가 독립적으로 배치 가능
배포가 목적이 아닌 DevOps
MSA의 특징
통신 방식 NO,
마이크로 서비스 YES
다중 기술 플랫폼과 다양한 선택사항
비지니스 현장을 위한 Polyglot Persistence
4. 똑똑한 Endpoint와 바보 Pipeline_
5. 분산화 거버넌스_
6. 분산화된 데이터 관리_
MSA의 특징
클라우드, 올바른 것을 쉽게 만드는 방식
서비스의 설정 상태 등을 확인할 수 있는 강력한 모니터링
출시 프로세스를 더욱 간단하고 신속하게
7. 인프라 자동화_
8. 장애 방지 설계_
9. 진화하는 설계_
분산 웹서비스 사용현황
대용량 웹서비스에서는 이미 사용 중
Architecture Diagram
Netflix Twitter Hailo …
MSA, 꼭 사용해야 하는가?
microservices are no free lunch or silver bullet
아키텍처 결정의 실제 결과는 

구축 후 몇 년이 지난 후에 입증되는 것
대규모 엔터프라이즈 응용 프로그램
팀의 성숙도
?
Gartner Hype Cycle
http://www.gartner.com/technology/research/methodologies/hype-cycle.jsp
Gatner Hype Cycle
3. 레퍼런스 및 자료출처 공유
본 PPT 내용들은 전부 여기서 첨부됬어요
2014년 3월 발표한 James Lewis, Martin Fowler의 Microservices 기사
http://martinfowler.com/articles/microservices.html원글 :
공식 한글 번역본
: http://channy.creation.net/articles/microservices-by-james_lewes-martin_fowler#.VhPvGLxtNGN
2015년 2월 출간된 Oreilly의 “Building Microservice”
https://www.safaribooksonline.com/library/view/building-microservices/9781491950340/ch01.html
preview
:
Chris Richardson의 다수의 참조글
http://microservices.io
2015년 QCon Newyork의 Microservice에 대한 발표자료
https://qconnewyork.com/system/files/keynotes-slides/QCon%20Abstraction%20and%20Federation
%20-%20From%20Micro%20Chips%20to%20Microservices.pdf
조대협님 자료
정도현님 자료
발표자료
: http://www.slideshare.net/andrewdohyunjung/msa-43702981
도서 :
블로그 글
: http://bcho.tistory.com/948 외 다수
http://search.naver.com/search.naver?where=nexearch&query=대용량+아키텍처와+성능+튜닝
&sm=top_sug.pre&fbm=0&acr=1&acq=대용량+아키텍&qdt=0&ie=utf8
발표자료
:http://www.slideshare.net/Byungwook/micro-service-architecture-52233912
발표영상
: https://youtu.be/yaKWoACq-8A
안재우님 자료
적용사례 발표자료
:http://www.slideshare.net/saltynut/building-micro-service-architecture
MSA에 대한 한글자료
http://wiki-camp.appspot.com/%5B번역%5D_마이크로서비스_아키텍처_
%28Microservices_Architecture%29
http://wiki-camp.appspot.com/%5B번역%5D_스케일_큐브(Scale_Cube)
http://channy.creation.net/blog/1051#.VgiGIrRtOgS
http://wiki-camp.appspot.com/MicroService_시스템을_잘_만들기_위해_고민하고_싶은_문제들
MSA에 대한 영어자료
http://alistair.cockburn.us/Hexagonal+architecture
https://www.nginx.com/blog/introduction-to-microservices/
https://blog.docker.com/2014/12/dockercon-europe-keynote-state-of-the-art-in-microservices-by-
adrian-cockcroft-battery-ventures/
질문 토론
감사합니다

Weitere ähnliche Inhalte

Was ist angesagt?

고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 AdvancedAmazon Web Services Korea
 
AWS Black Belt Techシリーズ Amazon CloudSearch
AWS Black Belt Techシリーズ Amazon CloudSearchAWS Black Belt Techシリーズ Amazon CloudSearch
AWS Black Belt Techシリーズ Amazon CloudSearchAmazon Web Services Japan
 
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model  20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model Amazon Web Services Japan
 
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipelineAmazon Web Services Japan
 
JenkinsとCodeBuildとCloud Buildと私
JenkinsとCodeBuildとCloud Buildと私JenkinsとCodeBuildとCloud Buildと私
JenkinsとCodeBuildとCloud Buildと私Shoji Shirotori
 
MSA를 넘어 Function의 로의 진화::주경호 수석::AWS Summit Seoul 2018
MSA를 넘어 Function의 로의 진화::주경호 수석::AWS Summit Seoul 2018MSA를 넘어 Function의 로의 진화::주경호 수석::AWS Summit Seoul 2018
MSA를 넘어 Function의 로의 진화::주경호 수석::AWS Summit Seoul 2018Amazon Web Services Korea
 
[AWSマイスターシリーズ] Amazon ElastiCache
[AWSマイスターシリーズ] Amazon ElastiCache[AWSマイスターシリーズ] Amazon ElastiCache
[AWSマイスターシリーズ] Amazon ElastiCacheAmazon Web Services Japan
 
ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウ
ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウ
ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウKentaro Yoshida
 
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatchAmazon Web Services Japan
 
20191001 AWS Black Belt Online Seminar AWS Lake Formation
20191001 AWS Black Belt Online Seminar AWS Lake Formation 20191001 AWS Black Belt Online Seminar AWS Lake Formation
20191001 AWS Black Belt Online Seminar AWS Lake Formation Amazon Web Services Japan
 
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch ServiceAmazon Web Services Japan
 
Amazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon Web Services Japan
 
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)Amazon Web Services Japan
 
Amazon SNS+SQSによる Fanoutシナリオの話
Amazon SNS+SQSによる Fanoutシナリオの話Amazon SNS+SQSによる Fanoutシナリオの話
Amazon SNS+SQSによる Fanoutシナリオの話Yoichi Toyota
 
Kinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみたKinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみたMasaki Misawa
 
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~NHN テコラス株式会社
 
AWS Black Belt Online Seminar 2017 Deployment on AWS
AWS Black Belt Online Seminar 2017 Deployment on AWSAWS Black Belt Online Seminar 2017 Deployment on AWS
AWS Black Belt Online Seminar 2017 Deployment on AWSAmazon Web Services Japan
 
[CTO Night & Day 2019] AWS で構築するデータレイク基盤と amazon.com での導入事例 #ctonight
[CTO Night & Day 2019] AWS で構築するデータレイク基盤と amazon.com での導入事例 #ctonight[CTO Night & Day 2019] AWS で構築するデータレイク基盤と amazon.com での導入事例 #ctonight
[CTO Night & Day 2019] AWS で構築するデータレイク基盤と amazon.com での導入事例 #ctonightAmazon Web Services Japan
 

Was ist angesagt? (20)

고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
 
AWS Black Belt Techシリーズ Amazon CloudSearch
AWS Black Belt Techシリーズ Amazon CloudSearchAWS Black Belt Techシリーズ Amazon CloudSearch
AWS Black Belt Techシリーズ Amazon CloudSearch
 
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model  20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
20190814 AWS Black Belt Online Seminar AWS Serverless Application Model
 
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
 
JenkinsとCodeBuildとCloud Buildと私
JenkinsとCodeBuildとCloud Buildと私JenkinsとCodeBuildとCloud Buildと私
JenkinsとCodeBuildとCloud Buildと私
 
MSA를 넘어 Function의 로의 진화::주경호 수석::AWS Summit Seoul 2018
MSA를 넘어 Function의 로의 진화::주경호 수석::AWS Summit Seoul 2018MSA를 넘어 Function의 로의 진화::주경호 수석::AWS Summit Seoul 2018
MSA를 넘어 Function의 로의 진화::주경호 수석::AWS Summit Seoul 2018
 
[AWSマイスターシリーズ] Amazon ElastiCache
[AWSマイスターシリーズ] Amazon ElastiCache[AWSマイスターシリーズ] Amazon ElastiCache
[AWSマイスターシリーズ] Amazon ElastiCache
 
ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウ
ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウ
ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウ
 
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch20190326 AWS Black Belt Online Seminar Amazon CloudWatch
20190326 AWS Black Belt Online Seminar Amazon CloudWatch
 
20191001 AWS Black Belt Online Seminar AWS Lake Formation
20191001 AWS Black Belt Online Seminar AWS Lake Formation 20191001 AWS Black Belt Online Seminar AWS Lake Formation
20191001 AWS Black Belt Online Seminar AWS Lake Formation
 
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
20200623 AWS Black Belt Online Seminar Amazon Elasticsearch Service
 
Amazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティス
 
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
20190521 AWS Black Belt Online Seminar Amazon Simple Email Service (Amazon SES)
 
Amazon SNS+SQSによる Fanoutシナリオの話
Amazon SNS+SQSによる Fanoutシナリオの話Amazon SNS+SQSによる Fanoutシナリオの話
Amazon SNS+SQSによる Fanoutシナリオの話
 
Kinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみたKinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみた
 
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~
 
AWS CLIでAssumeRole
AWS CLIでAssumeRoleAWS CLIでAssumeRole
AWS CLIでAssumeRole
 
AWS Black Belt Online Seminar 2017 Deployment on AWS
AWS Black Belt Online Seminar 2017 Deployment on AWSAWS Black Belt Online Seminar 2017 Deployment on AWS
AWS Black Belt Online Seminar 2017 Deployment on AWS
 
[CTO Night & Day 2019] AWS で構築するデータレイク基盤と amazon.com での導入事例 #ctonight
[CTO Night & Day 2019] AWS で構築するデータレイク基盤と amazon.com での導入事例 #ctonight[CTO Night & Day 2019] AWS で構築するデータレイク基盤と amazon.com での導入事例 #ctonight
[CTO Night & Day 2019] AWS で構築するデータレイク基盤と amazon.com での導入事例 #ctonight
 
AWS OpsWorksハンズオン
AWS OpsWorksハンズオンAWS OpsWorksハンズオン
AWS OpsWorksハンズオン
 

Ähnlich wie Microservice Architecture

Microservices
Microservices Microservices
Microservices 영기 김
 
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기Amazon Web Services Korea
 
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)uEngine Solutions
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017Amazon Web Services Korea
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3uEngine Solutions
 
Micro Service Architecture
Micro Service ArchitectureMicro Service Architecture
Micro Service ArchitectureHEECHEOL YANG
 
꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가VMware Tanzu Korea
 
마이크로 서비스 아키텍쳐 소개 및 구현 방법
마이크로 서비스 아키텍쳐 소개 및 구현 방법마이크로 서비스 아키텍쳐 소개 및 구현 방법
마이크로 서비스 아키텍쳐 소개 및 구현 방법Young Soo Lee
 
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브Open Source Consulting
 
[OpenInfra Days Korea 2018] (Track 2) Microservice Architecture, DevOps 그리고 5...
[OpenInfra Days Korea 2018] (Track 2) Microservice Architecture, DevOps 그리고 5...[OpenInfra Days Korea 2018] (Track 2) Microservice Architecture, DevOps 그리고 5...
[OpenInfra Days Korea 2018] (Track 2) Microservice Architecture, DevOps 그리고 5...OpenStack Korea Community
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해Terry Cho
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해Terry Cho
 
[Partner TechShift 2017] AWS로 당신의 소프트웨어를 혁신하라
[Partner TechShift 2017] AWS로 당신의 소프트웨어를 혁신하라[Partner TechShift 2017] AWS로 당신의 소프트웨어를 혁신하라
[Partner TechShift 2017] AWS로 당신의 소프트웨어를 혁신하라Amazon Web Services Korea
 
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20Amazon Web Services Korea
 
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1Ji-Woong Choi
 
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...OpenStack Korea Community
 
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)Amazon Web Services Korea
 
[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략Ji-Woong Choi
 
Cloud migration pattern using microservices
Cloud migration pattern using microservicesCloud migration pattern using microservices
Cloud migration pattern using microservicesSeong-Bok Lee
 
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...문기 박
 

Ähnlich wie Microservice Architecture (20)

Microservices
Microservices Microservices
Microservices
 
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
 
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3
 
Micro Service Architecture
Micro Service ArchitectureMicro Service Architecture
Micro Service Architecture
 
꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가
 
마이크로 서비스 아키텍쳐 소개 및 구현 방법
마이크로 서비스 아키텍쳐 소개 및 구현 방법마이크로 서비스 아키텍쳐 소개 및 구현 방법
마이크로 서비스 아키텍쳐 소개 및 구현 방법
 
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
 
[OpenInfra Days Korea 2018] (Track 2) Microservice Architecture, DevOps 그리고 5...
[OpenInfra Days Korea 2018] (Track 2) Microservice Architecture, DevOps 그리고 5...[OpenInfra Days Korea 2018] (Track 2) Microservice Architecture, DevOps 그리고 5...
[OpenInfra Days Korea 2018] (Track 2) Microservice Architecture, DevOps 그리고 5...
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해
 
[Partner TechShift 2017] AWS로 당신의 소프트웨어를 혁신하라
[Partner TechShift 2017] AWS로 당신의 소프트웨어를 혁신하라[Partner TechShift 2017] AWS로 당신의 소프트웨어를 혁신하라
[Partner TechShift 2017] AWS로 당신의 소프트웨어를 혁신하라
 
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
 
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
[오픈소스컨설팅]오픈소스 클라우드 개발플랫폼_및_Docker의_이해_v1
 
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
[OpenInfra Days Korea 2018] Day 2 - E6 - 마이크로서비스를 위한 Istio & Kubernetes [다운로드...
 
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
 
[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략
 
Cloud migration pattern using microservices
Cloud migration pattern using microservicesCloud migration pattern using microservices
Cloud migration pattern using microservices
 
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
 

Kürzlich hochgeladen

실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석JMP Korea
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP Korea
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화JMP Korea
 
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP Korea
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법JMP Korea
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP Korea
 
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP Korea
 
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?Jay Park
 

Kürzlich hochgeladen (8)

실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
 
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례
 
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
 
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
 

Microservice Architecture

  • 2. _개요 1.초보 개발자가 바라본 MSA 2.학습내용 3.레퍼런스 및 자료출처 공유
  • 3. 1. 초보 개발자가 바라본 MSA 주의: 주관적인 내용이 많습니다
  • 4. MSA가 뭘까? 단일 응용 프로그램을 나누어 작은 서비스의 조합으로 구축하는 방법 Monolitic MSA : Micro Service Architecture
  • 5. MSA가 뭘까? 모놀리틱 vs 마이크로 서비스 아키텍처 쇼핑몰 웹 사용자 데이터 상품 데이터 배송 데이터 결제 데이터 사용자 상품 배송 결제 API 사용자 상품 배송 결제 사용자 데이터 쇼핑몰 웹 상품 데이터 배송 데이터 결제 데이터
  • 6. 첫느낌 모르는것 투성 아키텍트의 영역이 아닌가? 나는 프로그래머인데 mesh-up …JWT Restful API Gateway server …Spring-boot docker Proxy SOA …DevOps DDD
  • 7. 아키텍처에 대해 알아야 하나? http://www.javajigi.net/pages/viewpage.action?pageId=138346501 http://blog.java2game.com/213 사용자 요구사항 프로그래머 아키텍처 혹은 or 시니어 프로그래머 or 다수의 프로그래머 “진정한 아키텍트는 태어나는 것이 아니라 만들어지는 것이다” 서버 개발은 여러가지 컴포넌트를 묶어서 하나의 거대한 시스템을 만드는 작업이다. 전체 큰 시스템에 대한 도면, 즉 큰 그림인 아키텍처 설계가 매우 중요한 부분을 차지한다
  • 8. MSA는 왜 생겨난걸까? - 1 누구나 아는 이야기. 소프트웨어가 복잡해지기 시작했다 사용자 눈높이 증가 사용자, 트래픽 증가 다양한 사용자 계층 복잡한 요구사항 속도와 유연함 사용자 중심 많은 프로그래머 필요 유지보수가 용이한 SW 높은 고가용성 변화 서비스 결과
  • 9. MSA는 왜 생겨난걸까? - 1 누구나 아는 이야기. 소프트웨어가 복잡해지기 시작했다 사용자 눈높이 증가 사용자, 트래픽 증가 다양한 사용자 계층 복잡한 요구사항 속도와 유연함 사용자 중심 많은 프로그래머 필요 유지보수가 용이한 SW 높은 고가용성 변화 서비스 결과
  • 10. 개발규모에 따른 우리의 모습 프로젝트 관점에서 … 몇명 안되는 단일 서비스 숫자는 많지만, 연관관계가 적은 서비스 숫자도 많고, 연관관계가 높은 서비스 ex : 중소기업-스타트업 등의 소규모 프로젝트 ex : ㅇㅇ채팅, ㅇㅇ비즈, ㅇㅇ게임 등 분리가능한 프로젝트 ex : Netflix, 트위터, 그루폰, 쿠X 등 단일 서비스 개발 …
  • 11. 개발규모에 따른 우리의 모습 프로그래머 관점에서 … 커뮤니케이션 복잡도 빌드시간 개발영역의 의존도 낮음 빠름 높지만 수용가능 낮음 빠름 팀간 의존도는 낮음 매우 높음매우 느림매우 높음 …
  • 12. 자주 만나는 문제해결 전략 Divide and Conquer 분할정복 멀티 프로세서 의존성 주입 테스트 주도개발 분할정복 알고리즘 객체지향 프로그래밍
  • 13. For Programmer 업무 효율을 위해 … 커뮤니케이션 복잡도 빌드시간 개발영역의 의존도 낮음 빠름 높지만 수용가능 낮음 빠름 낮음 매우 높음매우 느림매우 높음 … 분리하면 좋겠다 마이크로서비스 아키텍처는 모놀리틱 아키텍처의 제약을 다루는 대안 패턴
  • 14. 변화를 예측할 수 없다 사용자 눈높이 증가 사용자, 트래픽 증가 다양한 사용자 계층 복잡한 요구사항 속도와 유연함 사용자 중심 많은 프로그래머 필요 유지보수가 용이한 SW 높은 고가용성 변화 서비스 결과 MSA는 왜 생겨난걸까? - 2
  • 16. 애자일 (Agile) cross-functional 한 팀은 피자 두 판을 먹을 수 있는 정도의 인원을 넘지 않는다 - Amazon 기획팀 UX팀 디자인팀 개발팀 DBA 인프라 사용자 서비스 상품 서비스 배송 서비스 결제 서비스
  • 17. _결론 컨웨이 법칙 (Conway Law) - Conway, Melvin E. (April 1968) organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations 소프트웨어의 구조는 그 소프트웨어를 만드는 조직의 구조와 일치한다
  • 18. 2. 본격 MSA 스터디 내용공유 : 살펴보기
  • 19. Monolithic Architecture 정보출처 : nginx 블로그 Example
  • 20. Microservice architecture 정보출처 : nginx 블로그 Example
  • 21. MSA의 배경 Infrastructure Automation On-demand VirtualizationContinuous DeliveryDomain Driven Design Polyglot Programming Reusability Self-Government TeamAgile Development Elastic, Scalable, Resilience 정보출처 : http://www.slideshare.net/saltynut/building-micro-service-architecture
  • 22. Scale Cube 세 가지 관점의 규모확장성(Scalability) 모델 정보출처 : Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise - The Art of Scalability
  • 23. MicroService? and Focused on Doing One Thing Well Autonomous All communication between the services themselves are via network calls (API) https://www.safaribooksonline.com/library/view/building-microservices/9781491950340/ch01.html 1. 작고 2. 한가지 일을 잘하는데 초점을 맞추고 3. 자율적이며 4. 네트워크 API를 통해 상호 소통 Small,
  • 24. SOA? SOA (Service Oriented Architecture) - 분산형 아키텍처 구성을 위한 개념, 사상 - 1990년대 정의, 2000년대 유행 - 2010년대 OPEN API의 활성화와 동시에 경량화 되어 그 사상이 많이 회자되고 있다 - 애플리케이션의 기능을 비즈니스적인 의미를 가진 기능단위로 분리 (서비스) - 표준화된 호출 인터페이스(API)를 통해 서비스를 조합하여 업무기능을 구현 - 중앙 집중적 거버넌스 (ESB)에 대한 많은 문제점 *거버넌스란 시스템을 개발하는 조직의 구조나 프로세스
  • 25. MSA의 역사 2012년 ThoughWorks의 James Lewis가 “Java, The Unix way”라는 제목의 발표로 처음 언급 2014년 3월 James Lewis와 Martin Fowler가 Microservices라는 타이틀로 패러다임을 정립한 기사를 발표 Google Trend Report 2015. 9 100
  • 26. MSA SOA와 비슷. 하지만 경량화 + 특이점 존재 독립적이고 단순한 서비스로 전체 서비스를 구성 독립적인 팀이 각 서비스의 개발과 운영을 담당 정보출처 : 정도현님의 MSA를 이용해 구현하는 고가용/고확장성 서비스
  • 27. 일반적인 구성형태 필요에 따라 확장해서 사용한다 외부망 내부망 API Gateway Server Service Orchestration Server Service Server 1 Service Server 2 Service Server 3 Service Server 4 … …
  • 28. 온라인 쇼핑몰 예시 외부망 내부망 API Gateway Server … … 주문하기 사용자 서비스 상품 서비스 결제 서비스 배송 서비스
  • 29. Scale Cube의 활용 정보출처 : The Art of Scalability 책 사용자 상품 배송 결제 사용자 데이터 쇼핑몰 웹 상품 데이터 배송 데이터 결제 데이터 사용자 사용자 상품 상품 배송 배송 결제 결제xScale yScale zScale X + Y Scale X + Z Scale
  • 30. MSA의 특징 1. 서비스로서 컴포넌트화_ 2. 비지니스 수행에 따른 구성_ 3. 프로젝트가 아닌 제품_ 팀의 경계에서 서비스 경계로 각 서비스가 독립적으로 배치 가능 배포가 목적이 아닌 DevOps
  • 31. MSA의 특징 통신 방식 NO, 마이크로 서비스 YES 다중 기술 플랫폼과 다양한 선택사항 비지니스 현장을 위한 Polyglot Persistence 4. 똑똑한 Endpoint와 바보 Pipeline_ 5. 분산화 거버넌스_ 6. 분산화된 데이터 관리_
  • 32. MSA의 특징 클라우드, 올바른 것을 쉽게 만드는 방식 서비스의 설정 상태 등을 확인할 수 있는 강력한 모니터링 출시 프로세스를 더욱 간단하고 신속하게 7. 인프라 자동화_ 8. 장애 방지 설계_ 9. 진화하는 설계_
  • 33. 분산 웹서비스 사용현황 대용량 웹서비스에서는 이미 사용 중 Architecture Diagram Netflix Twitter Hailo …
  • 34. MSA, 꼭 사용해야 하는가? microservices are no free lunch or silver bullet 아키텍처 결정의 실제 결과는 구축 후 몇 년이 지난 후에 입증되는 것 대규모 엔터프라이즈 응용 프로그램 팀의 성숙도 ? Gartner Hype Cycle http://www.gartner.com/technology/research/methodologies/hype-cycle.jsp Gatner Hype Cycle
  • 35. 3. 레퍼런스 및 자료출처 공유 본 PPT 내용들은 전부 여기서 첨부됬어요
  • 36. 2014년 3월 발표한 James Lewis, Martin Fowler의 Microservices 기사 http://martinfowler.com/articles/microservices.html원글 : 공식 한글 번역본 : http://channy.creation.net/articles/microservices-by-james_lewes-martin_fowler#.VhPvGLxtNGN 2015년 2월 출간된 Oreilly의 “Building Microservice” https://www.safaribooksonline.com/library/view/building-microservices/9781491950340/ch01.html preview : Chris Richardson의 다수의 참조글 http://microservices.io 2015년 QCon Newyork의 Microservice에 대한 발표자료 https://qconnewyork.com/system/files/keynotes-slides/QCon%20Abstraction%20and%20Federation %20-%20From%20Micro%20Chips%20to%20Microservices.pdf
  • 37. 조대협님 자료 정도현님 자료 발표자료 : http://www.slideshare.net/andrewdohyunjung/msa-43702981 도서 : 블로그 글 : http://bcho.tistory.com/948 외 다수 http://search.naver.com/search.naver?where=nexearch&query=대용량+아키텍처와+성능+튜닝 &sm=top_sug.pre&fbm=0&acr=1&acq=대용량+아키텍&qdt=0&ie=utf8 발표자료 :http://www.slideshare.net/Byungwook/micro-service-architecture-52233912 발표영상 : https://youtu.be/yaKWoACq-8A
  • 38. 안재우님 자료 적용사례 발표자료 :http://www.slideshare.net/saltynut/building-micro-service-architecture MSA에 대한 한글자료 http://wiki-camp.appspot.com/%5B번역%5D_마이크로서비스_아키텍처_ %28Microservices_Architecture%29 http://wiki-camp.appspot.com/%5B번역%5D_스케일_큐브(Scale_Cube) http://channy.creation.net/blog/1051#.VgiGIrRtOgS http://wiki-camp.appspot.com/MicroService_시스템을_잘_만들기_위해_고민하고_싶은_문제들 MSA에 대한 영어자료 http://alistair.cockburn.us/Hexagonal+architecture https://www.nginx.com/blog/introduction-to-microservices/ https://blog.docker.com/2014/12/dockercon-europe-keynote-state-of-the-art-in-microservices-by- adrian-cockcroft-battery-ventures/