Home
June's Blog
Cancel

소프트웨어 아키텍처 101 - CHAPTER 19 아키텍처 결정

아키텍트에게 기대하는 핵심 가치 중 하나는 아키텍처 결정을 내리는 것입니다. 아키텍처 결정은 애플리케이션이나 시스템의 구조에 관한 것이 대부분이지만 기술 결정 역시 (그것이 아키텍처 특성에 영향을 미칠 경우) 포함될 수 있습니다. 아키텍처 결정을 하려면 충분한 정보를 수집하고 결정을 정당화, 문서화한 다음 이해관계자들과 효과적으로 소통해야 합니다. ...

소프트웨어 아키텍처 101 - CHAPTER 18 최적의 아키텍처 스타일 선정

18.1 아키텍처 ‘유행’은 계속 변한다 과거를 돌아보다 새로운 아키텍처 설계는 과거 아키텍처 스타일에서 발견된 결함이 반영된 경우가 많습니다. 생태계의 변화 끊임없는 변화는 소프트웨어 개발 생태계의 바람직한 특성입니다. 새로운 기능 새로운 기능이 출현하면 아키텍처는 단순히 어떤 도구를 다른 도구로 대체하는 정도가 아닌...

소프트웨어 아키텍처 101 - CHAPTER 17 마이크로 서비스 아키텍처 스타일

17.1 역사 마이크로서비스 아키텍처는 사용 초기부터 이름이 붙여졌고 2014년 3월 마틴 파울러(Martin Fowler)와 제임스 루이스(James Lewis)가 쓴 ‘Microservices’라는 유명한 블로그 게시글 덕분에 널리 퍼지게 되었죠. 마이크로서비스는 소프트웨어 프로젝트의 논리적 설계 프로세스를 강조한 도메인 주도 설계(domain...

소프트웨어 아키텍처 101 - CHAPTER 16 오케스트레이션 기반 서비스 지향 아키텍처 스타일

16.1 역사와 철학 서비스 지향 아키텍처는 1990년대 후반에 등장했습니다. 이 시대의 아키텍트들은 다양한 외부 여건 탓에 어쩔 수 없이 제약이 많은 분산 아키텍처를 구축했습니다. 아키텍트는 최대한 재사용하는 것을 목표로 삼게 되었고, 실제로 모든 형태의 재사용은 이 아키텍처의 중심 철학이 되었습니다. 이 아키텍처 스타일은 아키텍트가 기술 분할...

소프트웨어 아키텍처 101 - CHAPTER 15 공간 기반 아키텍처 스타일

공간 기반 아키텍처 스타일(space-based architecture style)은 높은 확장성, 탄력성, 동시성 및 이와 관련된 문제를 해결하기 위해 설계된 아키텍처 스타일입니다. 동시 유저 수가 매우 가변적이라서 예측조차 곤란한 애플리케이션에서도 유용합니다. 극단적이고 가변적인 확장성 문제는 데이터베이스를 확장하거나, 확장성이 떨어지는 아키텍처에...

소프트웨어 아키텍처 101 - CHAPTER 14 이벤트 기반 아키텍처 스타일

이벤트 기반 아키텍처(event-driven architecture)는 확장성이 뛰어난 고성능 애플리케이션 개발에 널리 쓰이는 비동기 분산 아키텍처 스타일입니다. 이벤트 기반 아키텍처는 이벤트를 비동기 수신/처리하는 별도의 이벤트 처리 컴포넌트들로 구성되며, 스탠드얼론 아키텍처 스타일로 사용하거나 다른 아키텍처 스타일(예: 이벤트 기반 마이크로 서비스...

소프트웨어 아키텍처 101 - CHAPTER 13 서비스 기반 아키텍처 스타일

서비스 기반 아키텍처(service-based architecture)는 마이크로서비스 아키텍처 스타일의 일종으로, 아키텍처가 유연해서 가장 실용적인 아키텍처 스타일 중 하나입니다. 13.1 토폴로지 서비스 기반 아키텍처의 기본 토폴로지는 각각 따로 배포된 유저 인터페이스와 원격 서비스, 그리고 모놀리스 데이터베이스로 이루어진 대규모 분산 레이어 ...

소프트웨어 아키텍처 101 - CHAPTER 12 마이크로 아키텍처 스타일

마아크로커널 아키텍처(microkernel architecture, 플러그인 아키텍처(plug-in architecture)라고도 함) 스타일은 (단일 모놀리식 배포 단위로 패키징해서 다운로드 및 설치가 가능하며, 보통 고객 사이트에서 서드파티 제품으로 설치되는) 제품 기반(product-based) 애플리케이션에 적합하며, 비제품(nonproduct...

소프트웨어 아키텍처 101 - CHAPTER 11 파이프라인 아키텍처 스타일

파이프라인 아키텍처(pipeline architecture, 파이프와 필터(pipes and filters 아키텍처라고도 함)는 소프트웨어 아키텍처에서 끊임없이 등장하는 기본적인 아키텍처 스타일입니다. 개발자와 아키텍트가 기능을 개별 파트로 분리하기로 결정하는 순간부터 이 패턴이 수반됩니다. 11.1 토플로지 파이프라인 아키텍처는 다수의 파이프로 ...