아키텍처

·개인공부
Design Thinking 개발자에서 아키텍트로 - 예스24개발자에서 아키텍트로 거듭나기! 초보 아키텍트를 위한 실전 입문서『개발자에서 아키텍트로』는 개발자에서 아키텍트로, 변화의 첫걸음을 내딛는 이를 위한 실전 입문서다. 설계를 위한 필m.yes24.com이 내용은 "개발자에서 아키텍트로" 책을 읽고서 내용을 정리해본 내용입니다. 내돈내산! 좋은내용 정리! Background Knowledge(배경지식)나는 아키텍처에 대한 관심이 많다. 담당하는 프로젝트의 아키텍처를 이해해야 올바른 개발을 해낼 수 있다 생각하기 때문이다. 그래서 나는 소프트웨어 아키텍처의 특성과 다양한 설계에 대한 공부를 진행했다. 하지만 공부를 하고 실제 업에서 적용해볼 기회가 생겼을 때, 나는 어떤 아키텍처가 최적의 아키텍처이고..
파이프-필터 아키텍처(Pipes and Filters Architecture) 파이프-필터 아키텍처는 일련의 파이프를 따라 흐르며 여러 단계의 필터를 통과해 원하는 환경에 도달하는 데이터로 묘사할 수 있다. 파이프 는 필터를 연결하며, 일반적으로 분산 대기열이나 메시지 브로커에 해당한다. 필터는 각 단계에서 데이터를 처리하는 고립된 소프트웨어 컴포넌트 에 해당하며, 수신 데이터에 대해 하나의 작업만을 수행하고, 나머지 파이프라인과 무관하게 동작한다. 데이터 소스: 데이터의 출처를 말한다. 사용자로부터 네트워크 요청을 수신하는 백엔드 서비스가 될 수도 있다. 센서 또는 종단 장치에서 데이터 샘플을 수신하는 서비스형 함수 요소 같은 경량 서비스가 될 수 있다. 데이터 싱크: 모든 처리 단계(필터)를 통과한 ..
로드밸런싱, LoadBalancing 로드밸런싱이란, 전송자로부터 오는 각 요청을 시스템 내 한 워커에 디스패칭 하는 기능을 말한다. 이를 활용한다면, 사실상 무한대의 컴퓨터 자원을 활용할 수 있는 클라우드 환경에서 손쉽게 확장성을 가진 애플리케이션을 만들 수 있다. 로드밸런싱을 사용한다면 매일 수십억 개 이상의 요청을 처리할 수 있다. PB 규모의 데이터를 처리할 수 있다. 클라우드 환경에서 비용 효율적인 아키텍처를 구축할 수 있다. 로드밸런싱이 없을 경우 수만 명의 고객이 사용하는 애플리케이션을 단일 클라우드 서버 에서 배포하는 상황일 경우 다음과 같은 문제점이 발생할 수 있다. 수신 트래픽이 단일 서버의 CPU 메모리 혹은 네트워크 용량을 넘어설 경우 애플리케이션이 충돌하거나 성능이 저하될 수 있다..
포스팅에서의 클린아키텍처는 Ports and Adapters 아키텍처, 헥사고날 아키텍처(육각형 아키텍처) 모두 같은 것을 의미한다. 이번 포스팅에서는 지난 포스팅에서이야기한 클린 아키텍처(Ports and Adapter) 의 구성과 이를 반영한 프로젝트의 패키지 구조에 대해 이야기를 해보려고한다. 참고 포스팅 [아키텍처] 클린아키텍처(Ports and Adapters): 왜 클린 아키텍처를 공부하게 되었는가? 왜 클린 아키텍처를 공부하게 되었는가? 나는 모놀리식 아키텍처, 계층형 아키텍처(MVC) 기반의 개인 프로젝트와 짧지만, 레거시 프로젝트를 담당해 개발한 경험이 있다. 그리고 프로젝트를 개발 sykeem.tistory.com 클린아키텍처에서 가장 중요한 것은 의존성 규칙이다. 모든 계층 간 의존성..
왜 클린 아키텍처를 공부하게 되었는가? 나는 모놀리식 아키텍처, 계층형 아키텍처(MVC) 기반의 개인 프로젝트와 짧지만, 레거시 프로젝트를 담당해 개발한 경험이 있다. 그리고 프로젝트를 개발하는데 있어 나는 코드적인 기준(가독성)을 충족하고 빠르고 쉽게(=낮은 개발 비용)으로 개발을 하고싶었다. 하지만 기존의 계층형 아키텍처의 구조상 이는 쉬운 일이 아니었다. 계층형 아키텍처(Layered Architecture) 계층형 아키텍처의 내부 컴포넌트는 수평한 계층(Layer)으로 구성되며, 각 계층은 애플리케이션에서 주어진 역할을 수행하게 된다. 계층형 레이어의 종류에는 프리젠테이션(presentation, 웹 계층), 비즈니스(business, 도메인계층), [퍼시스턴스(persistence) , 데이터베..
KEEMSY
'아키텍처' 태그의 글 목록