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

遷移の高速化 ヤフートップの試行錯誤

narirou
February 27, 2025

遷移の高速化 ヤフートップの試行錯誤

LY社では、Webパフォーマンスの改善による高速化の取り組みを続けてきました。中でもbfcacheの有効化は、ユーザー影響が大きく重要視していた技術の一つです。
bfcache(バックフォワードキャッシュ)とは、ブラウザでページを遷移した時にページの完全なスナップショットとして保存されるメモリキャッシュを指し、有効化することで高速な遷移を実現することができます。
Yahoo!ニュースの例では、有効化することにより、PVが+2%向上、広告売上が+9%向上する結果がもたらされており、ユーザーにもより良い体験を提供することが出来ています。
ところが、一見メリットがあるだけに見えるこの対策にも「例外」がありました...。
"Yahoo! JAPAN トップページ"は、日本でも有数のアクセスを誇る巨大なWebサービスですが、本ページでbfcacheを有効化したところ、どういう理由かビジネスとしておっている広告売上やクリック数といった指標が、軒並み低下する事態となってしまったのです。
本セッションでは、bfcaheを有効化するための技術を振り返りながら、なぜユーザーメリットの高い施策によってビジネス指標が低下する事例があるのか、その謎について数値分析から迫り、最も苦戦した"Yahoo! JAPAN トップページ"で直面した課題を解決にまで到った流れをご説明します。

narirou

February 27, 2025
Tweet

More Decks by narirou

Other Decks in Technology

Transcript

  1. ˜-:$PSQPSBUJPO *OUFSOBM6TF0OMZ  :BIPPχϡʔεͷݕূ݁Ռ ΨλπΩͷͳ͍ ߴ଎ͳભҠ 17  ޿ࠂച্ 

    ˠ ͜ΕΒͷ݁ՌΛ౿·͑ͯɺϠϑʔͰ͸શࣾతʹCGDBDIFΛ༗ޮԽ͢Δํ਑ΛͱΔ͜ͱʹɻ
  2. ˜-:$PSQPSBUJPO *OUFSOBM6TF0OMZ  -:Ͱ͸ɺͦΕͧΕͷཁҼΛਫ਼ࠪɺϠϑʔ؀ڥͰ༗ޮԽग़དྷΔΑ͏ʹεςοϓʹ෼͚ͯશମతͳमਖ਼Λ͔͚ ·ͨ͠ɻ ແޮԽ͞ΕΔॲཧ VOMPBEΠϕϯτϋϯυϥ Ωϟογϡઃఆ DBDIFDPOUSPMOPTUPSF ࣮૷ࡁΈϩά

    શࣾڞ௨1SPYZ͔Β Permissions-Policy: unload=() ϔομΛ෇༩ Cache-Control: no-store ΛՄೳͳൣғͰ΍Ίͯɺ ద੾ͳΩϟογϡઃఆʹ มߋ શࣾͷϩάΨΠυϥΠϯ ج४Λݟ௚͠ɺ࣮૷ࡁΈ ͷՕॴΛमਖ਼ CGDBDIFͷ༗ޮԽΛ્ΉཁҼΛશࣾతʹͳ͘͢
  3. ˜-:$PSQPSBUJPO *OUFSOBM6TF0OMZ  CGDBDIFΛ༗ޮԽͨ͠࠷ॳͷςετͷ݁Ռ :BIPP+"1"/ͷτοϓϖʔδʹ͓͍ͯɺCGDBDIFΛ༗ޮԽͨ͠ࡍͷճ໨ͷςετ݁Ռɻ • ✅ Ϣʔβʔମݧ͸޲্ • 🙅Ϗδωεࢦඪ͸ݢฒΈ௿Լͨ͠

     ओཁίϯςϯπͷΫϦοΫ਺ • ϝΠϯΧϥϜͷ਺஋͕௿Լ τϐοΫεɺλΠϜϥΠϯ • ӈΧϥϜͷ਺஋͕௿Լ  ܝࡌ͍ͯ͠Δ޿ࠂച্͕ ϚΠφε
  4. ˜-:$PSQPSBUJPO *OUFSOBM6TF0OMZ  Ծઆ ޿ࠂදࣔػձΛ௿Լ͍ͤͯ͞ͳ͍͔ʁ τοϓϖʔδͷϖʔδಛੑͱͯ͠ӈΧϥϜ্෦ʹɺॏཁͳ޿ࠂ࿮Λܝग़͓ͯ͠Γ޿ࠂछผʹΑͬͯѻ͍͕ҟ ͳ͍ͬͯΔɻ • ӡ༻ܕ ࿮ΛೖࡳܗࣜͰߪೖ͠ɺڝΓউͬͨ޿ࠂΛ഑৴͢Δܗࣜ

    • ༧໿ܕ ࿮Λ͋Β͔͡Ίߪೖ͠ɺܾΊΒΕ͕ͨࣾ഑৴͢Δܗࣜ ӡ༻ܕͷϚΠφεӨڹ͸ͳ͔ͬͨ΋ͷͷɺ༧໿ܕͷ දࣔػձ͕௿Լͨ͜͠ͱͰɺશମͷച্͕ϚΠφε ͱͳ͍ͬͯͨɻ Ծઆ͸ਖ਼͔ͬͨ͠
  5. ˜-:$PSQPSBUJPO *OUFSOBM6TF0OMZ ՄࢹྖҬ ՄࢹྖҬ  CGDBDIF༗ޮͷͱ͖ "% ભҠ͠ϒϥ΢βόοΫ "% ՝ۚ

    ϖʔδ͕CGDBDIF͔Β෮ݩ ޿ࠂ͸ͦͷ·· ༗ޮͷ৔߹͸ɺϖʔδ͕࠶औಘ͞Εͳ͍ͷͰ޿ࠂͷίϯςϯπ಺༰͕มԽͤͣɺදࣔ΋ͦͷ··ͱͳΔɻ
  6. ˜-:$PSQPSBUJPO *OUFSOBM6TF0OMZ  ରࡦΛߦͬͨςετ݁Ռ • ✅ Ϣʔβʔମݧ͸޲্ • ✅Ϗδωεࢦඪ΋޲্ 

    ओཁίϯςϯπͷΫϦοΫ਺͸༗ҙࠩͳ͠ɺ·ͨ͸޲্ ϝΠϯΧϥϜͷओཁ਺஋͸ίϯςϯπߋ৽ੑΛ୲อͨ͜͠ͱʹΑͬͯΫϦοΫ਺͕޲্  ܝࡌ͍ͯ͠Δ޿ࠂച্͸ᆝଛͳ͠ʹ ࠶Ҿ౰͢Δػೳ௥ՃʹΑͬͯɺϚΠφεͷඇৗʹେ͖ͳϏδωεΠϯύΫτΛճආ :BIPP+"1"/ͷτοϓϖʔδʹ͓͍ͯɺCGDBDIFΛ༗ޮԽͨ͠ࡍͷ࠷ऴతͳςετ݁Ռɻ
  7. ˜-:$PSQPSBUJPO *OUFSOBM6TF0OMZ  ݁Ռ͔ΒΘ͔Δ͜ͱ CGDBDIFΛ༗ޮԽ͢ΔͱɺҰൠతʹ͸ • ϒϥ΢βભҠͷ69͸େ͖͘޲্ • ଟ͘ͷέʔεͰ͸Ϗδωεࢦඪ΋޲্͢Δ ͨͩ͠ɺҰ෦ͷέʔεͰ͸

    • ߋ৽ੑ͕ඞཁͳ৔߹ɺ௕ظؒͷΩϟογϡʹΑͬͯΫϦοΫ਺௿ԼͷՄೳੑ͕͋Δ Ωϟογϡͷ55-Λܭࢉ͠ɺίϯςϯπͷߋ৽ॲཧΛߦ͏͜ͱͰվળͰ͖Δ • ϖʔδ্෦ʹॏཁίϯςϯπ͕͋Δ৔߹ɺܝग़ػձʹӨڹ͢Δ৔߹͕͋Δ ಛʹ༧໿ܕ޿ࠂͳͲɺ޿ࠂछผ΍ܝࡌՕॴʹԠͯ͡࠶Ҿ౰Λݸผʹ࣮ࢪ͢Δ͜ͱͰվળͰ͖Δ