SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
강승욱
플랫폼개발팀 서비스운영파트
AWS아키텍트담당
Amazon SNS로 지속적 관리가 가능한
대용량 푸쉬 시스템 구축 여정
떠나는건 마음대로지만 돌아오는건 아닙니다.
Introducing me.
https://www.linkedin.com/in/seunguk/
디지털 떠돌이, 입개발자
AWS로 서버를 배운 듣보잡 개발자
JAVA조금 PHP조금많이 Python조금
재능마켓 크몽
번역서비스 옥셔노리
워드프레스의단비스토어를 잠시 거쳐
글로우데이즈에 정착해서 글로우픽 서비스를 하고있습니다.
야크의 털을 깎을수 밖에 없다면 예쁘게 깎고 싶어요.
본 강연에서 다룰 내용
- SNS의 개요
- SNS Topic의 운영
- 전체푸시와 그루핑 푸시
- SNS의 토큰 상태관리 및 상태 응답 받기
- DynamoDB로 토큰 분리하기
- SQS와의 긴밀함
- CloudWatchLogs로 측정하는 푸시 측정
개미는 지옥을 그냥 지나치지
못한다.
Legacy Push System
DataBase
Get Token
foreach
GCM
APNS
Legacy Push System
❏1000개씩 끊어 보내더라도 오래걸림
❏보낸 푸시의 상태와 모니터링의 어려움
❏토큰 변경 리스폰스 처리의 어려움
❏레거시 시스템의 토픽 활용의 어려움
어쨌든 SNS로 푸시 성공하기
Endpoint Async
SNS Structure
❏ Topics : 어플리케이션 엔드포인트들이
구독단위로 그루핑 되어있는 것
❏ Application : 플랫폼 별로 토큰을
적재할 수 있는 곳. 다양한 플랫폼 지원
❏ Subscriptions : 어플리케이션이 토픽을
구독하고 있는 값을 담고 있는 곳.
이곳을 체크해서 해당 엔드포인트가
특정 토픽을 구독하고있는지 체크가
가능.
Application Endpoint Register
대량등록
❏ 어플리케이션 엔드포인드 생성
토큰을 DynamoDB에 저장, 전체푸시 토픽 구독처리
❏ User data에 값을 넣으면 중복된 값을 넣으려고 할때에
예외가 발생한다. 값이 없으면 중복된 값이 어느 한계선까지
SNS Push Publish
❏ 해당 엔드포인트 혹은
토픽으로 단순 문자열
혹은 JSON Payload를
구성해서 보낼 수
있습니다.
❏ TTL은 푸시 메세지의
생명 시간을 정하는
것입니다.
언덕을 넘어서니 다시 언덕 두개
SNS Feature
SNS Set Event Notifications
❏ 발생된 이벤트를 수신할 토픽을 지정
이벤트등록
Endpoint Event Receive
❏ 해당 토픽으로 오늘 이벤트
메세지를 수신할
프로토콜은 많이
존재하지만 값이싸고,
순차처리에 용이한 SQS를
사용
❏ 어플리케이션의 이벤트를
수신할 토픽을 만들고
어플리케이션 액션에
등록해준다.
Endpoint Event Receive
❏ 어플리케이션에서 Endpoint Event Notifications를 Topic으로 보내고 그 이벤트 메세지를 다시
큐로 쌓은 후
람다가 병렬처리 혹은 배치처리로 변경사항을 다이나모에 존재하는 토큰에 반영한다.
Endpoint Token Management Point
❏기존의 회원 테이블에서는 한 회원에 하나의 플랫폼
엔드포인트만이 등록가능
❏비회원 유저를 위한 토큰 저장 테이블이 따로존재
❏회원이 한 기기로 로그인과 로그아웃을 반복하거나,
다른 계정으로 접속시의 처리비용이 높아짐
❏푸시를 위한 필요회원정보 : 회원항번,UUID,DEVICE
TOKEN,Endpoint ARN,isPush,SubscribeARN
❏정보가 많아짐에 따라 푸시관련 정보를 따로 분리필요
Solution
다시 레거시로 갈까?
Grouping Push
Legacy
+ ARN취득 => SNS전송
Grouping Push
Grouping Push
case3. 회원의 토픽화?
WatchOut!
❏SQS Default Visibility Timeout
❏Scale-Out, Provisoned Capacity 필요
❏람다 병렬처리 -> 트리거
❏APNS 어플리케이션 인증은 1년마다 교체가 필요
결과는 다른이의 손으로
CloudWatchLogs
❏CloudWatchLogs에 로그 적재
❏Log Group Metric으로 측정
❏토픽발송 <> 어플리케이션 엔드포인트 발송
Measure Push
❏SNS -> CloudWatchLogs 기록
AWS SNS Architecture
체크 포인트
! API, CLI가 올바르다.
! SNS Token 관리를 유념
! GCM,APNS Response Event Notification
! Topics publish -> Delivery Status
! DynamoDB, SQS, Lambda 조합은 극강!
! Reference + API Doc = 100%
recruit@glowmee.com
Thank you!
함께 해주셔서 감사합니다!
https://www.awssummit.kr
AWS Summit 모바일 앱을 통해 지금 세션 평가에
참여하시면, 행사 후 기념품을 드립니다.
#AWSSummitKR 해시태그로 소셜 미디어에
여러분의 행사 소감을 올려주세요.
발표 자료 및 녹화 동영상은 AWS Korea 공식 소셜
채널로 공유될 예정입니다.
여러분의 피드백을 기다립니다!

Mais conteúdo relacionado

Mais procurados

마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
AWS 클라우드 비용 최적화를 위한 모범 사례-AWS Summit Seoul 2017
AWS 클라우드 비용 최적화를 위한 모범 사례-AWS Summit Seoul 2017AWS 클라우드 비용 최적화를 위한 모범 사례-AWS Summit Seoul 2017
AWS 클라우드 비용 최적화를 위한 모범 사례-AWS Summit Seoul 2017
Amazon Web Services Korea
 

Mais procurados (20)

AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
 
게임사를 위한 Amazon GameLift 세션 - 이정훈, AWS 솔루션즈 아키텍트
게임사를 위한 Amazon GameLift 세션 - 이정훈, AWS 솔루션즈 아키텍트게임사를 위한 Amazon GameLift 세션 - 이정훈, AWS 솔루션즈 아키텍트
게임사를 위한 Amazon GameLift 세션 - 이정훈, AWS 솔루션즈 아키텍트
 
도메인 주도 설계의 본질
도메인 주도 설계의 본질도메인 주도 설계의 본질
도메인 주도 설계의 본질
 
컨테이너 기술과 가상화 기술의 주요한 차이점
컨테이너 기술과 가상화 기술의 주요한 차이점컨테이너 기술과 가상화 기술의 주요한 차이점
컨테이너 기술과 가상화 기술의 주요한 차이점
 
[백서 요약] Building a Real-Time Bidding Platform on AWS
[백서 요약] Building a Real-Time Bidding Platform on AWS[백서 요약] Building a Real-Time Bidding Platform on AWS
[백서 요약] Building a Real-Time Bidding Platform on AWS
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
 
7. 게임 스트리밍 서비스를 위한 아키텍처 - 언리얼 엔진을 중심으로! [레벨 300] - 발표자: 하흥수, 솔루션즈 아키텍트, AWS :...
7.	게임 스트리밍 서비스를 위한 아키텍처 - 언리얼 엔진을 중심으로! [레벨 300] - 발표자: 하흥수, 솔루션즈 아키텍트, AWS :...7.	게임 스트리밍 서비스를 위한 아키텍처 - 언리얼 엔진을 중심으로! [레벨 300] - 발표자: 하흥수, 솔루션즈 아키텍트, AWS :...
7. 게임 스트리밍 서비스를 위한 아키텍처 - 언리얼 엔진을 중심으로! [레벨 300] - 발표자: 하흥수, 솔루션즈 아키텍트, AWS :...
 
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) 마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
 
[2017 AWS Startup Day] AWS 비용 최대 90% 절감하기: 스팟 인스턴스 Deep-Dive
[2017 AWS Startup Day] AWS 비용 최대 90% 절감하기: 스팟 인스턴스 Deep-Dive [2017 AWS Startup Day] AWS 비용 최대 90% 절감하기: 스팟 인스턴스 Deep-Dive
[2017 AWS Startup Day] AWS 비용 최대 90% 절감하기: 스팟 인스턴스 Deep-Dive
 
API Security in a Microservice Architecture
API Security in a Microservice ArchitectureAPI Security in a Microservice Architecture
API Security in a Microservice Architecture
 
3. 마이크로 서비스 아키텍쳐
3. 마이크로 서비스 아키텍쳐3. 마이크로 서비스 아키텍쳐
3. 마이크로 서비스 아키텍쳐
 
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
 
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
 
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
대규모 인프라 환경 전환을 위한 AWS CloudEndure 실시간 클라우드 전환 기술 - 이창익:: AWS | AWS 클라우드 마이그레이...
 
AWS 클라우드 비용 최적화를 위한 모범 사례-AWS Summit Seoul 2017
AWS 클라우드 비용 최적화를 위한 모범 사례-AWS Summit Seoul 2017AWS 클라우드 비용 최적화를 위한 모범 사례-AWS Summit Seoul 2017
AWS 클라우드 비용 최적화를 위한 모범 사례-AWS Summit Seoul 2017
 
디지털 해적들로부터 영상 콘텐츠 보호하기 – 황윤상 AWS 솔루션즈 아키텍트, 김준호 잉카엔트웍스 매니저:: AWS Cloud Week ...
디지털 해적들로부터 영상 콘텐츠 보호하기 –  황윤상 AWS 솔루션즈 아키텍트, 김준호 잉카엔트웍스 매니저:: AWS Cloud Week ...디지털 해적들로부터 영상 콘텐츠 보호하기 –  황윤상 AWS 솔루션즈 아키텍트, 김준호 잉카엔트웍스 매니저:: AWS Cloud Week ...
디지털 해적들로부터 영상 콘텐츠 보호하기 – 황윤상 AWS 솔루션즈 아키텍트, 김준호 잉카엔트웍스 매니저:: AWS Cloud Week ...
 
Amazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for KubernetesAmazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for Kubernetes
 
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
 
PUBG: Battlegrounds 라이브 서비스 EKS 전환 사례 공유 [크래프톤 - 레벨 300] - 발표자: 김정헌, PUBG Dev...
PUBG: Battlegrounds 라이브 서비스 EKS 전환 사례 공유 [크래프톤 - 레벨 300] - 발표자: 김정헌, PUBG Dev...PUBG: Battlegrounds 라이브 서비스 EKS 전환 사례 공유 [크래프톤 - 레벨 300] - 발표자: 김정헌, PUBG Dev...
PUBG: Battlegrounds 라이브 서비스 EKS 전환 사례 공유 [크래프톤 - 레벨 300] - 발표자: 김정헌, PUBG Dev...
 
AWS Elastic Beanstalk 활용하여 수 분만에 코드 배포하기 (최원근, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
AWS Elastic Beanstalk 활용하여 수 분만에 코드 배포하기 (최원근, AWS 솔루션즈 아키텍트) :: AWS DevDay2018AWS Elastic Beanstalk 활용하여 수 분만에 코드 배포하기 (최원근, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
AWS Elastic Beanstalk 활용하여 수 분만에 코드 배포하기 (최원근, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
 

Semelhante a Amazon SNS로 지속적 관리가 가능한 대용량 푸쉬 시스템 구축 여정 - AWS Summit Seoul 2017

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) 기술동향 소개-박문기@메ᄀ...
문기 박
 
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
찾아가는 AWS 세미나(구로,가산,판교) -  AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)찾아가는 AWS 세미나(구로,가산,판교) -  AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
Amazon Web Services Korea
 
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
Sang Don Kim
 
IBK 시스템의 클라우드 기반 금융 플랫폼 비즈니스 전략 - AWS Summit Seoul 2017
IBK 시스템의 클라우드 기반 금융 플랫폼 비즈니스 전략 - AWS Summit Seoul 2017IBK 시스템의 클라우드 기반 금융 플랫폼 비즈니스 전략 - AWS Summit Seoul 2017
IBK 시스템의 클라우드 기반 금융 플랫폼 비즈니스 전략 - AWS Summit Seoul 2017
Amazon Web Services Korea
 

Semelhante a Amazon SNS로 지속적 관리가 가능한 대용량 푸쉬 시스템 구축 여정 - AWS Summit Seoul 2017 (20)

Amazon sns로 지속적 관리가 가능한 대용량 푸쉬 시스템 구축 여정
Amazon sns로 지속적 관리가 가능한 대용량 푸쉬 시스템 구축 여정Amazon sns로 지속적 관리가 가능한 대용량 푸쉬 시스템 구축 여정
Amazon sns로 지속적 관리가 가능한 대용량 푸쉬 시스템 구축 여정
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos
 
AWS re:Invent 신규 서비스 총정리 (윤석찬, AWS테크에반젤리스트)
AWS re:Invent 신규 서비스 총정리 (윤석찬, AWS테크에반젤리스트) AWS re:Invent 신규 서비스 총정리 (윤석찬, AWS테크에반젤리스트)
AWS re:Invent 신규 서비스 총정리 (윤석찬, AWS테크에반젤리스트)
 
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) 기술동향 소개-박문기@메ᄀ...
 
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
찾아가는 AWS 세미나(구로,가산,판교) -  AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)찾아가는 AWS 세미나(구로,가산,판교) -  AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
찾아가는 AWS 세미나(구로,가산,판교) - AWS에서 작은 서비스 구현하기 (김필중 솔루션즈 아키텍트)
 
AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
 
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
 
[2017 AWS Startup Day] 스타트업이 인공지능을 만날 때 : 딥러닝 활용사례와 아키텍쳐
[2017 AWS Startup Day] 스타트업이 인공지능을 만날 때 : 딥러닝 활용사례와 아키텍쳐[2017 AWS Startup Day] 스타트업이 인공지능을 만날 때 : 딥러닝 활용사례와 아키텍쳐
[2017 AWS Startup Day] 스타트업이 인공지능을 만날 때 : 딥러닝 활용사례와 아키텍쳐
 
[테크데이즈2015] 개발하기 바쁜데 푸시와 메시지큐는 있는거 쓸래요
[테크데이즈2015] 개발하기 바쁜데 푸시와 메시지큐는 있는거 쓸래요[테크데이즈2015] 개발하기 바쁜데 푸시와 메시지큐는 있는거 쓸래요
[테크데이즈2015] 개발하기 바쁜데 푸시와 메시지큐는 있는거 쓸래요
 
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기
 
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
 
Accelerate spring boot application with apache ignite
Accelerate spring boot application with apache igniteAccelerate spring boot application with apache ignite
Accelerate spring boot application with apache ignite
 
AWS로 연결하는 사물인터넷의 세계 :: 이경수 :: AWS Summit Seoul 2016
AWS로 연결하는 사물인터넷의 세계 :: 이경수 :: AWS Summit Seoul 2016AWS로 연결하는 사물인터넷의 세계 :: 이경수 :: AWS Summit Seoul 2016
AWS로 연결하는 사물인터넷의 세계 :: 이경수 :: AWS Summit Seoul 2016
 
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
 
IBK 시스템의 클라우드 기반 금융 플랫폼 비즈니스 전략 - AWS Summit Seoul 2017
IBK 시스템의 클라우드 기반 금융 플랫폼 비즈니스 전략 - AWS Summit Seoul 2017IBK 시스템의 클라우드 기반 금융 플랫폼 비즈니스 전략 - AWS Summit Seoul 2017
IBK 시스템의 클라우드 기반 금융 플랫폼 비즈니스 전략 - AWS Summit Seoul 2017
 
[IGC 2017] AWS 김필중 솔루션 아키텍트 - AWS 를 활용한 모바일 백엔드 개발
[IGC 2017] AWS 김필중 솔루션 아키텍트 - AWS 를 활용한 모바일 백엔드 개발[IGC 2017] AWS 김필중 솔루션 아키텍트 - AWS 를 활용한 모바일 백엔드 개발
[IGC 2017] AWS 김필중 솔루션 아키텍트 - AWS 를 활용한 모바일 백엔드 개발
 
효율적 모바일 서비스를 위한 AWS 빌딩블럭 - API Gateway 및 Device Farm을 중심으로 (윤석찬, AWS 테크에반젤리스트)
효율적 모바일 서비스를 위한 AWS 빌딩블럭 - API Gateway 및 Device Farm을 중심으로 (윤석찬, AWS 테크에반젤리스트)효율적 모바일 서비스를 위한 AWS 빌딩블럭 - API Gateway 및 Device Farm을 중심으로 (윤석찬, AWS 테크에반젤리스트)
효율적 모바일 서비스를 위한 AWS 빌딩블럭 - API Gateway 및 Device Farm을 중심으로 (윤석찬, AWS 테크에반젤리스트)
 
서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)
 
지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기
 
성공적인 게임 런칭을 위한 비밀의 레시피 #3
성공적인 게임 런칭을 위한 비밀의 레시피 #3성공적인 게임 런칭을 위한 비밀의 레시피 #3
성공적인 게임 런칭을 위한 비밀의 레시피 #3
 

Mais de Amazon Web Services Korea

Mais de Amazon Web Services Korea (20)

AWS Modern Infra with Storage Roadshow 2023 - Day 2
AWS Modern Infra with Storage Roadshow 2023 - Day 2AWS Modern Infra with Storage Roadshow 2023 - Day 2
AWS Modern Infra with Storage Roadshow 2023 - Day 2
 
AWS Modern Infra with Storage Roadshow 2023 - Day 1
AWS Modern Infra with Storage Roadshow 2023 - Day 1AWS Modern Infra with Storage Roadshow 2023 - Day 1
AWS Modern Infra with Storage Roadshow 2023 - Day 1
 
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
 
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
 
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
 
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
 
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
 
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
 
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
 
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
 
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
 
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
 
From Insights to Action, How to build and maintain a Data Driven Organization...
From Insights to Action, How to build and maintain a Data Driven Organization...From Insights to Action, How to build and maintain a Data Driven Organization...
From Insights to Action, How to build and maintain a Data Driven Organization...
 
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
 
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
 
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
 
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
 
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
 
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
 
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
 

Amazon SNS로 지속적 관리가 가능한 대용량 푸쉬 시스템 구축 여정 - AWS Summit Seoul 2017

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 강승욱 플랫폼개발팀 서비스운영파트 AWS아키텍트담당 Amazon SNS로 지속적 관리가 가능한 대용량 푸쉬 시스템 구축 여정 떠나는건 마음대로지만 돌아오는건 아닙니다.
  • 2. Introducing me. https://www.linkedin.com/in/seunguk/ 디지털 떠돌이, 입개발자 AWS로 서버를 배운 듣보잡 개발자 JAVA조금 PHP조금많이 Python조금 재능마켓 크몽 번역서비스 옥셔노리 워드프레스의단비스토어를 잠시 거쳐 글로우데이즈에 정착해서 글로우픽 서비스를 하고있습니다. 야크의 털을 깎을수 밖에 없다면 예쁘게 깎고 싶어요.
  • 3. 본 강연에서 다룰 내용 - SNS의 개요 - SNS Topic의 운영 - 전체푸시와 그루핑 푸시 - SNS의 토큰 상태관리 및 상태 응답 받기 - DynamoDB로 토큰 분리하기 - SQS와의 긴밀함 - CloudWatchLogs로 측정하는 푸시 측정
  • 4. 개미는 지옥을 그냥 지나치지 못한다.
  • 5. Legacy Push System DataBase Get Token foreach GCM APNS
  • 6. Legacy Push System ❏1000개씩 끊어 보내더라도 오래걸림 ❏보낸 푸시의 상태와 모니터링의 어려움 ❏토큰 변경 리스폰스 처리의 어려움 ❏레거시 시스템의 토픽 활용의 어려움
  • 7. 어쨌든 SNS로 푸시 성공하기
  • 9. SNS Structure ❏ Topics : 어플리케이션 엔드포인트들이 구독단위로 그루핑 되어있는 것 ❏ Application : 플랫폼 별로 토큰을 적재할 수 있는 곳. 다양한 플랫폼 지원 ❏ Subscriptions : 어플리케이션이 토픽을 구독하고 있는 값을 담고 있는 곳. 이곳을 체크해서 해당 엔드포인트가 특정 토픽을 구독하고있는지 체크가 가능.
  • 10. Application Endpoint Register 대량등록 ❏ 어플리케이션 엔드포인드 생성 토큰을 DynamoDB에 저장, 전체푸시 토픽 구독처리 ❏ User data에 값을 넣으면 중복된 값을 넣으려고 할때에 예외가 발생한다. 값이 없으면 중복된 값이 어느 한계선까지
  • 11. SNS Push Publish ❏ 해당 엔드포인트 혹은 토픽으로 단순 문자열 혹은 JSON Payload를 구성해서 보낼 수 있습니다. ❏ TTL은 푸시 메세지의 생명 시간을 정하는 것입니다.
  • 14. SNS Set Event Notifications ❏ 발생된 이벤트를 수신할 토픽을 지정 이벤트등록
  • 15. Endpoint Event Receive ❏ 해당 토픽으로 오늘 이벤트 메세지를 수신할 프로토콜은 많이 존재하지만 값이싸고, 순차처리에 용이한 SQS를 사용 ❏ 어플리케이션의 이벤트를 수신할 토픽을 만들고 어플리케이션 액션에 등록해준다.
  • 16. Endpoint Event Receive ❏ 어플리케이션에서 Endpoint Event Notifications를 Topic으로 보내고 그 이벤트 메세지를 다시 큐로 쌓은 후 람다가 병렬처리 혹은 배치처리로 변경사항을 다이나모에 존재하는 토큰에 반영한다.
  • 17. Endpoint Token Management Point ❏기존의 회원 테이블에서는 한 회원에 하나의 플랫폼 엔드포인트만이 등록가능 ❏비회원 유저를 위한 토큰 저장 테이블이 따로존재 ❏회원이 한 기기로 로그인과 로그아웃을 반복하거나, 다른 계정으로 접속시의 처리비용이 높아짐 ❏푸시를 위한 필요회원정보 : 회원항번,UUID,DEVICE TOKEN,Endpoint ARN,isPush,SubscribeARN ❏정보가 많아짐에 따라 푸시관련 정보를 따로 분리필요 Solution
  • 22. WatchOut! ❏SQS Default Visibility Timeout ❏Scale-Out, Provisoned Capacity 필요 ❏람다 병렬처리 -> 트리거 ❏APNS 어플리케이션 인증은 1년마다 교체가 필요
  • 24. CloudWatchLogs ❏CloudWatchLogs에 로그 적재 ❏Log Group Metric으로 측정 ❏토픽발송 <> 어플리케이션 엔드포인트 발송
  • 25. Measure Push ❏SNS -> CloudWatchLogs 기록
  • 27. 체크 포인트 ! API, CLI가 올바르다. ! SNS Token 관리를 유념 ! GCM,APNS Response Event Notification ! Topics publish -> Delivery Status ! DynamoDB, SQS, Lambda 조합은 극강! ! Reference + API Doc = 100%
  • 29. Thank you! 함께 해주셔서 감사합니다!
  • 30. https://www.awssummit.kr AWS Summit 모바일 앱을 통해 지금 세션 평가에 참여하시면, 행사 후 기념품을 드립니다. #AWSSummitKR 해시태그로 소셜 미디어에 여러분의 행사 소감을 올려주세요. 발표 자료 및 녹화 동영상은 AWS Korea 공식 소셜 채널로 공유될 예정입니다. 여러분의 피드백을 기다립니다!