SlideShare a Scribd company logo
Serverless로 만드는
쉽고 효율적인 Clova Extension
NAVER PaaS
오승현
발표자 소개
오승현
NAVER PaaS
사내 Serverless 플랫폼 개발 중
Apache Openwhisk 코드 기여
Serverless를 활용한 클로바 CEK로 사내 엔지니어링 데이 참가
Contents 1
2
3
Serverless Computing 101
서버리스로 만드는 클로바 익스텐션 (클로바로 잃어버린 내 폰 찾기 )
서버리스 프레임워크로 익스텐션 운영하기
1 Serverless Computing 101
Runtimes, Function as a Service
1. Serverless Computing 101
1. Serverless Computing 101
1. Serverless Computing 101
Serverless
서버가 없는 건가요?
1. Serverless Computing 101
추상화된
서버
함수 단위
동작
사용한만큼
지불
유연하고 빠른
확장성
1. Serverless Computing 101
* Event Driven
Cloud Computing Service
1. Serverless Computing 101
클로바에게
불을 켜달라고 한다
Event
불을 켠다
Action
1. Serverless Computing 101
불을 켜줘!
API Server
9AM 9PM12AM
전통적인 방식에서의 사용자 이벤트 처리
이벤트(request) 대기
1. Serverless Computing 101
불을 켜줘!
API Server
9AM 9PM12AM
사용하지 않아도 비용 지불
1. Serverless Computing 101
불을 켜줘!
API Server
9AM 9PM12AM
장애 대응에 대한 운영 이슈
1. Serverless Computing 101
HA, LB, Active-Active, Active-Passive …
Failover
Auto scaling, Scale Up, Scale Out
Monitoring (Health Check)
서버가 늘어날 때마다 늦어지는 퇴근시간
1. Serverless Computing 101
Serverless
서버리스에서의 이벤트 처리
자원 할당
1. Serverless Computing 101
이벤트 발생
Stateless
코드 실행
자원 회수
1. Serverless Computing 101
Resource
서버의 자원을 시간 축으로 공유
이벤트 발생시에만 자원 할당 및 요금 지불
불을 켜줘!
10ms
불을 켜줘!
10ms
불을 켜줘!
10ms
1. Serverless Computing 101
서버의 자원을 시간 축으로 공유
이벤트 발생시에만 자원 할당 및 요금 지불
10ms 10ms 10ms
= 30ms
1. Serverless Computing 101
Resource
유연한 확장성 (Scalability)
불을 켜줘!
Resource
Resource
Resource
불을 켜줘! 불을 켜줘!
Scale Out
1. Serverless Computing 101
$ 33.97
(Cloud Computing Service)
+ extra cost for Autoscaling / LB
t2.medium 2Core, 4GB
1000만 건 요청 처리 비용 비교 (A사)
$ 1.80
(Cloud Function Service)
Memory 256Mb
1. Serverless Computing 101
서버 자원을 프로비저닝 하거나 관리할 필요 없음
오로지 비지니스로직(Code) 에만 집중
이벤트(Event)에 의해 알아서 실행 및 확장
1. Serverless Computing 101
사용자 호출에 따른
이벤트(Event) 기반으로 동작하는 와 아주 잘 맞음!
1. Serverless Computing 101
2 서버리스로 만드는 Clova Extension
클로바로 잃어버린 내폰 찾기
2. 서버리스로 만드는 Clova Extension
2. 서버리스로 만드는 Clova Extension
24/ 30
2. 서버리스로 만드는 CEK<데모영상, 아이폰찾기>
1. Interaction 모델
Clova에서 interaction 모델이란, 음성으로부터 인식된 사용자의 요청을
extension에 전달하기 위해 정형화된 포맷(JSON)으로 바꿔주는 규칙을 명
세한 것입니다.
2. Extension 서버 (HTTPS)
Extension이 실행되는 웹 서버입니다. Clova가 사용자의 발화를 분석한 결과나 기
본적으로 제공하는 의도를 전달했을 때 extension 서버는 이를 처리하여 알맞은 응
답을 반환합니다.
2. 서버리스로 만드는 Clova Extension
2. 서버리스로 만드는 Clova Extension
Slot (정보) Intent (의도)Extension 이름
내폰찾기로 아이폰 찾아줘
2. 서버리스로 만드는 Clova Extension
Find My iPhone
Extension
API Server
Find My Phone Service
ClovaAPI Service
24/7 Operation
(HA/Scales/Failover)
내폰찾기 Extension 운영에 필요한 시스템 아키텍쳐
JSON
(Slot, Intent)
Request
2. 서버리스로 만드는 Clova Extension
Find My iPhone
Extension
Function
Find My Phone Service
ClovaAPI Service
24/7 Operation
(HA/Scales/Failover)
서버리스로 웹 API 서버 추상화 & 함수만 작성
2. 서버리스로 만드는 CEK
Microservice on Serverless
- UI에서 바로 작성하고 서비스를 배포하는 것이 가능
- 웹 액션으로 만들고 API Gateway를통해 end-point 설정 및 CEK 연동
2. 서버리스로 만드는 CEK
Microservice on Serverless
- UI에서 바로 작성하고 서비스를 배포하는 것이 가능
- 웹 액션으로 만들고 API Gateway를통해 end-point 설정 및 CEK 연동
2. 서버리스로 만드는 CEK
Microservice on Serverless
- 대부분 클라우드 업체에서 API Gateway를통한 HTTPS 프로토콜 기본 제공
- 별도의 SSL 인증서 구축 필요 없음
24/ 30
2. 서버리스로 만드는 CEK<데모영상, 갤럭시찾기>
2. 서버리스로 만드는 CEK
Microservice on Serverless
- 신속하게 새로운 서비스 연동 및 기능 추가 가능
Find My iPhone
Extension
Function
Find My Phone Service
ClovaAPI Service
VoIP Call
IFTTT VoIP Service
ICloud
Function
IFTTT
Function
새로운 서비스 연동 / 스펙 변경
2. 서버리스로 만드는 CEK
Microservice on Serverless
- 신속하게 새로운 서비스 연동 및 기능 추가 가능
Find My iPhone
Extension
Function
Find My Phone Service
ClovaAPI Service
VoIP Call
IFTTT VoIP Service
ICloud
Function
IFTTT
Function
BUILD / TEST / DEPLOY ?
2. 서버리스로 만드는 CEK
Microservice on Serverless
- 신속하게 새로운 서비스 연동 및 기능 추가 가능
Find My iPhone
Extension
Function
Find My Phone Service
ClovaAPI Service
VoIP Call
IFTTT VoIP Service
ICloud
Function
IFTTT
Function
BUILD / TEST / DEPLOY / PRAY
2. 서버리스로 만드는 CEK
Microservice on Serverless
- 신속하게 새로운 서비스 연동 및 기능 추가 가능
Find My iPhone
Extension
Function
Find My Phone Service
ClovaAPI Service
VoIP Call
IFTTT VoIP Service
ICloud
Function
IFTTT
Function
함수 단위로 테스트 및 신속한 서비스 배포 가능
2. 서버리스로 만드는 CEK
마이크로 서비스에서 더 작은 함수 단위로 쪼개는 것이 가능
함수가 너무 많아지고 복잡해지는데.. => 함수 단위 서비스 관리(배포/빌드/테스트)의 필요!
복잡도
모노리스 마이크로서비스 서버리스
부하 분산
비용 절감
PaaS
3 서버리스 프레임워크
3. 서버리스 프레임워크 소개
3. 서버리스 프레임워크 소개
3. 서버리스 프레임워크 소개
4 / 30
풍부한 커뮤니티 지원
3. 서버리스 프레임워크 소개
$ npm install serverless ­g
$ serverless create --template hello-world
Serverless Framework 시작하기
3. 서버리스 프레임워크 소개
Credentials 설정
(클라우드 컴퓨팅 업체별로 별도 설정 필요,공식 문서 참조)
$ serverless config credentials --provider PROVIDER --key KEY –secret SECRET
3. 서버리스 프레임워크 소개
Infrastructure as a codeFunction code
3. 서버리스 프레임워크 소개
4 / 30
서비스 이름
메모리 / 시간제한
사용 언어 (NodeJS/ Python ..)
함수이름
API Gateway 설정 (이벤트)
3. 서버리스 프레임워크 소개
Function Code, Infrastructure 형상 관리
CI (Continuous Integration) 를 통한 테스트 / 빌드 / 배포
3. 서버리스 프레임워크 소개
마이크로 서비스를 운영하는데 필요한 파일 크기 6kb
3. 서버리스 프레임워크 소개
배포에 필요한 시간 1초
$ serverless deploy
3. 서버리스 프레임워크 소개
시스템 운영보다 사용자에게 더 나은 서비스를 제공하기 위한 고민
서비스 고민 함수 작성 서비스 공개
3시간
내폰 찾기 서비스를 고민하고 CEK 연동까지 걸린 시간
3. 서버리스 프레임워크 소개
클로바가 언제나 핸드폰을 찾아준다는 믿음
지난 한달 간 서비스를 운영/관리하지 않았습니다..
3. 서버리스 프레임워크 소개
Thank you.
designed by Seonghyun from Flaticon

More Related Content

What's hot

[AWS Community Day 2021] AWS와 함께하는 무중단 배포 파이프라인 개선기
[AWS Community Day 2021] AWS와 함께하는 무중단 배포 파이프라인 개선기[AWS Community Day 2021] AWS와 함께하는 무중단 배포 파이프라인 개선기
[AWS Community Day 2021] AWS와 함께하는 무중단 배포 파이프라인 개선기
SungChanHwang
 
Spring cloud on kubernetes
Spring cloud on kubernetesSpring cloud on kubernetes
Spring cloud on kubernetes
SangSun Park
 
iFun Deploy 소개
iFun Deploy 소개iFun Deploy 소개
iFun Deploy 소개
iFunFactory Inc.
 
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
iFunFactory Inc.
 
[아이펀팩토리] 클라이언트 개발자, 서버 개발 시작하기
[아이펀팩토리] 클라이언트 개발자, 서버 개발 시작하기 [아이펀팩토리] 클라이언트 개발자, 서버 개발 시작하기
[아이펀팩토리] 클라이언트 개발자, 서버 개발 시작하기
iFunFactory Inc.
 
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
Sang Don Kim
 

What's hot (6)

[AWS Community Day 2021] AWS와 함께하는 무중단 배포 파이프라인 개선기
[AWS Community Day 2021] AWS와 함께하는 무중단 배포 파이프라인 개선기[AWS Community Day 2021] AWS와 함께하는 무중단 배포 파이프라인 개선기
[AWS Community Day 2021] AWS와 함께하는 무중단 배포 파이프라인 개선기
 
Spring cloud on kubernetes
Spring cloud on kubernetesSpring cloud on kubernetes
Spring cloud on kubernetes
 
iFun Deploy 소개
iFun Deploy 소개iFun Deploy 소개
iFun Deploy 소개
 
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
[아이펀팩토리]2017 NDC 강연 자료_아이펀 엔진 개발 노트
 
[아이펀팩토리] 클라이언트 개발자, 서버 개발 시작하기
[아이펀팩토리] 클라이언트 개발자, 서버 개발 시작하기 [아이펀팩토리] 클라이언트 개발자, 서버 개발 시작하기
[아이펀팩토리] 클라이언트 개발자, 서버 개발 시작하기
 
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
 

Similar to Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 1

AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
Amazon Web Services Korea
 
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
Amazon Web Services Korea
 
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
Amazon Web Services Korea
 
무정지&무점검 서버 개발과 운영 사례
무정지&무점검 서버 개발과 운영 사례무정지&무점검 서버 개발과 운영 사례
무정지&무점검 서버 개발과 운영 사례
Taehyun Kim
 
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
Amazon Web Services Korea
 
AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016
AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016
AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016
Amazon Web Services Korea
 
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
Amazon Web Services Korea
 
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
Amazon Web Services Korea
 
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
Jongin Lee
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
[OpenInfra Days Korea 2018] (삼성전자) Evolution to Cloud Native
[OpenInfra Days Korea 2018] (삼성전자) Evolution to Cloud Native[OpenInfra Days Korea 2018] (삼성전자) Evolution to Cloud Native
[OpenInfra Days Korea 2018] (삼성전자) Evolution to Cloud Native
OpenStack Korea Community
 
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
Amazon Web Services Korea
 
[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발을 위한 AWS 컨테이너 활용사례 및 주요 도구 알아보기 - 정영준, AWS 솔루션...
[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발을 위한 AWS 컨테이너 활용사례 및 주요 도구 알아보기 - 정영준, AWS 솔루션...[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발을 위한 AWS 컨테이너 활용사례 및 주요 도구 알아보기 - 정영준, AWS 솔루션...
[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발을 위한 AWS 컨테이너 활용사례 및 주요 도구 알아보기 - 정영준, AWS 솔루션...
Amazon Web Services Korea
 
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트::  AWS S...AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트::  AWS S...
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...
Amazon Web Services Korea
 
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
Amazon Web Services Korea
 
2015 AWS 리인벤트의 모든것 - 강환빈 :: 2015 리인벤트 리캡 게이밍
2015 AWS 리인벤트의 모든것 - 강환빈 :: 2015 리인벤트 리캡 게이밍2015 AWS 리인벤트의 모든것 - 강환빈 :: 2015 리인벤트 리캡 게이밍
2015 AWS 리인벤트의 모든것 - 강환빈 :: 2015 리인벤트 리캡 게이밍
Amazon Web Services Korea
 
KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)
KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)
KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)
Ubuntu Korea Community
 
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
JungWoon Lee
 
DevOps를 위한 AWS 서비스 및 개발도구 -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
DevOps를 위한 AWS 서비스 및 개발도구  -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나 DevOps를 위한 AWS 서비스 및 개발도구  -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
DevOps를 위한 AWS 서비스 및 개발도구 -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
Amazon Web Services Korea
 
Aws lambda 와 함께 서버리스 서비스 만들기
Aws lambda 와 함께 서버리스 서비스 만들기Aws lambda 와 함께 서버리스 서비스 만들기
Aws lambda 와 함께 서버리스 서비스 만들기
Junyoung Sung
 

Similar to Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 1 (20)

AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
 
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
 
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
[2017 AWS Startup Day] 서버리스 마이크로서비스로 일당백 개발조직 만들기
 
무정지&무점검 서버 개발과 운영 사례
무정지&무점검 서버 개발과 운영 사례무정지&무점검 서버 개발과 운영 사례
무정지&무점검 서버 개발과 운영 사례
 
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
[2017 Windows on AWS] AWS를 활용한 그룹웨어 구축 방안
 
AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016
AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016
AWS와 함께하는 DevOps이야기 :: 박선용 :: AWS Summit Seoul 2016
 
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
 
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
AWS re:Invent 특집(2) – 서버리스(Serverless) 마이크로서비스를 위한 일곱 가지 모범 사례 (윤석찬)
 
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
코드로 바로 해버리는 서버리스 오케스트레이션 - Azure Durable Functions
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
 
[OpenInfra Days Korea 2018] (삼성전자) Evolution to Cloud Native
[OpenInfra Days Korea 2018] (삼성전자) Evolution to Cloud Native[OpenInfra Days Korea 2018] (삼성전자) Evolution to Cloud Native
[OpenInfra Days Korea 2018] (삼성전자) Evolution to Cloud Native
 
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
 
[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발을 위한 AWS 컨테이너 활용사례 및 주요 도구 알아보기 - 정영준, AWS 솔루션...
[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발을 위한 AWS 컨테이너 활용사례 및 주요 도구 알아보기 - 정영준, AWS 솔루션...[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발을 위한 AWS 컨테이너 활용사례 및 주요 도구 알아보기 - 정영준, AWS 솔루션...
[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발을 위한 AWS 컨테이너 활용사례 및 주요 도구 알아보기 - 정영준, AWS 솔루션...
 
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트::  AWS S...AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트::  AWS S...
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...
 
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
AWS 관리형 서비스를 중심으로 한 NCSOFT 와 Reality Reflection의 클라우드 사용기 - AWS Summit Seoul ...
 
2015 AWS 리인벤트의 모든것 - 강환빈 :: 2015 리인벤트 리캡 게이밍
2015 AWS 리인벤트의 모든것 - 강환빈 :: 2015 리인벤트 리캡 게이밍2015 AWS 리인벤트의 모든것 - 강환빈 :: 2015 리인벤트 리캡 게이밍
2015 AWS 리인벤트의 모든것 - 강환빈 :: 2015 리인벤트 리캡 게이밍
 
KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)
KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)
KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)
 
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
클라우드와 마이크로 서비스를 위한 새로운 시대의 경량화 WAS - IBM WAS Liberty 서버
 
DevOps를 위한 AWS 서비스 및 개발도구 -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
DevOps를 위한 AWS 서비스 및 개발도구  -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나 DevOps를 위한 AWS 서비스 및 개발도구  -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
DevOps를 위한 AWS 서비스 및 개발도구 -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
 
Aws lambda 와 함께 서버리스 서비스 만들기
Aws lambda 와 함께 서버리스 서비스 만들기Aws lambda 와 함께 서버리스 서비스 만들기
Aws lambda 와 함께 서버리스 서비스 만들기
 

More from Clova Platform

Clova ai-business-day-session-3
Clova ai-business-day-session-3Clova ai-business-day-session-3
Clova ai-business-day-session-3
Clova Platform
 
Clova ai-business-day-session-4
Clova ai-business-day-session-4Clova ai-business-day-session-4
Clova ai-business-day-session-4
Clova Platform
 
Clova ai-business-day-session-2
Clova ai-business-day-session-2Clova ai-business-day-session-2
Clova ai-business-day-session-2
Clova Platform
 
Clova ai-business-day-session-1
Clova ai-business-day-session-1Clova ai-business-day-session-1
Clova ai-business-day-session-1
Clova Platform
 
Clova Skill 에서 AudioPlayer 구현
Clova Skill 에서 AudioPlayer 구현Clova Skill 에서 AudioPlayer 구현
Clova Skill 에서 AudioPlayer 구현
Clova Platform
 
Clova 플랫폼을 활용한 인공지능 서비스 개발
Clova 플랫폼을 활용한 인공지능 서비스 개발Clova 플랫폼을 활용한 인공지능 서비스 개발
Clova 플랫폼을 활용한 인공지능 서비스 개발
Clova Platform
 
Clova 확장서비스 디자인 및 설계
Clova 확장서비스 디자인 및 설계 Clova 확장서비스 디자인 및 설계
Clova 확장서비스 디자인 및 설계
Clova Platform
 
Chatbot Extension 개요 및 Chatbot Builder 사용법
Chatbot Extension 개요 및 Chatbot Builder 사용법Chatbot Extension 개요 및 Chatbot Builder 사용법
Chatbot Extension 개요 및 Chatbot Builder 사용법
Clova Platform
 
Clova Extension 기획, 설계 & 서버 개발 Basic
Clova Extension 기획, 설계 & 서버 개발 BasicClova Extension 기획, 설계 & 서버 개발 Basic
Clova Extension 기획, 설계 & 서버 개발 Basic
Clova Platform
 
Clova Tech Summit 2: 코오롱베니트의 Clova Extension 계정연동 및 IoT 개발경험
Clova Tech Summit 2: 코오롱베니트의 Clova Extension 계정연동 및 IoT 개발경험Clova Tech Summit 2: 코오롱베니트의 Clova Extension 계정연동 및 IoT 개발경험
Clova Tech Summit 2: 코오롱베니트의 Clova Extension 계정연동 및 IoT 개발경험
Clova Platform
 
Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 2
Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 2Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 2
Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 2
Clova Platform
 
Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안
Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안
Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안
Clova Platform
 
Clova Tech Summit 2: Interaction Model의 이해 및 설계/제작 노하우
Clova Tech Summit 2: Interaction Model의 이해 및 설계/제작 노하우Clova Tech Summit 2: Interaction Model의 이해 및 설계/제작 노하우
Clova Tech Summit 2: Interaction Model의 이해 및 설계/제작 노하우
Clova Platform
 
Clova Extension API 서버 개발 튜토리얼 with SpringBoot
Clova Extension API 서버 개발 튜토리얼 with SpringBootClova Extension API 서버 개발 튜토리얼 with SpringBoot
Clova Extension API 서버 개발 튜토리얼 with SpringBoot
Clova Platform
 
Clova Tech Summit 세션4 : 우아한형제들 배달의민족 Clova Extension 개발기
Clova Tech Summit 세션4 : 우아한형제들 배달의민족 Clova Extension 개발기Clova Tech Summit 세션4 : 우아한형제들 배달의민족 Clova Extension 개발기
Clova Tech Summit 세션4 : 우아한형제들 배달의민족 Clova Extension 개발기
Clova Platform
 
Clova Tech Summit 세션2 : 띵스플로우 라마마 Clova Extension 개발기
Clova Tech Summit 세션2 : 띵스플로우 라마마 Clova Extension 개발기Clova Tech Summit 세션2 : 띵스플로우 라마마 Clova Extension 개발기
Clova Tech Summit 세션2 : 띵스플로우 라마마 Clova Extension 개발기
Clova Platform
 
Clova Tech Summit 세션1 : 코인 헬퍼 Extension 사례를 통한 Extension 디자인/설계 (Advanced)
Clova Tech Summit 세션1 : 코인 헬퍼 Extension 사례를 통한 Extension 디자인/설계 (Advanced)Clova Tech Summit 세션1 : 코인 헬퍼 Extension 사례를 통한 Extension 디자인/설계 (Advanced)
Clova Tech Summit 세션1 : 코인 헬퍼 Extension 사례를 통한 Extension 디자인/설계 (Advanced)
Clova Platform
 

More from Clova Platform (17)

Clova ai-business-day-session-3
Clova ai-business-day-session-3Clova ai-business-day-session-3
Clova ai-business-day-session-3
 
Clova ai-business-day-session-4
Clova ai-business-day-session-4Clova ai-business-day-session-4
Clova ai-business-day-session-4
 
Clova ai-business-day-session-2
Clova ai-business-day-session-2Clova ai-business-day-session-2
Clova ai-business-day-session-2
 
Clova ai-business-day-session-1
Clova ai-business-day-session-1Clova ai-business-day-session-1
Clova ai-business-day-session-1
 
Clova Skill 에서 AudioPlayer 구현
Clova Skill 에서 AudioPlayer 구현Clova Skill 에서 AudioPlayer 구현
Clova Skill 에서 AudioPlayer 구현
 
Clova 플랫폼을 활용한 인공지능 서비스 개발
Clova 플랫폼을 활용한 인공지능 서비스 개발Clova 플랫폼을 활용한 인공지능 서비스 개발
Clova 플랫폼을 활용한 인공지능 서비스 개발
 
Clova 확장서비스 디자인 및 설계
Clova 확장서비스 디자인 및 설계 Clova 확장서비스 디자인 및 설계
Clova 확장서비스 디자인 및 설계
 
Chatbot Extension 개요 및 Chatbot Builder 사용법
Chatbot Extension 개요 및 Chatbot Builder 사용법Chatbot Extension 개요 및 Chatbot Builder 사용법
Chatbot Extension 개요 및 Chatbot Builder 사용법
 
Clova Extension 기획, 설계 & 서버 개발 Basic
Clova Extension 기획, 설계 & 서버 개발 BasicClova Extension 기획, 설계 & 서버 개발 Basic
Clova Extension 기획, 설계 & 서버 개발 Basic
 
Clova Tech Summit 2: 코오롱베니트의 Clova Extension 계정연동 및 IoT 개발경험
Clova Tech Summit 2: 코오롱베니트의 Clova Extension 계정연동 및 IoT 개발경험Clova Tech Summit 2: 코오롱베니트의 Clova Extension 계정연동 및 IoT 개발경험
Clova Tech Summit 2: 코오롱베니트의 Clova Extension 계정연동 및 IoT 개발경험
 
Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 2
Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 2Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 2
Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 2
 
Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안
Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안
Clova Tech Summit 2: 대화모델 엔진 구조와 Chatbot 개발 최적화 방안
 
Clova Tech Summit 2: Interaction Model의 이해 및 설계/제작 노하우
Clova Tech Summit 2: Interaction Model의 이해 및 설계/제작 노하우Clova Tech Summit 2: Interaction Model의 이해 및 설계/제작 노하우
Clova Tech Summit 2: Interaction Model의 이해 및 설계/제작 노하우
 
Clova Extension API 서버 개발 튜토리얼 with SpringBoot
Clova Extension API 서버 개발 튜토리얼 with SpringBootClova Extension API 서버 개발 튜토리얼 with SpringBoot
Clova Extension API 서버 개발 튜토리얼 with SpringBoot
 
Clova Tech Summit 세션4 : 우아한형제들 배달의민족 Clova Extension 개발기
Clova Tech Summit 세션4 : 우아한형제들 배달의민족 Clova Extension 개발기Clova Tech Summit 세션4 : 우아한형제들 배달의민족 Clova Extension 개발기
Clova Tech Summit 세션4 : 우아한형제들 배달의민족 Clova Extension 개발기
 
Clova Tech Summit 세션2 : 띵스플로우 라마마 Clova Extension 개발기
Clova Tech Summit 세션2 : 띵스플로우 라마마 Clova Extension 개발기Clova Tech Summit 세션2 : 띵스플로우 라마마 Clova Extension 개발기
Clova Tech Summit 세션2 : 띵스플로우 라마마 Clova Extension 개발기
 
Clova Tech Summit 세션1 : 코인 헬퍼 Extension 사례를 통한 Extension 디자인/설계 (Advanced)
Clova Tech Summit 세션1 : 코인 헬퍼 Extension 사례를 통한 Extension 디자인/설계 (Advanced)Clova Tech Summit 세션1 : 코인 헬퍼 Extension 사례를 통한 Extension 디자인/설계 (Advanced)
Clova Tech Summit 세션1 : 코인 헬퍼 Extension 사례를 통한 Extension 디자인/설계 (Advanced)
 

Clova Tech Summit 2: Serverless로 만드는 쉽고 효율적인 Clova Extension 1

  • 1. Serverless로 만드는 쉽고 효율적인 Clova Extension NAVER PaaS 오승현
  • 2. 발표자 소개 오승현 NAVER PaaS 사내 Serverless 플랫폼 개발 중 Apache Openwhisk 코드 기여 Serverless를 활용한 클로바 CEK로 사내 엔지니어링 데이 참가
  • 3. Contents 1 2 3 Serverless Computing 101 서버리스로 만드는 클로바 익스텐션 (클로바로 잃어버린 내 폰 찾기 ) 서버리스 프레임워크로 익스텐션 운영하기
  • 4. 1 Serverless Computing 101 Runtimes, Function as a Service
  • 7. 1. Serverless Computing 101 Serverless 서버가 없는 건가요?
  • 8. 1. Serverless Computing 101 추상화된 서버 함수 단위 동작 사용한만큼 지불 유연하고 빠른 확장성
  • 9. 1. Serverless Computing 101 * Event Driven Cloud Computing Service
  • 10. 1. Serverless Computing 101 클로바에게 불을 켜달라고 한다 Event 불을 켠다 Action
  • 11. 1. Serverless Computing 101 불을 켜줘! API Server 9AM 9PM12AM 전통적인 방식에서의 사용자 이벤트 처리 이벤트(request) 대기
  • 12. 1. Serverless Computing 101 불을 켜줘! API Server 9AM 9PM12AM 사용하지 않아도 비용 지불
  • 13. 1. Serverless Computing 101 불을 켜줘! API Server 9AM 9PM12AM 장애 대응에 대한 운영 이슈
  • 14. 1. Serverless Computing 101 HA, LB, Active-Active, Active-Passive … Failover Auto scaling, Scale Up, Scale Out Monitoring (Health Check) 서버가 늘어날 때마다 늦어지는 퇴근시간
  • 15. 1. Serverless Computing 101 Serverless 서버리스에서의 이벤트 처리
  • 16. 자원 할당 1. Serverless Computing 101 이벤트 발생 Stateless 코드 실행 자원 회수
  • 17. 1. Serverless Computing 101 Resource 서버의 자원을 시간 축으로 공유 이벤트 발생시에만 자원 할당 및 요금 지불 불을 켜줘! 10ms 불을 켜줘! 10ms 불을 켜줘! 10ms
  • 18. 1. Serverless Computing 101 서버의 자원을 시간 축으로 공유 이벤트 발생시에만 자원 할당 및 요금 지불 10ms 10ms 10ms = 30ms
  • 19. 1. Serverless Computing 101 Resource 유연한 확장성 (Scalability) 불을 켜줘! Resource Resource Resource 불을 켜줘! 불을 켜줘! Scale Out
  • 20. 1. Serverless Computing 101 $ 33.97 (Cloud Computing Service) + extra cost for Autoscaling / LB t2.medium 2Core, 4GB 1000만 건 요청 처리 비용 비교 (A사) $ 1.80 (Cloud Function Service) Memory 256Mb
  • 21. 1. Serverless Computing 101 서버 자원을 프로비저닝 하거나 관리할 필요 없음 오로지 비지니스로직(Code) 에만 집중 이벤트(Event)에 의해 알아서 실행 및 확장
  • 22. 1. Serverless Computing 101 사용자 호출에 따른 이벤트(Event) 기반으로 동작하는 와 아주 잘 맞음!
  • 24. 2 서버리스로 만드는 Clova Extension 클로바로 잃어버린 내폰 찾기
  • 25. 2. 서버리스로 만드는 Clova Extension
  • 26. 2. 서버리스로 만드는 Clova Extension
  • 27. 24/ 30 2. 서버리스로 만드는 CEK<데모영상, 아이폰찾기>
  • 28. 1. Interaction 모델 Clova에서 interaction 모델이란, 음성으로부터 인식된 사용자의 요청을 extension에 전달하기 위해 정형화된 포맷(JSON)으로 바꿔주는 규칙을 명 세한 것입니다. 2. Extension 서버 (HTTPS) Extension이 실행되는 웹 서버입니다. Clova가 사용자의 발화를 분석한 결과나 기 본적으로 제공하는 의도를 전달했을 때 extension 서버는 이를 처리하여 알맞은 응 답을 반환합니다. 2. 서버리스로 만드는 Clova Extension
  • 29. 2. 서버리스로 만드는 Clova Extension Slot (정보) Intent (의도)Extension 이름 내폰찾기로 아이폰 찾아줘
  • 30. 2. 서버리스로 만드는 Clova Extension Find My iPhone Extension API Server Find My Phone Service ClovaAPI Service 24/7 Operation (HA/Scales/Failover) 내폰찾기 Extension 운영에 필요한 시스템 아키텍쳐 JSON (Slot, Intent) Request
  • 31. 2. 서버리스로 만드는 Clova Extension Find My iPhone Extension Function Find My Phone Service ClovaAPI Service 24/7 Operation (HA/Scales/Failover) 서버리스로 웹 API 서버 추상화 & 함수만 작성
  • 32. 2. 서버리스로 만드는 CEK Microservice on Serverless - UI에서 바로 작성하고 서비스를 배포하는 것이 가능 - 웹 액션으로 만들고 API Gateway를통해 end-point 설정 및 CEK 연동
  • 33. 2. 서버리스로 만드는 CEK Microservice on Serverless - UI에서 바로 작성하고 서비스를 배포하는 것이 가능 - 웹 액션으로 만들고 API Gateway를통해 end-point 설정 및 CEK 연동
  • 34. 2. 서버리스로 만드는 CEK Microservice on Serverless - 대부분 클라우드 업체에서 API Gateway를통한 HTTPS 프로토콜 기본 제공 - 별도의 SSL 인증서 구축 필요 없음
  • 35. 24/ 30 2. 서버리스로 만드는 CEK<데모영상, 갤럭시찾기>
  • 36. 2. 서버리스로 만드는 CEK Microservice on Serverless - 신속하게 새로운 서비스 연동 및 기능 추가 가능 Find My iPhone Extension Function Find My Phone Service ClovaAPI Service VoIP Call IFTTT VoIP Service ICloud Function IFTTT Function 새로운 서비스 연동 / 스펙 변경
  • 37. 2. 서버리스로 만드는 CEK Microservice on Serverless - 신속하게 새로운 서비스 연동 및 기능 추가 가능 Find My iPhone Extension Function Find My Phone Service ClovaAPI Service VoIP Call IFTTT VoIP Service ICloud Function IFTTT Function BUILD / TEST / DEPLOY ?
  • 38. 2. 서버리스로 만드는 CEK Microservice on Serverless - 신속하게 새로운 서비스 연동 및 기능 추가 가능 Find My iPhone Extension Function Find My Phone Service ClovaAPI Service VoIP Call IFTTT VoIP Service ICloud Function IFTTT Function BUILD / TEST / DEPLOY / PRAY
  • 39. 2. 서버리스로 만드는 CEK Microservice on Serverless - 신속하게 새로운 서비스 연동 및 기능 추가 가능 Find My iPhone Extension Function Find My Phone Service ClovaAPI Service VoIP Call IFTTT VoIP Service ICloud Function IFTTT Function 함수 단위로 테스트 및 신속한 서비스 배포 가능
  • 40. 2. 서버리스로 만드는 CEK 마이크로 서비스에서 더 작은 함수 단위로 쪼개는 것이 가능 함수가 너무 많아지고 복잡해지는데.. => 함수 단위 서비스 관리(배포/빌드/테스트)의 필요! 복잡도 모노리스 마이크로서비스 서버리스 부하 분산 비용 절감 PaaS
  • 44. 3. 서버리스 프레임워크 소개 4 / 30 풍부한 커뮤니티 지원
  • 45. 3. 서버리스 프레임워크 소개 $ npm install serverless ­g $ serverless create --template hello-world Serverless Framework 시작하기
  • 46. 3. 서버리스 프레임워크 소개 Credentials 설정 (클라우드 컴퓨팅 업체별로 별도 설정 필요,공식 문서 참조) $ serverless config credentials --provider PROVIDER --key KEY –secret SECRET
  • 47. 3. 서버리스 프레임워크 소개 Infrastructure as a codeFunction code
  • 48. 3. 서버리스 프레임워크 소개 4 / 30 서비스 이름 메모리 / 시간제한 사용 언어 (NodeJS/ Python ..) 함수이름 API Gateway 설정 (이벤트)
  • 49. 3. 서버리스 프레임워크 소개 Function Code, Infrastructure 형상 관리 CI (Continuous Integration) 를 통한 테스트 / 빌드 / 배포
  • 50. 3. 서버리스 프레임워크 소개 마이크로 서비스를 운영하는데 필요한 파일 크기 6kb
  • 51. 3. 서버리스 프레임워크 소개 배포에 필요한 시간 1초 $ serverless deploy
  • 52. 3. 서버리스 프레임워크 소개 시스템 운영보다 사용자에게 더 나은 서비스를 제공하기 위한 고민 서비스 고민 함수 작성 서비스 공개
  • 53. 3시간 내폰 찾기 서비스를 고민하고 CEK 연동까지 걸린 시간 3. 서버리스 프레임워크 소개
  • 54. 클로바가 언제나 핸드폰을 찾아준다는 믿음 지난 한달 간 서비스를 운영/관리하지 않았습니다.. 3. 서버리스 프레임워크 소개
  • 55. Thank you. designed by Seonghyun from Flaticon