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

日経電子版アプリが高速化のためにやったこと

 日経電子版アプリが高速化のためにやったこと

2015/10/27 RealmMeetup #8 at Sansan

84b1af6e25bb32231d2de864353f4961?s=128

Taishi Takeichi

October 27, 2015
Tweet

Transcript

  1. ೔ܦిࢠ൛ΞϓϦ͕ ߴ଎ԽͷͨΊʹ΍ͬͨ͜ͱ ೔ຊܦࡁ৽ฉࣾɹ෢ࢢେࢤ 

  2. ɾେֶଔۀޙɺόϯυ׆ಈɻ ɾ೥ɺ8FC։ൃձࣾʹೖࣾɻ8FCΤϯδχΞͱͯ͠ಇ͘ɻ ɹ+BWBTDSJQU"DUJPO4DSJQU-".1؀ڥͰͷ։ൃ ɹ'9औҾͷ8FCΞϓϦ։ൃͳͲʹैࣄɻ ɾ೥ɺ೔ຊܦࡁ৽ฉࣾʢຊࣾʣʹೖࣾɻ ɹαʔϏε։ൃͷϞόΠϧɾΞϓϦνʔϜʹ഑ଐɻ ࣗݾ঺հ

  3. ࠓ೔͓࿩͍ͨ͜͠͠ͱ ɾ೔ܦిࢠ൛ʹ͍ͭͯͷ͝આ໌ ɾ೔ܦిࢠ൛ΞϓϦ͕஗͔ͬͨݪҼ ɹʢΞϓϦىಈʙσʔλऔಘʙը໘දࣔʣ ɾ଎͘͢ΔͨΊʹ΍ͬͨ͜ͱ

  4. ೔ܦిࢠ൛ʹ͍ͭͯ

  5. ೔ܦిࢠ൛ ɾ೥݄̏૑ץ ɾϝΠϯϓϩμΫτ͸ɺ ɹ1$αΠτɾεϚϗαΠτɾిࢠ൛ΞϓϦɾࢴ໘ϏϡʔΞΞϓϦ ɾ೔ຊܦࡁ৽ฉேץɾ༦ץͷશهࣄɺ8FCݶఆͷΦϦδφϧهࣄɺ ɹ͜ΕΒͷهࣄΛύʔιφϥΠζͯ͠ఏڙ͢Δ.Zχϡʔε

  6. ༗ྉձһ ໿ສਓ௒ɹ ແྉձһ ໿ສਓ ະొ࿥Ϣʔβʔ ໿ສ6# શهࣄɾશػೳ ʢ ԁʗ݄ʣ ແྉهࣄ

    ༗ྉهࣄຊʗ݄ ແྉهࣄ ೔ܦిࢠ൛
  7. ೔ܦిࢠ൛ΞϓϦʹ͍ͭͯ

  8. ೔ܦిࢠ൛ΞϓϦ ɾ೥ʹϦϦʔεɻ ɹ೥݄ʹϦχϡʔΞϧʢθϩ͔Β։ൃʣ ɾαʔόαΠυ΋"84΁ɻ ɾϑϩϯταΠυΛ֎෦ϝϯλʔͷ ɹྗΛआΓͭͭ಺੡Խɻ ɾݱঢ়ͷମ੍ ɹɹ1.໊ ɹɹJ04ΤϯδχΞ໊̍ʴϝϯλʔ ɹɹ"OESPJEΤϯδχΞ໊̍ʴϝϯλʔ

  9. جຊతͳը໘ͷߏ੒ Ұཡ هࣄ ֊૚

  10. ؆୯ͳߏ੒ਤ "1* جຊతʹ$%/͔ΒσʔλʢKTPOʣΛ [JQϑΝΠϧͰऔಘ

  11. ؆୯ͳߏ੒ਤ "1* جຊతʹ$%/͔ΒσʔλʢKTPOʣΛ [JQϑΝΠϧͰऔಘ ࠓ೔͸͜ͷ΁Μͷߴ଎Խͷ࿩

  12. ೔ܦిࢠ൛ΞϓϦ͕஗͔ͬͨݪҼ

  13. σʔλྔ͕ଟ͍ ೔ܦిࢠ൛ΞϓϦ͕஗͔ͬͨݪҼ

  14. ேץɾ༦ץ ɾ໿ϖʔδ ɾ೔໿ຊͷهࣄ ɾจࣈ਺͸໿ສจࣈ ɹ৽ॻ̎࡭෼ ిࢠ൛ʢ8FCץʣ ɾ8FC΍ΞϓϦ͚ͩͰಡΊΔهࣄ ɾ̍೔໿ຊͷهࣄ ʹ̍೔໿ຊͷهࣄ هࣄ਺͕ଟ͍

  15. ʢʣݟग़ͦ͠ͷ̍ ʢʣݟग़ͦ͠ͷ̎ ʢʣݟग़ͦ͠ͷ̏ ʢʣهࣄͷެ։೔࣌ ʢʣهࣄͷߋ৽೔࣌ ʢʣ༗ྉձһݶఆهࣄ͔Ͳ͏͔ ʢʣهࣄ಺ʹಈը͕͋Δ͔Ͳ͏͔ ʢʣهࣄΛอଘ͍͍͔ͯ͠Ͳ͏͔ ʢʣهࣄ͕ॴଐ͢Δ࿈ࡌɾίϥϜ໊ ʢʣهࣄຊจ

    ʢʣهࣄຊจͷεχϖοτ ʢʣαϜωΠϧը૾ʢαΠζʹΑͬͯछྨʣ ʢʣαϜωΠϧը૾ͷΫϨδοτ ʢʣؔ࿈هࣄ ɾɾɾ ̍هࣄ͋ͨΓͷ߲໨਺͕ଟ͍
  16. هࣄ಺ͷը૾΋࠷ॳʹ·ͱΊͯऔಘ͍ͯͨ͠ ςΩετ΋ը૾΋ؚΊΔͱɺ ಊʑͷ .#ʂʂ

  17. ඥ෇͚͕ଟ͍ ೔ܦిࢠ൛ΞϓϦ͕஗͔ͬͨݪҼ

  18. τοϓ ଎ใ Ϗδωε Ϧʔμʔ Ϛʔέοτ Ϛωʔ ిࢠ൛ʢ8FCץʣ ςΫϊϩδʔ τοϓ YYY

    YYY YYY YYY τοϓ YYY YYY YYY YYY ேץɾ༦ץ ֊૚ߏ଄͕ਂ͍ ɾɾɾ ɾɾɾ ϥΠϑ εϙʔπ ө૾ ୈ̍֊૚ ୈ̎֊૚ ୈ̏֊૚ ୈ̐֊૚ هࣄ
  19. هࣄ಺ը૾ ؔ࿈هࣄ هࣄ όοΫ φϯόʔ -- - . 4 ΫϨδοτ

    63- ෯ ߴ͞ هࣄ͔Βઌ΋ͳ͔ͳ͔ͷߏ଄ ɾɾɾ ༻ޠ اۀ໊ גՁͳͲ اۀ֓ཁ ؔ࿈هࣄ YYY ຊจ ɾɾɾ
  20. ଎͘͢ΔͨΊʹ΍ͬͨ͜ͱ

  21. औಘ͢ΔσʔλྔΛݮΒ͢ ଎͘͢ΔͨΊʹ΍ͬͨ͜ͱ

  22. ɾը૾͸[JQ͔Β͸औಘͤͣʹɺදࣔ͢Δ࣌ʹ౎౓औಘ͢Δ ɹˠ௨৴؀ڥ͕̑೥લΑΓେ෯ʹվળ ɾਂ͍֊૚͸දݱ͠ͳ͍͜ͱʹͯ͠ɺ֊૚৘ใྔΛݮΒ͢ ɹˠͲ͏ͤεϚϗը໘Ͱ͸දݱ͖͠Εͳ͍ ɾ࢖Θͳ͍αΠζͷը૾৘ใ΋औಘ͠ͳ͍ औಘ͢ΔσʔλΛݮΒ͢

  23. औಘ͢ΔσʔλΛݮΒ͢ .#ɹɹ,ʙ, ɾը૾͸[JQ͔Β͸औಘͤͣʹɺදࣔ͢Δ࣌ʹ౎౓औಘ͢Δ ɹˠ௨৴؀ڥ͕̑೥લΑΓେ෯ʹվળ ɾਂ͍֊૚͸දݱ͠ͳ͍͜ͱʹͯ͠ɺ֊૚৘ใྔΛݮΒ͢ ɹˠͲ͏ͤεϚϗը໘Ͱ͸දݱ͖͠Εͳ͍ ɾ࢖Θͳ͍αΠζͷը૾৘ใ΋औಘ͠ͳ͍

  24. KTPOϑΝΠϧΛෳ਺ʹ෼͚Δ ଎͘͢ΔͨΊʹ΍ͬͨ͜ͱ

  25. ֊૚ߏ଄σʔλ ֤هࣄҰཡσʔλ [JQ಺ͷKTPOϑΝΠϧΛෳ਺ʹ෼͚Δ هࣄ"ͷσʔλ ϚελʔKTPO هࣄKTPO ɾɾɾ هࣄ#ͷσʔλ هࣄ$ͷσʔλ هࣄ%ͷσʔλ

    ֊૚ߏ଄σʔλ ֤هࣄҰཡσʔλ هࣄ"ͷσʔλ ϚελʔʴهࣄKTPO ɾɾɾ هࣄ#ͷσʔλ هࣄ$ͷσʔλ هࣄ%ͷσʔλ
  26. ֊૚ߏ଄σʔλ ֤هࣄҰཡσʔλ KTPOϑΝΠϧΛෳ਺ʹ෼͚Δ هࣄ"ͷσʔλ ϚελʔKTPO هࣄKTPO ɾɾɾ هࣄ#ͷσʔλ هࣄ$ͷσʔλ هࣄ%ͷσʔλ

    ֊૚ߏ଄σʔλ ֤هࣄҰཡσʔλ هࣄ"ͷσʔλ ɾɾɾ هࣄ#ͷσʔλ هࣄ$ͷσʔλ هࣄ%ͷσʔλ [JQ[BQΛ࢖ͬͯɺ[JQΛղౚͤͣʹ ͦͷ࣌ʹඞཁͳKTPOσʔλ͚ͩऔΓग़͢ ϚελʔʴهࣄKTPO
  27. σʔλ֊૚ΛͳΔ΂͘ϑϥοτʹ͢Δ ଎͘͢ΔͨΊʹ΍ͬͨ͜ͱ

  28. ேץɾ༦ץͷҰཡʹ͸࣮͸֊૚ߏ଄͕ɾɾ ֊૚ΛϑϥοτʹͰ͖Δͱ͜Ζ͸͢Δ ਌هࣄ ࢠهࣄ ࢠهࣄ ࢠهࣄ ଙهࣄ ਌هࣄ ࢠهࣄ ࢠهࣄ

    ࢠهࣄ ଙهࣄ ϓϩύςΟͰ਌͔ࢠ͔ଙ͔Λ࣋ͭ
  29. ΞϓϦͷσʔλऔಘॲཧϑϩʔ [JQϑΝΠϧΛऔಘ Ұཡ৘ใͷσʔλΛऔΓग़ͯ͠ɺ Ұ෦֊૚Λϑϥοτʹͯ͠ɺ3FBMNʹอଘ Ұཡ͔Βهࣄ΁ભҠͨ࣌͠ʹɺ هࣄ৘ใͷσʔλΛऔΓग़ͯ͠ɺ3FBMNʹอଘ

  30. $PSF%BUBˠ3FBMN ଎͘͢ΔͨΊʹ΍ͬͨ͜ͱ

  31. 3FBMNͷ͍͍ͱ͜Ζ σʔλଆɾ"1*ଆΛ޻෉ͯ͠΋ɺ $PSF%BUBͷॲཧ଎౓ʹݶք͕͋ͬͨɾɾɾ ɾ$PSF%BUB͸ؔ࿈Λ͚ͭͨΦϒδΣΫτΛ·ͱΊͯ݅΄Ͳอଘ͢Δͱɺ ɹύϑΥʔϚϯε͕ٸܹʹམͪΔɻ ɹˠσʔλ਺΍ඥ෇͚͕ଟ͍೔ܦిࢠ൛ΞϓϦʹ͸޲͍͍ͯͳ͍ɻ ɾ3FBMN͸ؔ࿈Λ͚ͭͯ΋ߴ଎Ͱಈ࡞͢Δɻ ɾςʔϒϧͷఆ͕ٛෆཁͰɺϞσϧͷఆ͕ٛͦͷ··൓ө͞ΕΔɻ શൠతʹ3FBMNʹ੾Γସ͑ͨɻ

  32. 3FBMNͷͪΐͬͱ໘౗ͳͱ͜Ζ ɾOJM͕ೖΕΒΕͳ͍ ɹˠσϑΥϧτ஋Λઃఆͯ͠ɺۭจࣈͳͲΛೖΕͨ ɹˠೖΕΒΕΔΑ͏ʹͳͬͨʂ ɾεϨουΛ·͍ͨͰͷΦϒδΣΫτͷࢀর͕Ͱ͖ͳ͍ ɹˠࣄલʹϓϥΠϚϦʔΩʔΛϩʔΧϧͰอ࣋ͯ͠ɺ ɹɹͦΕΛ࢖༻ͯ͠ҧ͏εϨουͰऔಘͨ͠ ɾΧεέʔυ࡟আ͕Ͱ͖ͳ͍ ɹˠ࡟আ͢ΔϓϩύςΟ໊Λฦ͢ϝιουͱɺ ɹɹର৅ͱͳΔϓϩύςΟΛ࡟আ͢ΔϝιουΛࣗ࡞ͨ͠

  33. #FGPSF $PSF%BUBˠ3FBMNͰ୹ॖͰ͖ͨ࣌ؒ J1IPOFʗJ04Ͱɺ͋Δ೔ͷேץΛऔಘ

  34. #FGPSF "GUFS $PSF%BUBˠ3FBMNͰ୹ॖͰ͖ͨ࣌ؒ J1IPOFʗJ04Ͱɺ͋Δ೔ͷேץΛऔಘ

  35. #FGPSF "GUFS $PSF%BUBˠ3FBMNͰ୹ॖͰ͖ͨ࣌ؒ J1IPOFʗJ04Ͱɺ͋Δ೔ͷேץΛऔಘ ༧૝Ҏ্ͷߴ଎Խʹɺ ࣾ಺Ͱ΋͓͡͞·ͨͪΛத৺ʹڻ͖ͷ੠ʂ

  36. ·ͱΊ

  37. ·ͱΊ ɾσʔλߏ଄΍"1*ɾΞϓϦͷ྆໘͔Βߴ଎Խ ɾ࣌ʹ͸αʔϏεͷཁ݅Λม͑Δ͜ͱ΋ඞཁ ɾͦͯ͠3FBMN͸଎͔ͬͨ ೔ܦిࢠ൛ΞϓϦ͸ɺ ·ͩ·ͩΞοϓσʔτ͍͖ͯ͠·͢ɻ ࢴ໘ϏϡʔΞΞϓϦͰ΋3FBMNΛɻ

  38. ೔ܦిࢠ൛Ͱ͸ɺΤϯδχΞΛืू͍ͯ͠·͢ɻ ɾϑϩϯτΤϯυͰ΋όοΫΤϯυͰ΋0, ɾͱΓ͋͑ͣ৬৔ͷ͍ͧͯΈ͍ͨɺͰ΋0, Լه·Ͱؾܰʹ࿈བྷ͍ͩ͘͞ɻ EH@MBC!OFYOJLLFJDPKQ

  39. ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ