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
レアジョブアプリでのアクセス負荷で生じたAPI遅延問題を アプリエンジニア視点で対策を考えてみる
Search
tamappe
August 28, 2019
Technology
590
0
Share
レアジョブアプリでのアクセス負荷で生じたAPI遅延問題を アプリエンジニア視点で対策を考えてみる
tamappe
August 28, 2019
More Decks by tamappe
See All by tamappe
async/awaitの性能をDartとSwiftとの比較で読み解く
tamappe
2
1.8k
商業雑誌に技術記事を寄稿した振り返り
tamappe
3
1.7k
リモートワークでBitriseを導入したときにハマりにハマった話
tamappe
0
320
SwiftUIとFlutterを比較する
tamappe
1
1.4k
そのAlertController 回転ロックできないってよ
tamappe
1
760
Fat Storyboardをリファクタリングしてみた
tamappe
0
360
Swift4.2で追加されたDynamic Member Lookupを使ってみよう
tamappe
0
930
Other Decks in Technology
See All in Technology
あるアーキテクチャ決定と その結果/architecture-decision-and-its-result
hanhan1978
2
570
AIがコードを書く時代の ジェネレーティブプログラミング
polidog
PRO
3
670
Strands Agents × Amazon Bedrock AgentCoreで パーソナルAIエージェントを作ろう
yokomachi
2
260
シン・リスコフの置換原則 〜現代風に考えるSOLIDの原則〜
jinwatanabe
0
170
さくらのクラウドでつくるCloudNative Daysのオブザーバビリティ基盤
b1gb4by
0
140
試されDATA SAPPORO [LT]Claude Codeで「ゆっくりデータ分析」
ishikawa_satoru
0
340
Hello UUID
mimifuwacc
0
130
Claude Teamプランの選定と、できること/できないこと
rfdnxbro
1
1.9k
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
5
13k
ZOZOTOWNリプレイスでのSkills導入までの流れとこれから
zozotech
PRO
4
3.2k
新メンバーのために、シニアエンジニアが環境を作る時代
puku0x
0
570
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.3k
Featured
See All Featured
Building AI with AI
inesmontani
PRO
1
870
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Amusing Abliteration
ianozsvald
1
150
Code Review Best Practice
trishagee
74
20k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
140
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
480
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
27
3.4k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.4k
Transcript
ϨΞδϣϒΞϓϦͰͷΞΫηεෛՙ Ͱੜͨ͡APIԆΛ ΞϓϦΤϯδχΞࢹͰରࡦΛߟ͑ ͯΈΔ ۄஔɹ༸ี @tamapppe
None
I N T R O D U C T I
O N ۄஔɹ༸ี Yosuke Tamaoki (32) ϞόΠϧΞϓϦΤϯδχΞ 2014-20193݄·ͰϑϦʔϥϯεͱͯ͠׆ಈ 20194݄ΑΓϨΞδϣϒʹϞόΠϧΞϓϦΤϯδχΞͱͯ͠ೖࣾ झຯ: ήʔϜ(Splatoon2)ɺےτϨɺྉཧ Twitter: https://twitter.com/tamapppe 01
02
Release info 03 ࠷৽ͷϦϦʔεͰiPadͷԣը໘ରԠΛ ϦϦʔε͠·ͨ͠ʂʂ ͥͻແྉମݧͰ͖ΔͷͰΞϓϦ͔Βडߨͯ͠Έ͍ͯͩ͘͞ https://apps.apple.com/jp/app/ϨΞδϣϒӳձ/id1121942360
ຊͷςʔϚ ΫϥΠΞϯτ͔Βݟͨ API௨৴ϦΫΤετԆ
APIԆ 04 ϨΞδϣϒΞϓϦ20 - 30 ͷࣾձਓϢʔβʔ͕ଟ͍ͨΊɺ ฏͷࣄऴΘΓʹϨοεϯΛड͚Δʹ͋Δɻ ಛʹ࠷ۙͰฏͷ݄༵͔Ր༵ͷ21:00 - 23:00ʹAPI௨৴ͷϦΫΤε
τ͕ଟ͘αʔόʔʹෛՙ͕͔͔Γ͗͢ΔͨΊ͔Ϩοεϯ༧ͷAPI͕ ԆؾຯʹͳΔʹ͋Δɻ ࣮ࡍʹ͜ͷ࣌ؒଳʹAPI௨৴ͷϦΫΤετ͕࠷େʹͳ͍ͬͯΔͷͰ ϞόΠϧΞϓϦଆͰରࡦΛ࿅Δඞཁ͕ग़͖ͯͨɻ ฏͷ21:00 - 23:00
Kibana ͰϦΫΤετճΛ֬ೝ 05 03:00 06:00 12:00 15:00 18:00 21:00 09:00
Kibana ͰϦΫΤετճΛ֬ೝ 06 03:00 06:00 12:00 15:00 18:00 21:00 09:00
ϐʔΫλΠϜͷෛՙΛ֬ೝ͢Δͱ 07 ฏৗ࣌ʹରͯ͠ 5ഒ͍ۙϦΫΤετ͕ ϐʔΫ࣌ʹΞϓϦ͔ΒඈͿɻ webͰಉ༷ͷϦΫΤετͷ૿Ճ͕ى͖͍ͯΔ͕ɺฏৗ࣌ͱͷ ͕ࠩΞϓϦಛʹେ͖͔ͬͨɻ ͳͥ͜ΜͳʹΞϓϦ͔ΒϦΫΤετ͕ඈΜͰ͍Δͷ͔ʁʁ
ߨࢣใऔಘAPI Ͳ͏Β͕͜͜ոͦ͠͏ͩ
ߨࢣใऔಘAPIͷ༷ 08 1. ΞϓϦىಈ࣌ʹશͯͷϑΟϦϐϯߨࢣΛऔΔඞཁ͕͋Δ(1000ਓ) 2. ΩϟογϡΛ͍ͬͯͯ༗ޮظݶอଘ͔ͯ͠Β10Ҏ 3. Ωϟογϡ͕͍ͬͯΕΞϓϦDBΛ͏ɺظݶΕͳΒAPI௨ ৴ 4.
Ϩοεϯ༧ͷࡍʹʮߨࢣใʯͱʮߨࢣͷεέδϡʔϧใʯ͕ ඞཁ 5. ߨࢣΫϥε͕ͦΕͧΕͷεέδϡʔϧΫϥεΛอ͍࣋ͯ͠Δ 6. ΞϓϦىಈ࣌ʹ1िؒͷεέδϡʔϧใΛऔಘ͍ͯ͠Δ 7. ଞͷੜెʹઌʹͦͷεέδϡʔϧΛऔΒΕ͍ͯͨΒϨοεϯΛ༧Ͱ ͖ͳ͍ͷͰͰ͖Δ͚ͩʮৗʹ࠷৽ͷεέδϡʔϧʯΛը໘ʹө͞ ͤͳͯ͘ͳΒͳ͍ ࣌ؒͷߜΓࠐΈ ʹͪͷߜΓࠐΈ
ߟ͑ͨରԠ 09 1. ࠶ؼॲཧ͢ΔճΛΒ͢ 2. ϨοεϯΛ༧͍ͯ͠ΔϢʔβʔϨοεϯ ։࢝30લࣗಈతʹAPIΛୟ͔ͳ͍Α͏ʹ ͢Δ 3. ΞϓϦىಈ࣌ʹ1िؒͰͳ͘1୯ҐͰ
ใΛऔಘ͢ΔΑ͏ʹ͢Δ 4. ߜΓࠐΈݕࡧͰશͯͷߨࢣΛऔಘ͢Δ͔Ͳ͏ ͔ΦϓγϣϯΛՃ͢Δ 5. ͦͷଞ
ߦͬͨରԠ 10 2. ϨοεϯΛ༧͍ͯ͠ΔϢʔβʔ Ϩοεϯ։࢝30લࣗಈత ʹAPIΛୟ͔ͳ͍Α͏ʹ͢Δ → ͜ͷΑ͏ͳϢʔβʔ༧ΑΓϨοεϯडߨ͕ϝΠϯͰΞϓϦΛىಈ͢ΔͣͳͷͰ → ࠓͷઃܭʹ͓͍ͯίʔυͷӨڹൣғͱ༷ͷӨڹൣғ͕গͳͦ͏͔ͩΒ
→ UIతʹҰ൪ָ࣮ͦ͏
UI 11 ߨࢣݕࡧAPIͷϘλϯΛஔ͍ͯखಈͰ APIΛୟ͚ΔΑ͏ʹରԠ
ఆରԠલޙͷભҠ 12 Max ࣌ͷ20%ͷճΛݮ
ϑϩϯτΤϯυΤϯδχΞʹͱͬͯͷ APIͷݟ͑ํ 13 1. ۃྗඞཁͳ͍ใͰAPI௨৴Λආ͚Δઃܭʹ͢Δ 2. Ϙλϯ࿈ଧରԠʹؾΛ͚ͭΔ 3. APIଆͷerrorCodeඞͣߟྀ͢Δ 4.
ΞϓϦଆͰྫ֎ॲཧۃྗߦ͏ 5. APIແݶʹ͑Δͷͩͱࢥ͏͕͋ΔͷͰෆඞ ཁʹୟ͔ͳ͍ઃܭΛ৺͕͚Δඞཁ͕͋Δ 6. αʔόʔͷෛՙΛߟྀ͢Δ
݁ 14 ΞϓϦΤϯδχΞͱ͍͑Ͳɺ αʔόʔαΠυͷෛՙΛߟྀͯ͠࠷దͳUIɾUXΛߟ͑Δ ͷ͕ϕετͰ͋Δɻ
Thank you!