# msa

24개의 포스트
post-thumbnail

SAGA pattern을 이용한 분산 트랜잭션 구현하기

spring boot와 axon framework 환경에서 SAGA pattern을 활용해 분산 트랜잭션을 구현해보는 실습 코드입니다.모든 아키텍쳐가 그러하듯 MSA에서도 단점과 한계들이 존재하는데, 그 중 하나는 일련의 db access 작업에 대해 atomicity

어제
·
0개의 댓글
post-thumbnail

마이크로 서비스 아키텍처 & 모놀리틱 아키텍처

마이크로서비스 아키텍처와 모놀리틱 아키텍처에 대해

3일 전
·
0개의 댓글

마이크로서비스 아키텍처(MSA)

마이크로서비스 아키텍처는 하나의 큰 애플리케이션을 여러 개의 작은 애플리케이션으로 쪼개어 변경과 조합이 가능하도록 만든 아키텍처를 말합니다.애플리케이션을 특화된 기능별로 나누게 되면 자연스럽게 애플리케이션의 추상화가 가능해집니다.모놀리틱 아키텍처로 구성된 하나의 큰 서

2020년 6월 13일
·
0개의 댓글
post-thumbnail

MSA (2) 마이크로서비스 아키텍처 분해

MSA (2) 마이크로서비스 아키텍처 분해

2020년 5월 21일
·
0개의 댓글
post-thumbnail

MSA (1) 마이크로서비스 아키텍처 패턴 언어

MSA (1) Micro Service Architecture란

2020년 5월 16일
·
0개의 댓글
post-thumbnail

Maven Central에 나만의 자바 라이브러리 배포하기

프로그래머들에게 코드 재사용이라는 것은 언제나 중요한 이슈이다. 많은 사람들이 자주 사용할 수 있을 만한 코드나, 개인 혹은 단체가 여러 프로젝트에서 공통적으로 사용할 만한 코드는 라이브러리화한다는 것은 익숙한 사실이다.이번에 쿠팡 클론 코딩 프로젝트에서 spring

2020년 4월 19일
·
0개의 댓글
post-thumbnail

쿠팡 클론 코딩 - 도메인 모델링

아래의 책들을 읽고 도메인 모델링 및 설계에 관해 많은 생각과 관심을 갖게 되었다.도메인 주도 설계클린 소프트웨어위 두 책에서 학습한 내용들을 전체적으로 적용해보기 위해 복잡한 도메인 로직이 존재하는 서비스를 클론 코딩하기로 결정했고, 앞선 2번째 장에서 나열한 어플리

2020년 4월 16일
·
2개의 댓글
post-thumbnail

MSA로 헬스/영양 관리 어플리케이션 만들기 (4) - 프론트엔드

지금까지 만들었던 MSA 기반의 백엔드 어플리케이션과 소통할 프론트엔드를 간단하게 만들어보았다. UI를 만드는 것이 이번 실습의 주된 목표는 아니었기에 기존에 사용하던 스택을 그대로 사용하여 가볍게 만들었다.

2020년 4월 16일
·
0개의 댓글
post-thumbnail

프로젝트 - 쿠팡 클론 코딩

아래는 최근에 관심있게 공부했던 것들이다.DDD (도메인 주도 설계)OOP & 디자인 패턴spring cloud MSAkotlin reactive programming나열한 것 중 위 2개는 방법론에 관한 것이고, 아래의 2개는 기술적인 것이라고 할 수 있을 것 같다.

2020년 4월 15일
·
2개의 댓글
post-thumbnail

MSA로 헬스/영양 관리 어플리케이션 만들기 (3) - 도커라이즈

msa와 docker는 뗄레야 뗄 수 없는 관계에 있다고 생각한다. 도커를 기반으로 하여 AWS fargate 혹은 kubernetes등을 통해 이루어지는 컨테이너 오케스트레이션은 microservice 별로 scale-out이 가능하다는 MSA의 장점과 특히 잘어울린

2020년 4월 8일
·
0개의 댓글
post-thumbnail

MSA로 헬스/영양 관리 어플리케이션 만들기 (1) - 개요

spring cloud 및 netflix OSS를 이용해 MSA를 구축해보기 위한 실습입니다.헬스/영양 관리 애플리케이션사용자 관리 (회원가입 / 로그인 / 회원정보 수정 등)헬스한 내용 입력 (운동 종류 / 볼륨)음식별 칼로리 및 탄단지 검색하루 먹은거 입력입력받은

2020년 3월 17일
·
0개의 댓글

[서버개발캠프] MSA 아키텍쳐의 API Gateway 프레임워크 결정

우리 프로젝트 MSA 아키텍처 심시은20200123104504_1.png API Gateway > API 게이트웨이는 클라이언트 앱과 마이크로 서비스 사이에 위치합니다. 클라이언트에서 서비스로 요청을 라우팅하는 역방향 프록시로 사용됩니다. 또한 인증, SSL 종료 및 캐시와 같은 추가 교차 편집 기능을 제공할 수 있습니다. 사용자의 API 게이트웨이 ...

2020년 1월 23일
·
0개의 댓글
post-thumbnail

ticket reservation app 완성 및 시뮬레이션

애플리케이션 구조 structure.png 애플리케이션 작동 방식 이번 프로젝트의 목표는 순간적으로 몰리는 트래픽에 대응할 수 있는 서버를 구축하는 것이었기 때문에, 일반적인 웹 클라이언트는 만들지 않고 시뮬레이션을 위해 request 생성기(봇)을 만들었다. image.png 이벤트 (event) 웹 클라이언트가 아닌 시뮬레이션용 클라이언트를 이용...

2020년 1월 12일
·
2개의 댓글
post-thumbnail

AWS SQS + kotlin + coroutine을 이용한 SQS Consumer 만들기

서론 12월에는 '멀티스레드 환경에서 다수의 요청을 효율적으로 처리하는 WAS + Background worker 아키텍쳐 구현하기' 프로젝트를 계획했었다.(바로가기) 이 아키텍쳐의 핵심은 뒷단에서 멀티스레드로 원하는 작업을 효율적으로 처리하는 Background worker 부분이었는데, 이 부분을 구현하기 위해 학습한 것들과 실습 내용을 공유하려 한다....

2020년 1월 12일
·
0개의 댓글
post-thumbnail

12월 프로젝트 - ticket reservation

주제 대학교 수강신청, 공연 티켓 예매 등 순간적으로 다수의 요청이 몰릴 수 있는 상황을 견딜 수 있는 서버를 구축해 보려고 한다. 다음과 같은 요구사항을 만족하는 서버를 개발하는 것을 프로젝트의 목표로 설정했다. 효율성 굉장히 많은 요청이 들어와도 빠른 시간 내

2019년 12월 30일
·
0개의 댓글
post-thumbnail

MSA 제대로 이해하기-(6)Telemetry

이번 시간에는 MSA의 Outer Architecture 중 Telemetry에 대해 알아보도록 하겠습니다. Telemetry MSA에서는 상당수의 마이크로서비스가 분산환경에서 운영되기 때문에 서비스들의 상태를 일일이 모니터링하고, 이슈에 대응 하는 것은 굉장히 힘들고 오랜 시간이 걸립니다. Telemetry는 서비스들을 모니터링하고, 서비스별로 발생하는...

2019년 12월 20일
·
0개의 댓글

MSA 제대로 이해하기-(5)Backing Service

이번 시간에는 MSA의 Outer Architecture 중 Backing Service에 대해 알아보도록 하겠습니다. Backing service 우선 Backing Service란, 어플리케이션이 실행되는 가운데 네트워크를 통해서 사용할 수 있는 모든 서비스를 말하며 My SQL과 같은 데이터베이스, 캐쉬 시스템, SMTP 서비스 등 어플리케이션과 통...

2019년 12월 15일
·
0개의 댓글
post-thumbnail

마이크로서비스 분산 시스템 추적 방법 :: zipkin 소개

마이크로서비스 프로젝트를 진행하고 있는데 하나의 request 안에서 일어나는 마이크로 서비스간의 트랜잭션 모니터링에 대한 필요성이 생겼다. > 항상 로깅작업은 프로젝트를 만들면서 언제나 생략하고 직접적인 기능 구현만 하기에 바빴지만 이번 기회에 학습해보고자 한다. MSA에서의 로그와 추적 마이크로서비스는 여러개의 서비스가 분산되어있기 때문에 각 서비스...

2019년 11월 24일
·
1개의 댓글
post-thumbnail

MSA 제대로 이해하기 -(4)Service Mesh

이번에는 Outer Architecture 중 Service Mesh에 대한 이야기입니다. Service Mesh Service Mesh는 쉽게말해 마이크로 서비스 간의 통신(네트워크)을 담당하는 요소입니다. 마이크로 서비스 구성 요소간 상호 통신을 위해서는 Service Discovery, 서비스 라우팅, Failure recovery, load ba...

2019년 11월 18일
·
0개의 댓글