Upgrade to Pro — share decks privately, control downloads, hide ads and more …

レアジョブアプリでのアクセス負荷で生じたAPI遅延問題を アプリエンジニア視点で対策を考えてみる

tamappe
August 28, 2019

レアジョブアプリでのアクセス負荷で生じたAPI遅延問題を アプリエンジニア視点で対策を考えてみる

tamappe

August 28, 2019
Tweet

More Decks by tamappe

Other Decks in Technology

Transcript

  1. I N T R O D U C T I

    O N ۄஔɹ༸ี Yosuke Tamaoki (32) ϞόΠϧΞϓϦΤϯδχΞ 2014೥-2019೥3݄·ͰϑϦʔϥϯεͱͯ͠׆ಈ 2019೥4݄ΑΓϨΞδϣϒʹϞόΠϧΞϓϦΤϯδχΞͱͯ͠ೖࣾ झຯ: ήʔϜ(Splatoon2)ɺےτϨɺྉཧ Twitter: https://twitter.com/tamapppe 01
  2. 02

  3. API஗Ԇ໰୊ 04 ϨΞδϣϒΞϓϦ͸20 - 30 ୅ͷࣾձਓϢʔβʔ͕ଟ͍ͨΊɺ ฏ೔ͷ࢓ࣄऴΘΓʹϨοεϯΛड͚Δ܏޲ʹ͋Δɻ ಛʹ࠷ۙͰ͸ฏ೔ͷ݄༵͔Ր༵ͷ21:00 - 23:00ʹAPI௨৴ͷϦΫΤε

    τ͕ଟ͘αʔόʔʹෛՙ͕͔͔Γ͗͢ΔͨΊ͔Ϩοεϯ༧໿ͷAPI͕஗ ԆؾຯʹͳΔ܏޲ʹ͋Δɻ ࣮ࡍʹ͜ͷ࣌ؒଳʹAPI௨৴ͷϦΫΤετ਺͕࠷େʹͳ͍ͬͯΔͷͰ ϞόΠϧΞϓϦଆͰରࡦΛ࿅Δඞཁ͕ग़͖ͯͨɻ ฏ೔ͷ21:00 - 23:00
  4. ߨࢣ৘ใऔಘAPIͷ࢓༷ 08 1. ΞϓϦىಈ࣌ʹશͯͷϑΟϦϐϯߨࢣΛऔΔඞཁ͕͋Δ(໿1000ਓ) 2. ΩϟογϡΛ࢖͍ͬͯͯ༗ޮظݶ͸อଘ͔ͯ͠Β10෼Ҏ಺ 3. Ωϟογϡ͕࢒͍ͬͯΕ͹ΞϓϦ಺DBΛ࢖͏ɺظݶ੾ΕͳΒAPI௨ ৴ 4.

    Ϩοεϯ༧໿ͷࡍʹ͸ʮߨࢣ৘ใʯͱʮߨࢣͷεέδϡʔϧ৘ใʯ͕ ඞཁ 5. ߨࢣΫϥε͕ͦΕͧΕͷεέδϡʔϧΫϥεΛอ͍࣋ͯ͠Δ 6. ΞϓϦىಈ࣌ʹ1िؒ෼ͷεέδϡʔϧ৘ใΛऔಘ͍ͯ͠Δ 7. ଞͷੜెʹઌʹͦͷεέδϡʔϧΛऔΒΕ͍ͯͨΒϨοεϯΛ༧໿Ͱ ͖ͳ͍ͷͰͰ͖Δ͚ͩʮৗʹ࠷৽ͷεέδϡʔϧʯΛը໘ʹ൓ө͞ ͤͳͯ͘͸ͳΒͳ͍ ࣌ؒͷߜΓࠐΈ ೔ʹͪͷߜΓࠐΈ
  5. ϑϩϯτΤϯυΤϯδχΞʹͱͬͯͷ APIͷݟ͑ํ 13 1. ۃྗඞཁͳ͍৘ใͰ͸API௨৴Λආ͚Δઃܭʹ͢Δ 2. Ϙλϯ࿈ଧରԠʹ͸ؾΛ͚ͭΔ 3. APIଆͷerrorCode͸ඞͣߟྀ͢Δ 4.

    ΞϓϦଆͰ΋ྫ֎ॲཧ͸ۃྗߦ͏ 5. API͸ແݶʹ࢖͑Δͷͩͱࢥ͏܏޲͕͋ΔͷͰෆඞ ཁʹୟ͔ͳ͍ઃܭΛ৺͕͚Δඞཁ͕͋Δ 6. αʔόʔ΁ͷෛՙΛߟྀ͢Δ