AWS 솔류션 아키텍트 어소시에이트 등급 문제 풀이

한 회사는 온 디맨드 EC2 인스턴스 및 MongoDB 데이터베이스의 Auto Scaling 그룹에 배포될 데이터 분석 애플리케이션을 AWS에 구축 할 계획이다. 데이터베이스는 소규모의 임의 I/O 작업을 수행하는 높은 처리량의 워크로드가 필요할 것으로 예상된다. 솔류션 아키텍트는 최적의 시스템을 구성해야 한다. 1. Provisioned IOPS SSD ...

The Twelve Factors

Joinc 위키 문서로 복사했습니다. 이 내용을 클라우드 환경에 맞게 해석해서, 아키텍처 문서를 만드는게 최종 목표입니다.이 방법론은 Heroku의 개발자가 초안을 작성했으며, 2011년에 Adam Wiggins가 처음 발표했다.클라우드가 널리 사용 되면서 소프트웨어를 서비스 형태로 제공하는 SaaS(Software As A Service) 혹은 웹앱이라...

삼성 클라우드 : AWS Transit Gateway를 이용한 글로벌 AWS Region 네트워크 최적화

joinc(주)는 글로벌한 회사로 성정하고 있다. 이 회사는 서울리전, 도쿄리전, 캘리포니아 리전, 런던리전에 VPC를 전개하고 있다. 이외에 대한민국에 데이터 센터를 가지고 있다. 현재 회사는 VPC와 데이터센터의 네트워크 통합에 어려움을 겪고 있다. 서비스가 더 커지기 전에 이들을 통합하는 작업을 수행해야 한다. CTO는 DevOps 팀에 이들 네트워크...

MVP로 비즈니스 계획을 구현하기

애플리케이션에 대한 아이디어를 실현하는 가장 좋은 방법은 MVP(Minimum Viable Product)로 시작하는 것이다.인터넷은 수백 수천개의 회사가 경쟁하는 열린 공간이다. 이 공간에서 성공하는 것은 쉽지 않다. 성공을 하기 위해서는 고객이 원하는 것이 무엇인지를 찾아서 가능한 빨리 시장에 내놓아야 한다. MVP(Minimum Viable Produ...

DevOps와 개발자

예전에는 소프트웨어 개발 프로세스가 간단(소프트웨어 개발이 단순했다는 의미가 아니다.)했다. 개발 환경과 프로덕션 환경간의 연동방식이나 워크플로우를 많이 필요로하지 않았다. 두 개의 환경이 연결되는 유일한 워크플로우는 수동배포 정도 였을 것이다 . 이 워크플로우에서는 시스템 관리자가 물리적 서버를 관리하고 배포 업무도 수행했다. 배포가 좀 복잡해지면서 ...

Monolithic에서 Microservice Architecture로

이 문서에서는 마이크로서비스 아키텍처를 디자인하는 방법을 여러 사례를 들어서 살펴볼 것이다. 먼저 일반적인 패턴을 소개하고 AWS에서 어떻게 구축할지를 살펴보도록 하겠다.이 문서를 통해서 얻고자 하는 것은 다음과 같다. 초당 수천/수만건의 데이터를 처리하기 위한 시스템을 만들기 위한 아이디어 고가용성, 높은 확장성, 짧은 대기시간(latency), 복원력을...

견고하고 확장가능한 Go 애플리케이션 개발 - 2

후속이다.지난 문서에서 Go 애플리케이션에 클린아키텍처를 적용했다. 하지만 구조만 잡았지 세부적인 것들은 생략하고 넘어갔다. 여기에서는 테스트를 비롯하여 해당 애플리케이션이 정말로 유연하고 확장가능한지를 사례를 기반으로 살펴볼 것이다. 먼저 지난 번에 다뤘던 아키텍처를 간단히 정리하겠다. 애플리케이션은 여러 개의 레이어로 구성한다. 이때 의존성은 안쪽으로...

음식 배달 앱 아키텍처(Zomato, Swiggy)분석

이커머스 아키텍처링 문서들을 찾다가 문서를 발견했다. 이커머스와 정확하게 일치하지는 않지만 매우 비슷한 서비스이고 사용하는 기술도 비슷해서 분석하면 좋겠다 싶어서 정리하기로 했다. 위의 문서의 많은 부분을 참고하겠으나 번역 문서가 아니다.아래의 방식으로 정리할 생각이다. 1. 음식배달의 사용자 라이프 사이클 1. 요구사항 정의 1. 컴포넌트 다이어그램 ...

AWS 기반 추천 시스템 아키텍처

주식회사 joinc는 다양한 패션용품을 판매하는 인터넷 전자 상거래 서비스를 운영하고 있다. 이 회사의 CTO는 전자 상거래 시장이 격화되면서, 서비스 경쟁력을 확보하는게 중요한 과제가 됐다.CTO는 우선 과제로 개인화된 상품추천 서비스를 개발하기로 했다. 상품추천의 요구사항은 아래와 같다. 1. 사용자의 활동(Activity)를 저장하고 분석할 수 있는 ...

Shopify System Design 의 분석

우리는 Shopify 서비스를 분석 할 것이다. 이커머스는 프론트 앤드, 백앤드, Payment, 주문, 배송, 상품(Products), 구매자, 사업자(몰 운영자), CRM, BI, 각 종 백오피스, 데이터베이스, 미디어처리, 메시지 처리, API를 포함한 매우 복잡한 시스템이다. 이러한 복잡한 시스템이 어떻게 구성되는지를 살펴보는 것은 엔지니어에게는 매...