SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
2022. 4. 25(월) 오후 2시 – 3시 30분
내구성 있는 애플리케이션 개발하기
(akka. cloud native application)
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
목차
• 애플리케이션을 개발해요. 우리에게 필요한 것은 무엇?
• 어떻게 만들죠?
• 디자인해요 <Application>
• 그림을 그려요 <Cloud Infra>
• 패키징하고 배달해요 <CI/CD>
• 건강을 유지해요 <Monitoring/Alert/TroubleShooting>
• 실전 데뷔 <Go Live!>
• 꾸준히 가꾸고 성장시켜요 <DevOps>
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
애플리케이션을 개발해요.
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
애플리케이션을 개발해요. 우리에게 필요한 것은 무엇?
• 애플리케이션 기능 정의
• 에코 시스템들과의 관계 파악(토폴로지 정의)
• 통신 방식 정의
• HTTP/1.1, HTTP/2, gRPC, TCP, UDP, FTP, w/TLS
• Unicast/Multicast/Broadcast, Sync/Async
• 요청-응답(Request-Response) 모델
• 발행-구독(Pub-Sub) 모델
• 각 계층에 적합한 솔루션 선정
• 구성원들 기술 스택과 도입비용(Money) & 관리비용(Learning Curve, MGMT Effort) 고려
• 타겟 시스템의 민감도에 따른 제반사항도 검토
• 개발 랭귀지, 프레임웍, 패키지 라이브러리 선택
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
애플리케이션을 개발해요. 우리에게 필요한 것은 무엇?
• 스피드~ (Time to Market / Agile)
• As-WAS : 투자계획, 보고, 입찰/평가/선정, 발주, 선적, 입고, OS/계정 생성, 패키지/미들웨어 설
치…
• Cloud =
• 기능 정의 → 로드맵 수립 → 스프린트~
• 신속한 전개와 확장
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
어떻게 만들죠?
• Cloud Native 하게
• 클라우드의 특징을 최대로 활용하고 대응할 수 있도록 어플리케이션을 구축하고 실행하는 접근
방식
• Cloud Native Computing Foundation (CNCF) Definition / 2015 Linux Foundation 에서 결성
• Cloud Native 기술은 퍼블릭, 프라이빗, 그리고 하이브리드 클라우드와 같은 현대적, 동적인 환
경에서 확장 가능한 애플리케이션을 개발하고 실행할 수 있게 해준다. 컨테이너, 서비스 메쉬,
마이크로서비스, 불변(Immutable) 인프라, 그리고 선언형(Declarative) API가 이러한 접근 방식
의 예시들이다.
• 이 기술은 회복성, 관리 편의성, 가시성을 갖춘 느슨하게 결합된 시스템을 가능하게 한다. 견고
한 자동화 기능을 함께 사용하면, 엔지니어는 영향이 큰 변경을 최소한의 노력으로 자주, 예측
가능하게 수행할 수 있다.
• https://github.com/cncf/toc/blob/main/DEFINITION.md#%ED%95%9C%EA%B5%AD%EC%96%B4
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
어떻게 만들죠?
• Cloud Native – Main Tenets
• DevOps
• 소프트웨어 제공과 인프라 변경을
자동화하기위한 개발자와 운영자간의 협업체계
• Continuous Delivery
• 빠르고 안정적인 릴리즈
• Microservices
• HTTP API를 통해 통신하는 소규모 독립 서비스 모음의 아키텍처
• Containers
• 단일 서버를 하나 이상의 격리된 컨테이너로 동적 분할하여 경량 가상화를 제공
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
어떻게 만들죠?
• Cloud Native 특징을 고려
• 분산 환경 (Micro Service Architecture)
• 확장성 (유연성)
• 트래픽 증가 가속, 대용량 트래픽 유입
• GSLB(Global Region 서비스), CDN(Static 컨텐츠), Dynamic 컨텐츠 네트워크 가속
• Data Cache, Read Replica
• 내결함성 (고가용성/복원력)
• 장애 상황 대비 : 이중화(SPOF 단일지점장애 회피), 백업/복제, 재해복구센터
• 보안성
• 시스템자산 보호
• DDOS Attack, 어뷰징, 해킹, 보안취약점으로부터 보호
• 데이터자산 보호
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
디자인해요 <Application>
• Frontend, Backend Layer
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
디자인해요 <Application>
• Layered Architecture
• 전형적인 엔터프라이즈 애플리케이션 표준
N-계층 아키텍처
• 역할에 따라 수평적으로 계층을 나눔
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
디자인해요 <Application>
• Hexagonal Architecture
• 최근 비즈니스 애플리케이션은
프레젠테이션 계층 및 퍼시스트턴스 계층
외에 다양한 시스템과 인터페이스를
필요로 함
• 레이어 간의 원하지 않는 종속성이나
비즈니스 로직으로 인한
사용자 인터페이스 코드의 오염을 방지
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
디자인해요 <Application>
• API Spec (Service Contract)
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
디자인해요 <Application>
• Sync/Async
BentoML API
Argos API
EmartApp API
Argos Admin
evaluate(ContentID, Text, ImageURL,
Callback_URL)
201 Accepted
block(ContentID)
DB
AWS
Rekognition
API
BackgroundTask
/ Async
3s~50s
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
디자인해요 <Application>
• 서비스 오케스트레이션
• 분산 트랜잭션/보상 트랜잭션
• 서비스 메쉬
• 서비스 라우팅, 트래픽관리
• 텔레메트리 (모니터링, 추적 및 분석)
→ Netflix OSS(Java) or Istio(K8S)
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
디자인해요 <Application>
• 인증/인가
• API Gateway
• API Key, Oauth(JWT Token), Single Sign On
• Data Grid
• Logging / Exception Handling
• Resource Connection Client
• DB Connection Pool, Kafka Client, Http Client
• (Http)Client Connection/Read Timeout
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
그림을 그려요 <Cloud Infra>
• Reference Architecture
• Best Practice
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
그림을 그려요 <Cloud Infra>
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
그림을 그려요 <Cloud Infra>
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
패키징하고 배달해요 <CI/CD>
• CI
• Code Quality Process
• Code 품질 점검, 취약점 진단, 스타일 점검,
유닛테스트
• SonarQube
• 지속적인 검사까다로운 이슈 탐지
• 20개 이상의 프로그래밍 언어 지원
• DevOps 도구와 통합가능
• 소스 품질의 중앙 집중화
• Container 취약점 스캔
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
패키징하고 배달해요 <CI/CD>
• CD
• 배포전략 : Blue/Green, Canary
• Roll Out / Roll Back
• ArgoCD
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
건강을 유지해요 <Monitoring/Alert/TroubleShooting>
• 헬스체크
• 네트워크, 런타임 인스턴스, CPU/Mem 리소스, 애플리케이션 프로세스(데몬), 의존관계의 서비
스 및 자원
• 성능모니터링, 알람
• 트러블슈팅 - 성능이슈, 오류 또는 장애 발생 원인 분석
• 로깅과 분산 트레이싱
• Zipkin, Jaeger, Datadog
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
실전 데뷔 <Go Live!>
• 서비스 런칭은 서비스 계정으로
• 보안성 검토
• 망 보안 – 보안인증서(TLS)
• 사용자 접근제어 - 인증 / 인가
• 보안 취약점
• DDOS/Abusing
• 통합테스트
• 의존관계에 있는 시스템
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
실전 데뷔 <Go Live!>
• 성능/부하/마라톤 테스트
• 목표 TPS/시나리오 수립
• 성능 튜닝 - 스케일 아웃
• 미들웨어 (워커 스레드,
프로세스 조정,)
• 애플리케이션 (DB Query,
DB Connection Pool)
• 리소스
• 주의사항
• 의존관계 시스템에 부하를
가중시킬 수 있음
• 더미서버 또는 더미코드
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
실전 데뷔 <Go Live!>
• Chaos Engineering
• 분산환경에서 각종 장애 조건을 견딜 수 있는 시스템의 신뢰성을 확보하기 위한
엔지니어링 기법
• Netflix : Chaos Monkey(Instance) / Gorilla(Zone) / Kong(Region), KubeMonkey
• Gremlin
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
실전 데뷔 <Go Live!>
• Chaos Engineering 실험 결과 측정
• 장애 감지 시간?
• 문제 인지 및 최초 알림 시간
• 사내 전체 전파 시간?
• 자동 롤백 시작 시점?
• 부분 복구 시간?
• 수동 문제 해결 및 복구 시간?
• 전체 복구 및 안정화 시간?
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
다음 이야기
• Argos <부적절 리뷰 필터> 개발 이야기
• AI DevOps Application 편 – 유니콘에 올라탄 FastAPI
• AI DevOps Cloud Infra편 – AWS EKS와 서비스메쉬
• Chaos Engineering/Fail-Over/Troubleshooting 편
• Goldmine <상품검색> 서비스 오픈 후기
sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02
End

Mais conteúdo relacionado

Mais procurados

Dkos(mesos기반의 container orchestration)
Dkos(mesos기반의 container orchestration)Dkos(mesos기반의 container orchestration)
Dkos(mesos기반의 container orchestration)Won-Chon Jung
 
이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정Arawn Park
 
RESTful API 제대로 만들기
RESTful API 제대로 만들기RESTful API 제대로 만들기
RESTful API 제대로 만들기Juwon Kim
 
GraphQL vs REST
GraphQL vs RESTGraphQL vs REST
GraphQL vs RESTGreeceJS
 
Introduction to REST - API
Introduction to REST - APIIntroduction to REST - API
Introduction to REST - APIChetan Gadodia
 
REST APIs with Spring
REST APIs with SpringREST APIs with Spring
REST APIs with SpringJoshua Long
 
Design Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIsDesign Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIsStormpath
 
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud GatewaySpring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud GatewayIván López Martín
 
메타버스와 생성형 AI 조사(김병철) 20230323.pptx
메타버스와 생성형 AI 조사(김병철) 20230323.pptx메타버스와 생성형 AI 조사(김병철) 20230323.pptx
메타버스와 생성형 AI 조사(김병철) 20230323.pptxssuserc0b359
 
Dapr - A 10x Developer Framework for Any Language
Dapr - A 10x Developer Framework for Any LanguageDapr - A 10x Developer Framework for Any Language
Dapr - A 10x Developer Framework for Any LanguageBilgin Ibryam
 
예외처리가이드
예외처리가이드예외처리가이드
예외처리가이드도형 임
 
Massive service basic
Massive service basicMassive service basic
Massive service basicDaeMyung Kang
 
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버Heungsub Lee
 
What is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | EdurekaWhat is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | EdurekaEdureka!
 
1. 아키텍쳐 설계 프로세스
1. 아키텍쳐 설계 프로세스1. 아키텍쳐 설계 프로세스
1. 아키텍쳐 설계 프로세스Terry Cho
 
Declarative Clients in Spring
Declarative Clients in SpringDeclarative Clients in Spring
Declarative Clients in SpringVMware Tanzu
 
Express JS Middleware Tutorial
Express JS Middleware TutorialExpress JS Middleware Tutorial
Express JS Middleware TutorialSimplilearn
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해Terry Cho
 
Scouter와 influx db – grafana 연동 가이드
Scouter와 influx db – grafana 연동 가이드Scouter와 influx db – grafana 연동 가이드
Scouter와 influx db – grafana 연동 가이드Ji-Woong Choi
 

Mais procurados (20)

Dkos(mesos기반의 container orchestration)
Dkos(mesos기반의 container orchestration)Dkos(mesos기반의 container orchestration)
Dkos(mesos기반의 container orchestration)
 
이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정이벤트 기반 분산 시스템을 향한 여정
이벤트 기반 분산 시스템을 향한 여정
 
RESTful API 제대로 만들기
RESTful API 제대로 만들기RESTful API 제대로 만들기
RESTful API 제대로 만들기
 
GraphQL vs REST
GraphQL vs RESTGraphQL vs REST
GraphQL vs REST
 
Introduction to REST - API
Introduction to REST - APIIntroduction to REST - API
Introduction to REST - API
 
REST APIs with Spring
REST APIs with SpringREST APIs with Spring
REST APIs with Spring
 
Design Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIsDesign Beautiful REST + JSON APIs
Design Beautiful REST + JSON APIs
 
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud GatewaySpring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
 
메타버스와 생성형 AI 조사(김병철) 20230323.pptx
메타버스와 생성형 AI 조사(김병철) 20230323.pptx메타버스와 생성형 AI 조사(김병철) 20230323.pptx
메타버스와 생성형 AI 조사(김병철) 20230323.pptx
 
Dapr - A 10x Developer Framework for Any Language
Dapr - A 10x Developer Framework for Any LanguageDapr - A 10x Developer Framework for Any Language
Dapr - A 10x Developer Framework for Any Language
 
예외처리가이드
예외처리가이드예외처리가이드
예외처리가이드
 
Massive service basic
Massive service basicMassive service basic
Massive service basic
 
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
 
What is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | EdurekaWhat is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | Edureka
 
1. 아키텍쳐 설계 프로세스
1. 아키텍쳐 설계 프로세스1. 아키텍쳐 설계 프로세스
1. 아키텍쳐 설계 프로세스
 
Declarative Clients in Spring
Declarative Clients in SpringDeclarative Clients in Spring
Declarative Clients in Spring
 
Express JS Middleware Tutorial
Express JS Middleware TutorialExpress JS Middleware Tutorial
Express JS Middleware Tutorial
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해
 
Scouter와 influx db – grafana 연동 가이드
Scouter와 influx db – grafana 연동 가이드Scouter와 influx db – grafana 연동 가이드
Scouter와 influx db – grafana 연동 가이드
 
Restful api
Restful apiRestful api
Restful api
 

Semelhante a [전득진_22년4월] AI_ML담당_Tech_seminar-emart.pdf

꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가VMware Tanzu Korea
 
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSAVMware Tanzu Korea
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3uEngine Solutions
 
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...문기 박
 
임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입
임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입
임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입Chanjin Park
 
All about Data Center Migration Session 1. <Case Study> 오비맥주 사례로 알아보는 DC 마이그레...
All about Data Center Migration Session 1. <Case Study> 오비맥주 사례로 알아보는 DC 마이그레...All about Data Center Migration Session 1. <Case Study> 오비맥주 사례로 알아보는 DC 마이그레...
All about Data Center Migration Session 1. <Case Study> 오비맥주 사례로 알아보는 DC 마이그레...BESPIN GLOBAL
 
VSTS와 Azure를 이용한 팀 프로세스 관리
VSTS와 Azure를 이용한 팀 프로세스 관리VSTS와 Azure를 이용한 팀 프로세스 관리
VSTS와 Azure를 이용한 팀 프로세스 관리Gyuwon Yi
 
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian 대한민국
 
금융 서비스 패러다임의 전환 가속화 시대, 신한금융투자의 Cloud First 전략 - 신중훈 AWS 솔루션즈 아키텍트 / 최성봉 클라우...
금융 서비스 패러다임의 전환 가속화 시대, 신한금융투자의 Cloud First 전략  - 신중훈 AWS 솔루션즈 아키텍트 / 최성봉 클라우...금융 서비스 패러다임의 전환 가속화 시대, 신한금융투자의 Cloud First 전략  - 신중훈 AWS 솔루션즈 아키텍트 / 최성봉 클라우...
금융 서비스 패러다임의 전환 가속화 시대, 신한금융투자의 Cloud First 전략 - 신중훈 AWS 솔루션즈 아키텍트 / 최성봉 클라우...Amazon Web Services Korea
 
(Samuel) sumo logic producuts 21th jan 2021(slideshare)
(Samuel) sumo logic producuts 21th jan 2021(slideshare)(Samuel) sumo logic producuts 21th jan 2021(slideshare)
(Samuel) sumo logic producuts 21th jan 2021(slideshare)SAMUEL SJ Cheon
 
Service-Oriented Architecture in a Nutshell
Service-Oriented Architecture in a NutshellService-Oriented Architecture in a Nutshell
Service-Oriented Architecture in a NutshellSamsung Electronics
 
ALM과 DevOps 그리고 Azure DevOps
ALM과 DevOps 그리고 Azure DevOpsALM과 DevOps 그리고 Azure DevOps
ALM과 DevOps 그리고 Azure DevOpsTaeyoung Kim
 
Fif기고문 050311 05
Fif기고문 050311 05Fif기고문 050311 05
Fif기고문 050311 05Eugene Chung
 
네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망Wonsuk Lee
 
네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망Wonsuk Lee
 
[DDC 2018] Metatron 오픈소스화 및 생태계 구축 (SKT 이정룡, 김지호)
[DDC 2018] Metatron 오픈소스화 및 생태계 구축 (SKT 이정룡, 김지호)[DDC 2018] Metatron 오픈소스화 및 생태계 구축 (SKT 이정룡, 김지호)
[DDC 2018] Metatron 오픈소스화 및 생태계 구축 (SKT 이정룡, 김지호)Metatron
 
Application framework 정의및비교(김일영)_20110609
Application framework 정의및비교(김일영)_20110609Application framework 정의및비교(김일영)_20110609
Application framework 정의및비교(김일영)_20110609Mike 김일영
 
AWS Builders Industry edition : 개발자커리어 점프 플랫폼, 점핏
AWS Builders Industry edition : 개발자커리어 점프 플랫폼, 점핏AWS Builders Industry edition : 개발자커리어 점프 플랫폼, 점핏
AWS Builders Industry edition : 개발자커리어 점프 플랫폼, 점핏Amazon Web Services Korea
 
No-code로 성공적인 디지털 트랜스포메이션을 위한 서버리스 마이크로서비스 만들기 - 이호규 CTO, NTUPLE :: AWS Summi...
No-code로 성공적인 디지털 트랜스포메이션을 위한 서버리스 마이크로서비스 만들기 - 이호규 CTO, NTUPLE :: AWS Summi...No-code로 성공적인 디지털 트랜스포메이션을 위한 서버리스 마이크로서비스 만들기 - 이호규 CTO, NTUPLE :: AWS Summi...
No-code로 성공적인 디지털 트랜스포메이션을 위한 서버리스 마이크로서비스 만들기 - 이호규 CTO, NTUPLE :: AWS Summi...Amazon Web Services Korea
 

Semelhante a [전득진_22년4월] AI_ML담당_Tech_seminar-emart.pdf (20)

꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가
 
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSA
 
2020.02.06 우리는 왜 glue를 버렸나?
2020.02.06 우리는 왜 glue를 버렸나?2020.02.06 우리는 왜 glue를 버렸나?
2020.02.06 우리는 왜 glue를 버렸나?
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3
 
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
 
임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입
임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입
임베디드 소프트웨어 개발에 아키텍처 프랙티스 도입
 
All about Data Center Migration Session 1. <Case Study> 오비맥주 사례로 알아보는 DC 마이그레...
All about Data Center Migration Session 1. <Case Study> 오비맥주 사례로 알아보는 DC 마이그레...All about Data Center Migration Session 1. <Case Study> 오비맥주 사례로 알아보는 DC 마이그레...
All about Data Center Migration Session 1. <Case Study> 오비맥주 사례로 알아보는 DC 마이그레...
 
VSTS와 Azure를 이용한 팀 프로세스 관리
VSTS와 Azure를 이용한 팀 프로세스 관리VSTS와 Azure를 이용한 팀 프로세스 관리
VSTS와 Azure를 이용한 팀 프로세스 관리
 
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
 
금융 서비스 패러다임의 전환 가속화 시대, 신한금융투자의 Cloud First 전략 - 신중훈 AWS 솔루션즈 아키텍트 / 최성봉 클라우...
금융 서비스 패러다임의 전환 가속화 시대, 신한금융투자의 Cloud First 전략  - 신중훈 AWS 솔루션즈 아키텍트 / 최성봉 클라우...금융 서비스 패러다임의 전환 가속화 시대, 신한금융투자의 Cloud First 전략  - 신중훈 AWS 솔루션즈 아키텍트 / 최성봉 클라우...
금융 서비스 패러다임의 전환 가속화 시대, 신한금융투자의 Cloud First 전략 - 신중훈 AWS 솔루션즈 아키텍트 / 최성봉 클라우...
 
(Samuel) sumo logic producuts 21th jan 2021(slideshare)
(Samuel) sumo logic producuts 21th jan 2021(slideshare)(Samuel) sumo logic producuts 21th jan 2021(slideshare)
(Samuel) sumo logic producuts 21th jan 2021(slideshare)
 
Service-Oriented Architecture in a Nutshell
Service-Oriented Architecture in a NutshellService-Oriented Architecture in a Nutshell
Service-Oriented Architecture in a Nutshell
 
ALM과 DevOps 그리고 Azure DevOps
ALM과 DevOps 그리고 Azure DevOpsALM과 DevOps 그리고 Azure DevOps
ALM과 DevOps 그리고 Azure DevOps
 
Fif기고문 050311 05
Fif기고문 050311 05Fif기고문 050311 05
Fif기고문 050311 05
 
네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망
 
네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망네이티브 웹앱 기술 동향 및 전망
네이티브 웹앱 기술 동향 및 전망
 
[DDC 2018] Metatron 오픈소스화 및 생태계 구축 (SKT 이정룡, 김지호)
[DDC 2018] Metatron 오픈소스화 및 생태계 구축 (SKT 이정룡, 김지호)[DDC 2018] Metatron 오픈소스화 및 생태계 구축 (SKT 이정룡, 김지호)
[DDC 2018] Metatron 오픈소스화 및 생태계 구축 (SKT 이정룡, 김지호)
 
Application framework 정의및비교(김일영)_20110609
Application framework 정의및비교(김일영)_20110609Application framework 정의및비교(김일영)_20110609
Application framework 정의및비교(김일영)_20110609
 
AWS Builders Industry edition : 개발자커리어 점프 플랫폼, 점핏
AWS Builders Industry edition : 개발자커리어 점프 플랫폼, 점핏AWS Builders Industry edition : 개발자커리어 점프 플랫폼, 점핏
AWS Builders Industry edition : 개발자커리어 점프 플랫폼, 점핏
 
No-code로 성공적인 디지털 트랜스포메이션을 위한 서버리스 마이크로서비스 만들기 - 이호규 CTO, NTUPLE :: AWS Summi...
No-code로 성공적인 디지털 트랜스포메이션을 위한 서버리스 마이크로서비스 만들기 - 이호규 CTO, NTUPLE :: AWS Summi...No-code로 성공적인 디지털 트랜스포메이션을 위한 서버리스 마이크로서비스 만들기 - 이호규 CTO, NTUPLE :: AWS Summi...
No-code로 성공적인 디지털 트랜스포메이션을 위한 서버리스 마이크로서비스 만들기 - 이호규 CTO, NTUPLE :: AWS Summi...
 

[전득진_22년4월] AI_ML담당_Tech_seminar-emart.pdf

  • 1. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 2022. 4. 25(월) 오후 2시 – 3시 30분 내구성 있는 애플리케이션 개발하기 (akka. cloud native application)
  • 2. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 목차 • 애플리케이션을 개발해요. 우리에게 필요한 것은 무엇? • 어떻게 만들죠? • 디자인해요 <Application> • 그림을 그려요 <Cloud Infra> • 패키징하고 배달해요 <CI/CD> • 건강을 유지해요 <Monitoring/Alert/TroubleShooting> • 실전 데뷔 <Go Live!> • 꾸준히 가꾸고 성장시켜요 <DevOps>
  • 3. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 애플리케이션을 개발해요.
  • 4. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 애플리케이션을 개발해요. 우리에게 필요한 것은 무엇? • 애플리케이션 기능 정의 • 에코 시스템들과의 관계 파악(토폴로지 정의) • 통신 방식 정의 • HTTP/1.1, HTTP/2, gRPC, TCP, UDP, FTP, w/TLS • Unicast/Multicast/Broadcast, Sync/Async • 요청-응답(Request-Response) 모델 • 발행-구독(Pub-Sub) 모델 • 각 계층에 적합한 솔루션 선정 • 구성원들 기술 스택과 도입비용(Money) & 관리비용(Learning Curve, MGMT Effort) 고려 • 타겟 시스템의 민감도에 따른 제반사항도 검토 • 개발 랭귀지, 프레임웍, 패키지 라이브러리 선택
  • 5. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 애플리케이션을 개발해요. 우리에게 필요한 것은 무엇? • 스피드~ (Time to Market / Agile) • As-WAS : 투자계획, 보고, 입찰/평가/선정, 발주, 선적, 입고, OS/계정 생성, 패키지/미들웨어 설 치… • Cloud = • 기능 정의 → 로드맵 수립 → 스프린트~ • 신속한 전개와 확장
  • 6. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 어떻게 만들죠? • Cloud Native 하게 • 클라우드의 특징을 최대로 활용하고 대응할 수 있도록 어플리케이션을 구축하고 실행하는 접근 방식 • Cloud Native Computing Foundation (CNCF) Definition / 2015 Linux Foundation 에서 결성 • Cloud Native 기술은 퍼블릭, 프라이빗, 그리고 하이브리드 클라우드와 같은 현대적, 동적인 환 경에서 확장 가능한 애플리케이션을 개발하고 실행할 수 있게 해준다. 컨테이너, 서비스 메쉬, 마이크로서비스, 불변(Immutable) 인프라, 그리고 선언형(Declarative) API가 이러한 접근 방식 의 예시들이다. • 이 기술은 회복성, 관리 편의성, 가시성을 갖춘 느슨하게 결합된 시스템을 가능하게 한다. 견고 한 자동화 기능을 함께 사용하면, 엔지니어는 영향이 큰 변경을 최소한의 노력으로 자주, 예측 가능하게 수행할 수 있다. • https://github.com/cncf/toc/blob/main/DEFINITION.md#%ED%95%9C%EA%B5%AD%EC%96%B4
  • 7. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 어떻게 만들죠? • Cloud Native – Main Tenets • DevOps • 소프트웨어 제공과 인프라 변경을 자동화하기위한 개발자와 운영자간의 협업체계 • Continuous Delivery • 빠르고 안정적인 릴리즈 • Microservices • HTTP API를 통해 통신하는 소규모 독립 서비스 모음의 아키텍처 • Containers • 단일 서버를 하나 이상의 격리된 컨테이너로 동적 분할하여 경량 가상화를 제공
  • 8. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 어떻게 만들죠? • Cloud Native 특징을 고려 • 분산 환경 (Micro Service Architecture) • 확장성 (유연성) • 트래픽 증가 가속, 대용량 트래픽 유입 • GSLB(Global Region 서비스), CDN(Static 컨텐츠), Dynamic 컨텐츠 네트워크 가속 • Data Cache, Read Replica • 내결함성 (고가용성/복원력) • 장애 상황 대비 : 이중화(SPOF 단일지점장애 회피), 백업/복제, 재해복구센터 • 보안성 • 시스템자산 보호 • DDOS Attack, 어뷰징, 해킹, 보안취약점으로부터 보호 • 데이터자산 보호
  • 9. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 디자인해요 <Application> • Frontend, Backend Layer
  • 10. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 디자인해요 <Application> • Layered Architecture • 전형적인 엔터프라이즈 애플리케이션 표준 N-계층 아키텍처 • 역할에 따라 수평적으로 계층을 나눔
  • 11. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 디자인해요 <Application> • Hexagonal Architecture • 최근 비즈니스 애플리케이션은 프레젠테이션 계층 및 퍼시스트턴스 계층 외에 다양한 시스템과 인터페이스를 필요로 함 • 레이어 간의 원하지 않는 종속성이나 비즈니스 로직으로 인한 사용자 인터페이스 코드의 오염을 방지
  • 12. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 디자인해요 <Application> • API Spec (Service Contract)
  • 13. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 디자인해요 <Application> • Sync/Async BentoML API Argos API EmartApp API Argos Admin evaluate(ContentID, Text, ImageURL, Callback_URL) 201 Accepted block(ContentID) DB AWS Rekognition API BackgroundTask / Async 3s~50s
  • 14. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 디자인해요 <Application> • 서비스 오케스트레이션 • 분산 트랜잭션/보상 트랜잭션 • 서비스 메쉬 • 서비스 라우팅, 트래픽관리 • 텔레메트리 (모니터링, 추적 및 분석) → Netflix OSS(Java) or Istio(K8S)
  • 15. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 디자인해요 <Application> • 인증/인가 • API Gateway • API Key, Oauth(JWT Token), Single Sign On • Data Grid • Logging / Exception Handling • Resource Connection Client • DB Connection Pool, Kafka Client, Http Client • (Http)Client Connection/Read Timeout
  • 16. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 그림을 그려요 <Cloud Infra> • Reference Architecture • Best Practice
  • 17. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 그림을 그려요 <Cloud Infra>
  • 18. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 그림을 그려요 <Cloud Infra>
  • 19. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 패키징하고 배달해요 <CI/CD> • CI • Code Quality Process • Code 품질 점검, 취약점 진단, 스타일 점검, 유닛테스트 • SonarQube • 지속적인 검사까다로운 이슈 탐지 • 20개 이상의 프로그래밍 언어 지원 • DevOps 도구와 통합가능 • 소스 품질의 중앙 집중화 • Container 취약점 스캔
  • 20. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 패키징하고 배달해요 <CI/CD> • CD • 배포전략 : Blue/Green, Canary • Roll Out / Roll Back • ArgoCD
  • 21. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 건강을 유지해요 <Monitoring/Alert/TroubleShooting> • 헬스체크 • 네트워크, 런타임 인스턴스, CPU/Mem 리소스, 애플리케이션 프로세스(데몬), 의존관계의 서비 스 및 자원 • 성능모니터링, 알람 • 트러블슈팅 - 성능이슈, 오류 또는 장애 발생 원인 분석 • 로깅과 분산 트레이싱 • Zipkin, Jaeger, Datadog
  • 22. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 실전 데뷔 <Go Live!> • 서비스 런칭은 서비스 계정으로 • 보안성 검토 • 망 보안 – 보안인증서(TLS) • 사용자 접근제어 - 인증 / 인가 • 보안 취약점 • DDOS/Abusing • 통합테스트 • 의존관계에 있는 시스템
  • 23. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 실전 데뷔 <Go Live!> • 성능/부하/마라톤 테스트 • 목표 TPS/시나리오 수립 • 성능 튜닝 - 스케일 아웃 • 미들웨어 (워커 스레드, 프로세스 조정,) • 애플리케이션 (DB Query, DB Connection Pool) • 리소스 • 주의사항 • 의존관계 시스템에 부하를 가중시킬 수 있음 • 더미서버 또는 더미코드
  • 24. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 실전 데뷔 <Go Live!> • Chaos Engineering • 분산환경에서 각종 장애 조건을 견딜 수 있는 시스템의 신뢰성을 확보하기 위한 엔지니어링 기법 • Netflix : Chaos Monkey(Instance) / Gorilla(Zone) / Kong(Region), KubeMonkey • Gremlin
  • 25. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 실전 데뷔 <Go Live!> • Chaos Engineering 실험 결과 측정 • 장애 감지 시간? • 문제 인지 및 최초 알림 시간 • 사내 전체 전파 시간? • 자동 롤백 시작 시점? • 부분 복구 시간? • 수동 문제 해결 및 복구 시간? • 전체 복구 및 안정화 시간?
  • 26. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 다음 이야기 • Argos <부적절 리뷰 필터> 개발 이야기 • AI DevOps Application 편 – 유니콘에 올라탄 FastAPI • AI DevOps Cloud Infra편 – AWS EKS와 서비스메쉬 • Chaos Engineering/Fail-Over/Troubleshooting 편 • Goldmine <상품검색> 서비스 오픈 후기
  • 27. sohyeong_lee@emart.com, 이소형(조이∙파트너) - D/T본부AI/ML담당, 제목 없음, 2022-04-21T16:22:02 End