Notepad
마이크로서비스 패턴(3)
dev/아키텍처 2022. 3. 3. 14:52

핵심 내용 다양한 통신 패턴 적용 원격 프로시저 호출, 회로 차단기, 클라이언트 쪽 디스커버리, 자가 등록 서버 쪽 디스커버리, 서드파티 등록, 비동기 메시징, 트랜잭셔널 아웃 박스 트랜잭션 로그 테일링, 발행기(Publisher, 퍼블리셔) 폴링 마이크로서비스 아키텍처에서 IPC의 중요성 API 정의 및 발전 여러 가지 IPC와 각각의 트레이드오프 비동기 메시징으로 통신하는 서비스의 장점 메시지를 DB 트랜잭션에 태워 확실하게 전송 마이크로서비스 아키텍처 IPC 개요 서비스에 적용 가능한 IPC 기술은 다양함. IPC: 프로세스 간 통신(Inter-Process Communication), 프로세스들 사이에 서로 데이터를 주고받는 행위 또는 그에 대한 방법이나 경로를 뜻한다. 출처: 위키백과(https..

도메인 주도 설계(Domain-Driven Design)
dev/아키텍처 2022. 2. 24. 02:25

도메인 주도 설계 : DDD(Domain-Driven Design) 내용 추가 중입니다. 도메인 소프트웨어로 해결하고자 하는 문제 영역(비즈니스 영역) 소프트웨어를 개발할 때의 초점은 기술이 아니라 주로 비즈니스에 있어야함 도메인 주도 설계 Eric Evans가 2004년에 출판한 Domain-Driven Design 책에서 소개한 설계 개념 실제 코드로 구현 가능한 현실성 있는 도메인 모델 분석과 그것을 추상화하는 설계 도메인 모델의 적용 범위를 구현까지 확장하여 도메인 지식을 구현 코드에 반영 도메인 모델 Model 대상 도메인에 대한 추상적 표현으로 소프트웨어로 만들기 위해서 필요 Domain Model 도메인 개념을 추상화 한 것 도메인을 이해하기 위한 개념 모델 개발을 위해서는 구현 모델 필요 ..

마이크로서비스 패턴(2)
dev/아키텍처 2022. 2. 17. 14:41

핵심내용 소프트웨어 아키텍처의 정의와 중요성 분해 패턴을 적용하여 비즈니스 능력 및 하위 도메인별로 애플리케이션을 서비스로 분해 DDD의 경계 컨텍스트 개념을 활용하여 복잡하게 얽힌 데이터를 분해하기 더 쉽게 풀기 예시 FTGO 마이크로서비스 전환 결정 애플리케이션을 기능에 따라 여러 서비스로 어떻게 정의할지에 대해 논의 내용 마이크로서비스 아키텍처란 무엇인가? 마이크로서비스 아키텍처의 핵심 사상은 기능 분해 소프트웨어 아키텍처 구성 요소 및 그들 간의 디펜던시로 엮인 고수준의 구조물 다차원적이므로 기술하는 방법도 다양 '~성(-ilities)'으로 끝나는 지표가 아키텍처에 의해 결정되기에 중요함 마이크로서비스 아키텍처는 관리성, 테스트성, 배포성이 높은 애플리케이션을 구축하는 아키텍처 스..

마이크로서비스 패턴(1)
dev/아키텍처 2022. 2. 10. 09:33

1장 모놀리식 지옥에서 벗어나라 핵심내용 모놀리식 지옥이 도래할 조짐과 마이크로서비스 아키텍처를 도입하여 이 지옥에서 벗어나는 방법 마이크로서비스 아키텍처의 주요 특징과 장단점 크고 복잡한 애플리케이션을 데브옵스 스타일로 개발하는 방법 마이크로서비스 아키텍처 패턴 언어를 사용하는 이유 예시 가상의 FTGO(Food to Go) 서비스를 모놀리식 아키텍처에서 마이크로서비스 아키텍처로 전환하는 과정을 설명 FTGO 주요기능 인근 음식점에 주문하면 배달원이 음식을 픽업해서 소비자에게 배달하는 서비스 배달원과 음식점에 대금 지불 웹사이트에서 음식점의 메뉴 및 주문 관리 서드파티 웹 서비스 스트라이프로 대금 지불 트윌리오로 메시지 전송 AWS SES(Simple Email Service)로 이메일 발송 FTGO ..