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
0
420
レアジョブアプリでのアクセス負荷で生じたAPI遅延問題を アプリエンジニア視点で対策を考えてみる
tamappe
August 28, 2019
Tweet
Share
More Decks by tamappe
See All by tamappe
async/awaitの性能をDartとSwiftとの比較で読み解く
tamappe
2
1.1k
商業雑誌に技術記事を寄稿した振り返り
tamappe
3
1.3k
リモートワークでBitriseを導入したときにハマりにハマった話
tamappe
0
220
SwiftUIとFlutterを比較する
tamappe
1
1.1k
そのAlertController 回転ロックできないってよ
tamappe
1
590
Fat Storyboardをリファクタリングしてみた
tamappe
0
280
Swift4.2で追加されたDynamic Member Lookupを使ってみよう
tamappe
0
750
Other Decks in Technology
See All in Technology
Databricks における 『MLOps』
databricksjapan
2
170
Python と Snowflake はズッ友だょ!~ Snowflake の Python 関連機能をふりかえる ~
__allllllllez__
1
110
Google Cloud の AI を支える裏側のインフラを垣間見る!
maroon1st
0
340
現代CSSフレームワークの内部実装とその仕組み
poteboy
8
3.6k
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
890
Cracking the KubeCon CfP
inductor
2
240
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
3
630
コードを書く隙間を見つけて生きていく技術/Findy 思考の現在地
fujiwara3
27
5.9k
ChatGPT for IT Service Management (IT Pro)
dahatake
7
1.5k
レガシーをぶっ壊せ。AEONで始めるDevRelの話 / Qiita Night 2024-2-22
aeonpeople
3
1.3k
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
140
Delivering Millions of Messages within seconds @ Duolingo
pelelgrino
0
350
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
A designer walks into a library…
pauljervisheath
200
23k
Into the Great Unknown - MozCon
thekraken
10
990
Scaling GitHub
holman
457
140k
The Illustrated Children's Guide to Kubernetes
chrisshort
31
46k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
6
1.5k
Unsuck your backbone
ammeep
663
57k
Building an army of robots
kneath
300
41k
Music & Morning Musume
bryan
41
5.6k
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!