
아키텍처 설계 및 평가 학습 가이드라인 (커리큘럼)
많은 기업의 시니어 레벨 육성을 위한 아키텍처 설계 요구에 부응하기 위해, 또한 대용량 트래픽을 다루는 국내 프론트엔드 모니터링 1위 솔루션 IMQA를 다루면서, 현업에 맞는 대규모 과정으로 업데이트를 했습니다. (같이 일한 IMQA 식구들의 노하우가 너무 컸습니다. )
프레임워크 내부를 설명하는 전통적인 패턴과 최신 트랜드를 반영한 패턴들을 조화롭게 설명하였고 , 실제 사용되는 Use Case들 기반으로 많은 부분들을 녹였습니다.
S사 5일 강의 과정에 대한 피드백은 맨 마지막에 붙이도록 하며, 커리큘럼에 대해서 공유를 합니다. 많은 분들이 아키텍처 설계 / 평가 코스웍을 만드실때 참고하시길 바랍니다.
소프트웨어 설계 개론및 확장가능한 대용량 서비스 아키텍처 (1일차)
소프트웨어 설계 이론 (CMU – QAW , Architecture Driver, ATAM 등)
CMU (카네기멜론 대학)의 소프트웨어 아키텍처 프로스세에 대해서 전반적으로 설명을 하는 시간을 가집니다. 그리고 이 프로세스에 대한 문서를 google docs를 공유함으로써, 실제 프로젝트가 끝나면 설계경험을 가지게 하는 것이 목적입니다.
확장 가능한 웹서비스 아키텍처
- 서비스 구성
- 복제
- 파티셔닝(샤딩)
- Consistent Hasing
- 캐시 사용 전략 + Redis Usecase
- Proxy / Load Balancer
- Queue (RabbitMQ vs Kafka)
- 데이터 베이스 (CAP – PACELC)
- 실사례 아키텍처 (Lambda, Kappa, Uber)
클라우드 + MSA패턴
- 긴 트랜잭션 관리
- 데이터베이스 패턴
- 일관성 유지하기 패턴
- 트랜잭션 관리
- 쿼리 및 분리
- 서비스 통신방식
- API 접근
- 서비스 검색
- 배포
- Scatter+Gather , Map Reduce, Materialized View, Sidecar등
거대한 데이터 추정하기 + POSA 패턴 심화 과정 (2일차)
거대한 데이터 추정하기 (Sketch Massive Datasets)
- 맵버십 알고리즘 (bloom filter, cuckoo filter +@)
- 빈도수 추정 (Count Min Sketch + @)
- 백분위 분포 (HDRHistogram, DynaHist, DDSketch)
- 유일성 추청 (loglog, Superloglog, Hyperloglog)
아키텍처 패턴 (POSA1)
네트워크 서버 패턴 (POSA2 )
- 서비스 접근설정
- 이벤트 핸들러
- 동시성 제어
- 동기화
POSA2 패턴 이벤트 핸들러 심화
- 디스패처 만들기
- 프로토콜 확장성 추가하기
- Reflection / Component Configurator 패턴 적용
- Thread Pool 적용하기
- Proactor 패턴 맛보기
자원관리 패턴 (POSA3)
내결함성 패턴과 아키텍처 설계 (3일차)
내결함성 패턴 (Fault Tolerance 패턴)
- 내결함성 아키텍처 패턴
- 내결함성 탐지 패턴
- 오류 복구 패턴
- 부하 완화 패턴
- 결함 처리 패턴
아키텍처 설계 실습
- 인증과제 (우버 또는 다른 케이스 협의)
- CMU 아키텍처 설계 프로세스 소개 및 템플릿 전달
- Architecture Driver 도출
- High Level 설계
- Design Decision 결정
- 하위 뷰 일부 도출
웹 부하테스트 및 성능 튜닝 이론 (4일차)
부하테스트 이론 및 실습 (Jmeter)
- 부하 테스트 이론
- Jmeter 환경 구축
- 테스트 케이스 실습
- 성능 측정 하기
- 다양한 컴포넌트를 활용한 고급기법 소개
- 테스트 진행시 고객(파트너)사와 협의해야 하는 것들
- 적절한 임계점 설정하기
- 테스트 진행 절차 방안
- 테스트 진행 실사례 경험담 공유
- 성능 평가 리포트 작성 방안 전달
성능 진단 평가 및 아키텍처 평가 (5일차)
성능 측정 기법및 장애 사례 공유
- 서버- APM 및 인프라 모니터링을 활용한 장애 진단 기법 (동적, 실행 관점)
- 모바일 – 안드로이드 운영체제 커널 변천사 와 내부 아키텍처, 성능 진단 사례
- 웹 프론트엔드 성능 지표
- AI 모델 성능 평가 사례 (모델 품질, 데이터 품질)
아키텍처 평가 기법 및 개선하기
- 아키텍처 시각화 지표 (Archiecture Viusalization)
- 질서의 본질 (약식)
- 리펙토링 실사례
- QAS (Quality Attribute 시나리오) 검증
- 아키텍처 접근법 분석서 리뷰
실 강의 피드백
Samsung SDS 5일 코스에 대한 피드백 내용을 공유드립니다.
| 1. 강의의 배운점/좋았던점을 작성해주세요. | ||||||||
| – 최고입니다.근10년동안 이런 최신기술을 한꺼번에 본 적은 없었네요 자료도 너무 소중하고 강사님 열정도 넘치십니다. 뭔가 알을 깬 기분입니다 – 자세하고 풍부한 지식 전달 감사합니다! – 전문적인 강의가 좋았습니다 – 다양한 기술트랜드를 배울수 았어 광장히 유익했습니다. – 다양한 실제 적용 사례를 통해 이해도를 높일 수 있었습니다 – 몰랐던 내용이 많아서 많이 배웠습니다. – 설계에 대한 다양한 패턴을 알게 됨 – 다양한 평가 툴과 실사례를 통해 다양하게 배울 수 있었습니다. – 실제 사례들에 대한 소개 – 알기 힘든 전문적인 부분, 딥하게 현업에 대해서 알려주셔서 감사합니다 – 다양한 솔루션과 실사례들의 구체적인 설명- 아키텍처에 대해 이해할 수 있는 시간이었습니다. 감사합니다. – 유익한 내용이었습니다. – 최신 트렌드 학습이 좋았음 – 친절하게 늦은시간까지도 답변 주셔서 너무 감사드립니다. – 최근 업계 현황- 실습이 내용이해에 많은 도움이 되었습니다. – 교육이 알찼고 실제 사례도 알려주셔서 좋았음 – 새로운 내용을 배울 수 있어서 기술적인 범위를 넓힐 수 있었습니다. – 다양한 교육을 받을 수 있어 좋았습니다. – 많은 정보를 알려주셔서 좋았습니다. – 실제 적용한 사례를 통해 전반적인 아키텍처 흐름을 배울 수 있어서 너무 좋았습니다! – 최신기능 – 강의자료를 너무 잘 준비해주셔서 좋았습니다. | ||||||||
| 2. 강의의 개선점/보완점을 작성해주세요. | ||||||||
| – 이 내용을 좀 더 길고 자세하게 배우면 좋을거 같습니다~ (2) – 너무 짧은 시간에 많은 내용을 다루는거 같습니다. 이 과정을 시간배정을 늘렸으면 좋겠습니다 – AA과정의 개선 보완점일듯 합니다, 코스웍과제+인증과제 는 제한된 시간에 하기엔 너무 많아요. – 적은 시간에 방대한 양이 제공됨 (5) – 교육시긴 대비 실습시간이 부족해서 실습하는데 다소 어려움이 있었습니다. 인증과제와 비슷한 포맷으로 실습이 이루어지면 좋겠습니다. – 너무 어렵습니다.. – 강의 시간을 더 할당해서 자세하게 듣고 싶습니다. – 설계 피드백을 받는 시간이 너무 부족했습니다. – 강의받는 사람들의 업무에 대해서 미리 좀 더 자세히 공유되어 있었다면 좋았을것 같습니다. – 시간이.. .너무 부족해요. 공부하고 개념을 이해하는 시간이 부족했습니다.. – 실습이 시간에 비해 너무 할게 큽니다 |
강의 요청을 하시는 분들에게
시간당 25만원이 아니면 강의를 하지 않습니다. (최소 3시간 보장)
다만 수도권이 아닌 지방이라면 지식 공유를 위해 훨씬 저렴하게 해 드릴 생각이 있습니다. 또한 수익 전액에 대해서 취약계층이나 장애인 기부를 하는 공공의 강의라면 차비와 숙박비만 지원해 주시면, 2,3시간의 특강은 얼마든지 가능합니다.
indigoguru@gmail.com 으로 연락을 주시면 됩니다. 감사합니다.