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
マイクロサービスアーキテクチャのトレードオフとコンポーネント増加について〜Yahoo!ニュース〜
Search
LINEヤフーTech (LY Corporation Tech)
PRO
December 16, 2025
Technology
0
51
マイクロサービスアーキテクチャのトレードオフとコンポーネント増加について〜Yahoo!ニュース〜
2025年12月1日に開催された「LINEヤフー Developer Meetup #1 in Tokyo 紀尾井町LT忘年会2025」での発表資料です。
LINEヤフーTech (LY Corporation Tech)
PRO
December 16, 2025
Tweet
Share
More Decks by LINEヤフーTech (LY Corporation Tech)
See All by LINEヤフーTech (LY Corporation Tech)
事業とともに成長するMLプロダクト
lycorptech_jp
PRO
1
56
Open Table Formatにおけるストレージ抽象化の比較
lycorptech_jp
PRO
1
180
日本語テキストと音楽の対照学習の技術とその応用
lycorptech_jp
PRO
1
480
Java Virtual Threads, Kotlin Coroutines, Go Goroutinesの比較
lycorptech_jp
PRO
1
130
AIプラットフォームにおけるMLflowの利用について
lycorptech_jp
PRO
2
290
MLflowダイエット大作戦
lycorptech_jp
PRO
1
260
4%ルールとN1思考──不確実性に対抗するディスカバリー検証
lycorptech_jp
PRO
1
240
初めてのOSS貢献の雑ガイド
lycorptech_jp
PRO
1
67
LINEスタンプ開発の日常
lycorptech_jp
PRO
1
760
Other Decks in Technology
See All in Technology
Claude Codeで実践するスペック駆動開発入門 / sdd-with-claude_code
yoshidashingo
2
2.3k
使って学ぼう MCP (と GitHub Codespaces)
tsubakimoto_s
1
180
22nd ACRi Webinar - ChipTip Technology Eric-san's slide
nao_sumikawa
0
130
Amazon Rekognitionで 「信玄餅きなこ問題」を解決する
usanchuu
1
400
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
2
1k
Generative UI を試そう!A2-UIでAIエージェントにダッシュボードを作らせてみた
kamoshika
1
220
#23 Turing × atmaCup 2nd 6th Place Solution + 取り組み方紹介
yumizu
0
150
技術書を出版するまでの1161時間50分38秒
kakeami
0
110
Goで実現する堅牢なアーキテクチャ:DDD、gRPC-connect、そしてAI協調開発の実践
fujidomoe
1
120
Agent Skills 入門
puku0x
0
660
個人的3D Gaussian Splattingニュースをご紹介 / sharing 3d gaussian splatting news
drumath2237
0
250
Getting started with Google Antigravity
meteatamel
0
210
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
ラッコキーワード サービス紹介資料
rakko
1
2.4M
Building Flexible Design Systems
yeseniaperezcruz
330
40k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
61
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
170
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
WCS-LA-2024
lcolladotor
0
460
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Transcript
マイクロサービスアーキテクチャの トレードオフとコンポーネント増加について 〜Yahoo!ニュース〜 2025/12/01 後藤 拓実
自己紹介 後藤 拓実 2012年にヤフー株式会社に新卒で入社。社内向けツールの開発後、 Yahoo!ニュースのコメント機能の運用・開発を担当しつつ、2017年頃よ りニュース全体の技術刷新のテックリードとしてグランドデザインの策定 を行い、2022年頃にNEWSWEB SREの立ち上げを行う。記事入稿システ ムチームのリーダーを経て、2025年4月よりYahoo!ニュース開発部長。 2025年10月よりニュース領域アーキテクト。
システムや組織などの構造と、それらが生み出す影響やトレードオフを考 えるのが好き。
話すこと • コンポーネント(デプロイ単位)が多い。 • どうしてこうなったのかを考えた。 • 役に立つ知見というよりは事例紹介的な内容
Yahoo!ニュースにおける マイクロサービス
全社視点とニュース視点 • 全社視点 ◦ トップページ, 天気, ニュース... と巨大なドメインの中に「ニュース」がある。 • ニュース視点
◦ さらにその中にサブドメインと、それに対応するチームが存在 ▪ フロント: NewsWeb、NewsApp ▪ サブドメイン: コメント、エキスパート、トピックス、記事・媒体等 • 規模感 ◦ Yahoo!ニュース領域だけで 100以上のデプロイ単位(コンポーネント) が存在。 ※例外的にWebのみサブドメインを管掌する各チームが共同開発している
歴史的経緯に基づくMSA • 戦略的設計ではなく歴史的経緯 ◦ 意図的な設計戦略に基づいたMSAではない。結果としてMSAで説明できる形になった ◦ ニュースの各領域が増える際に、既存システムへの追加改修ではなくチーム・システムが増 えるようなタイミングが幾度かあった • 組織とシステムの相関
◦ 組織構造がシステム構造に反映されている。 ◦ 5年前頃の技術刷新のタイミングでWebのみ統合をして共同開発の形にした
サブドメインを管掌するチームの特徴 各チームの独立性 • 各チーム(コメント、トピックス、記事、etc.)が独立したバックログを持つ。 ◦ 実体としては約8個の開発チームが存在 • 各チームがサブドメインに対応するシステムを管掌する ◦ 例外もあり、複数管掌したり分割して管掌するチームも存在する
• 設計・マネジメント・技術選定に裁量(自由)がある ◦ 言語など全社で決められている部分もある • 職能横断型(エンジニア、デザイナー、企画が1チーム)。
現状の構造のメリット • 認知コストの低減 ◦ 各チームはドメインに従った領域(システムと責務)を管掌するため、 担当範囲に集中できる。 • 意思決定のスピード ◦ ステークホルダーが明確(コメントならコメントユーザー等)なため、
コミュニケーションや優先順位付けの負担が減る。 • 施策実行の速度 ◦ 必要な職能がチーム内に揃っているため、立案から実施までがスムーズ。 • 挑戦のしやすさ ◦ チームごとに自由度が高く、領域ごとの改善が進みやすい。
現状の構造のデメリット • 全体最適の難しさ ◦ ニュース全体での優先順位に基づいた施策実施が難しい(チームごとに事情や忙しさが異なる)。 ◦ チーム毎の管掌領域があるため、稼働状況関係なくどのチームがやるか決まったり、決まらなかったり。 • 人員数変化に弱い ◦
チーム機能維持に最低人数が必要となり、人員変化への弾力性が弱い。一方で機能が増えても新チームを簡 単には作れない。 • サイロ化しやすい ◦ 隣のチームが「別組織」のような感覚になりやすい。独自の文化・マネジメントスタイルにより、チーム間 異動の学習コストが高い。 • 全体視点を持ちづらい ◦ メンバーにとって「管掌システム=世界」になりやすく、ニュース全体を意識できる人が育ちづらい。
問題意識:コンポーネント数が多い
問題の焦点 コンポーネント数が非常に増えてしまっている • 1つのサービス領域(ニュース)で100以上のデプロイ単位が存在。 • これにより保守コストが増大している。 • フレームワークやライブラリの定期的なアップデート追従や脆弱性対応等
なぜ増えたのか(要因分析) 現状のMSAの状態を踏まえると、単に「分けすぎた」のではなく、歴史的・構造的な理由がありそう。 • 過去の開発スタイルの名残 ◦ 新規施策を「プロジェクト」として切り出し、新規システムとして開発する文化があった。 • 既存機能への当てはまりにくさ ◦ 既に機能単位でシステムが細分化されているため、既存の機能に当てはまらない新機能は「新規デプ
ロイ単位」として増やすしか選択肢がない。 • 「中心となる部分」の不在 ◦ 「ニュースバックエンド」と呼べるコアシステムが存在しないため、機能を増やすときに分けざるを 得ない。 • リスク回避としての分割 ◦ 「障害時の影響範囲を限定的にできる」というメリットが、分割することへの抵抗感を下げている。
新たな変数の登場:生成AI 生成AIの登場により、従来よりも低コストで柔軟な機能開発が可能になった。 技術的容易さが招く複雑性 • 既存の枠組みに収まらないコンポーネントを安易に増やす誘惑が強まっている。 • これまで以上にシステムが断片化しやすい土壌ができつつある。
所感 - 問題(コンポーネント増加)に対して表面的にはコンポーネントの統廃合が まず手段として出てくる - 深堀ると、コアとなるシステムがないことや、コミュニケーションコスト回 避やリスク回避という原因も見えてくるため、こういった部分にも対処が必 要そうということが分かる(分かってきた) - 今のメリデメを踏まえつつどうアプローチしていくかはよく考えたい
終