Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
aws-lt-push-notification
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Hirokazu Maruta
December 21, 2017
Technology
0
42
aws-lt-push-notification
AWS勉強会での発表資料。
PUSH通知の構成について登壇しました。
Hirokazu Maruta
December 21, 2017
Tweet
Share
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
120
わかった気になるチューリングマシン
mochisuna
0
48
Elementary algorithm
mochisuna
0
27
ssh-dynamic-forward
mochisuna
0
61
ServerlessFramework-Trello
mochisuna
0
30
TechBash Slack Reaction Award
mochisuna
0
45
techbash-clasp
mochisuna
0
90
vuejs-night-publish
mochisuna
0
1.1k
surprise-lt-for-intern-vol-2
mochisuna
0
55
Other Decks in Technology
See All in Technology
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
920
ZOZOにおけるAI活用の現在 ~開発組織全体での取り組みと試行錯誤~
zozotech
PRO
5
5.3k
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
130
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.4k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
140
OpenShiftでllm-dを動かそう!
jpishikawa
0
100
レガシー共有バッチ基盤への挑戦 - SREドリブンなリアーキテクチャリングの取り組み
tatsukoni
0
210
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
20260204_Midosuji_Tech
takuyay0ne
1
150
Featured
See All Featured
Fireside Chat
paigeccino
41
3.8k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
64
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Context Engineering - Making Every Token Count
addyosmani
9
650
30 Presentation Tips
portentint
PRO
1
210
A better future with KSS
kneath
240
18k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
AWSͰPUSHΛ͠Α͏ ϒϥβϓογϡ৴Ͱར༻͍ͯ͠ΔAWSߏ ·ΔͨͻΖ͔ͣ
͜͡͠ΐ͏͔͍ ؙాʢ·ΔͨͻΖ͔ͣʣ • ɹ • ϓϥοτϑΥʔϜ։ൃ෦(௨৴νʔϜ) • झຯɿϐΞϊɺϘυήɺΞΠίϯ࡞ʢΧούʣ • ͓ࣄɿAWSɺGoݴޠɺϝϯλʔ
͢͜ͱ • ൪ • ͬͬͬ͘͟ΓҰ࿈ͷྲྀΕ • ϒϥβϓογϡ৴ͷAWSઃܭ • ͍ͨ͠ͱ͜ʢ͕࣌ؒ͋ͬͨΒʣ •
·ͱΊ
ಥͰ͕࣭͢Ͱ͢
ϓογϡ௨ͬͯ ͝ଘͰ͔͢ʁ
Ϣʔβʔ ొ αΠτ ৴ऀ
Ϣʔβʔ ৴ ৴ऀ αΠτ
Ϣʔβʔ ৴ऀ αΠτ
ࢲࣄͰ͕͢
10݄ʹɺϓογϡ௨Λ ϦϦʔε͠·ͨ͠
σϞ
Ͳ͏࣮ͬͯݱ͍ͯ͠Δ͔
ɹɹͷྗΛ ;ΜͩΜʹͬͯ·͢
શମ૾ ৴༧ Ϣʔβʔʹಧ͘ ※ϩάऩूج൫Ҏ֎ ৴ऀ
શମ૾ ৴༧ Ϣʔβʔʹಧ͘ ※ϩάऩूج൫Ҏ֎ શ෦આ໌Ͱ͖ͳ͍ ৴ऀ
ͬͬͬ͘͟Γશମ૾
ػೳͰάϧʔϓ͚ Ϣʔβʔ ৴ऀ ཧը໘ ϩάΠϯ νΣοΫ εέδϡʔϧ༧ ΦϓτΠϯϖʔδ ϒϥβϓογϡ৴
Ϣʔβʔ͕ΦϓτΠϯ Ϣʔβʔ ৴ऀ ϩάΠϯ νΣοΫ ΦϓτΠϯϖʔδ ৴Λड͚औΔ
৴ऀ͕εέδϡʔϧ༧ Ϣʔβʔ ৴ऀ ཧը໘ εέδϡʔϧ༧ ࢦఆ࣌ؒͰ৴༧
༧ͷ࣌ؒʹൃՐ Ϣʔβʔ ৴ऀ εέδϡʔϧ༧ Ϣʔβʔʹϓογϡ͕ಧ͘ ϒϥβϓογϡ৴
Ұ࿈ͷྲྀΕ Ϣʔβʔ ৴ऀ ཧը໘ ϩάΠϯ νΣοΫ εέδϡʔϧ༧ ΦϓτΠϯϖʔδ ϒϥβϓογϡ৴
ࠓճൃද͢Δͷ͜͜ Ϣʔβʔ ৴ऀ εέδϡʔϧ༧ ϒϥβϓογϡ৴ Ϣʔβʔʹϓογϡ͕ಧ͘
ϒϥβϓογϡ৴
͜Ε Ϣʔβʔ εέδϡʔϧ༧ ϒϥβϓογϡ৴ ৴ͷ෦ ৴ऀ
AWSߏ Ϣʔβʔ ৴ऀ
ΑΓৄ͘͠ղ ৴ऀ worker Elastic Beanstalk •LoadBalancer •AutoScaling •EC2
ΑΓৄ͘͠ղ worker ʂ์͓͍ͬͯͯαʔϏε͕ಈ ͘ʂ ৴ऀ
ΑΓৄ͘͠ղ worker ↑ ৴ରऔಘ ↑ ৴αʔϏεʹ ͛Δ ৴ऀ
ΑΓৄ͘͠ղʢதʣ worker தGoݴޠ ৴ऀ
ΑΓৄ͘͠ղʢ࿈ܞʣ worker ElastiCache ʢΩϟογϡʣ SQS ʢΩϡʔʣ ৴ऀ
worker FireBase: Chrome MWP : firefox ΑΓৄ͘͠ղʢ৴ʣ ৴ऀ
AWSߏ Ϣʔβʔ ৴ऀ
εέδϡʔϧ༧
͜Ε Ϣʔβʔ εέδϡʔϧ༧ ϒϥβϓογϡ৴ ༧ͷ෦ ৴ऀ
جຊࢥ εέδϡʔϧ༧ Ϣʔβʔ ༧ ࢦఆ࣌ؒͰൃՐ ৴ऀ
جຊࢥ εέδϡʔϧ༧ Ϣʔβʔ ༧ ࢦఆ࣌ؒͰൃՐ ࣌ؒʹͳͬͨΒ ϒϥβϓογϡΛݺͿ ৴ऀ
εέδϡʔϧ༧ ༧ ৴ऀ
৴࣌ࠁʹൃՐ
৴࣌ࠁʹൃՐ
Lambdaͷ࣋ͪ࣌ؒ
5 ʼ
Lambda5͚ͩɾɾɾ େྔʹૹΔʂ
Lambda5͚ͩɾɾɾ ؒʹ߹Θͳ͍ɾɾɾ
ΈΜͳͰॲཧ͢Ε͜Θ͘ͳ ͍ʂ ॲཧΛׂ ॱ࣮࣍ߦ
εέδϡʔϧ৴
શମ૾ Ϣʔβʔ ৴ऀ
͍ͨ͠ͱ͜ ʢ͕࣌ؒ͋ͬͨΒʣ
Elastic Beanstalk • ͍ͬ͢͝ศརͩΑ
Elastic Beanstalk • ͍ͬ͢͝ศརͩΑ → ͰɺڽͬͨઃఆΛ͢Δͷͱͯਏ͍
Elastic Beanstalk • ͍ͬ͢͝ศརͩΑ → ͰɺڽͬͨઃఆΛ͢Δͷͱͯਏ͍ ebextensions
Elastic Beanstalk • ͍ͬ͢͝ศརͩΑ → ͰɺڽͬͨઃఆΛ͢Δͷͱͯਏ͍ ebextensionsʢ΄ΜͷҰ෦ʣ
Elastic Beanstalk • ࠓͳΒFargate͏ Fargate • ͍͢͝ʢখฒʣ ※ݱঢ়όʔδχΞͷΈ
ElasticCache • ͜Ε࡞ͬͨ࣌DAX͕ͳ͔ͬͨΜͰ͢ɾɾɾ DAX • DynamoDB Accelerator • ΩϟογϡαʔϏε •
DynamoDBͷલஈʹඋ
Lambda • όʔδϣχϯάͯ͠ͳ͍ʢݱࡏʣ • σϓϩΠ࣌ʹώϡʔϚϯΤϥʔ͕ා͍ʢࠓ ʣ • ରࡦ͠ͳ͍ͱʢͳΔͰʣ
Kinesis Firehose • ετϦʔϜͷλΠϛϯάϥϯμϜ • ϩάใͱ͔Ͱॱ൪͕ॏཁͳ߹ζϨΔ → ͪΌΜͱͨ͠ରࡦ͕ඞཁ → ޙͰࠔΔʢ࣮ࡍࠔͬͨʣ
Kinesis Firehose • ετϦʔϜͷλΠϛϯάϥϯμϜ • ϩάใͱ͔Ͱॱ൪͕ॏཁͳ߹ζϨΔ → ͪΌΜͱͨ͠ରࡦ͕ඞཁ → ޙͰࠔΔʢ࣮ࡍࠔͬͨʣ
→ ޙͰࠔΔʢϗϯτࠔͬͨʣ
IAM Role • ໌ࣔతͳڋ൱ͯ͢ͷڐՄʹ༏ઌ • υΩϡϝϯτʹॻ͍ͯ͋Δ •AɿAllow •Bɿɹ- •CɿDeny •AɿAllow
•Bɿɹ- •Cɿɹ- •AɿAllow •BɿDeny •CɿDeny ʴ
IAM Role • ໌ࣔతͳڋ൱ͯ͢ͷڐՄʹ༏ઌ • υΩϡϝϯτʹॻ͍ͯ͋Δ •AɿAllow •Bɿɹ- •CɿDeny •AɿAllow
•BɿAllow •CɿAllow •AɿAllow •BɿAllow •CɿDeny ʴ
ຐԦDeny ͳΜͰౖΒΕͯΔͷ͔͑ͳ͘ͳΔ
IAM Role • ໌ࣔతͳڋ൱ͯ͢ͷڐՄʹ༏ઌ • υΩϡϝϯτʹॻ͍ͯ͋Δ •AɿAllow •Bɿɹ- •CɿDeny •AɿAllow
•BɿAllow •CɿAllow •AɿAllow •BɿAllow •CɿDeny ʴ ཧ༝͕ͳ͍ͳΒ Deny͢Δͳ
CloudFormation ศརʂɾɾɾͰ
CloudFormation ศརʂɾɾɾͰ • ͭΒ͍ʢYAMLʣ • ͭΒ͍ʢ৬ਓൃੜʣ • ͭΒ͍ʢΤϥʔ͑ͳ͍ʣ
CloudFormation ศརʂɾɾɾͰ • ͭΒ͍ʢYAMLʣ • ͭΒ͍ʢ৬ਓൃੜʣ • ͭΒ͍ʢΤϥʔ͑ͳ͍ʣ
·ͱΊ
None
͍͢͝ʢখฒʣ
͍͢͝ʢখฒʣ
Έ߹ΘͤͰ ϓογϡ৴Ͱ͖ͪΌ͏
ଓʑͱྑ͍αʔϏε͕ ग़͖͍ͯͯ·͢
ྑ͍ɹɹɹɹϥΠϑΛʂ
͓͠·͍
·ͱΊ • AWSͰϓογϡ৴Λ։ൃ • αʔϏεͷछྨ͕๛ • Έ߹ΘͤͰເ͕͕Δ • ͍͜ͳ͢·Ͱ͕େม