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
Handling TV Ad Traffic Influx with Microservices
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Ryo Kubota
July 23, 2019
Programming
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Handling TV Ad Traffic Influx with Microservices
https://wantedly.connpass.com/event/135968/
での登壇資料です。
Ryo Kubota
July 23, 2019
More Decks by Ryo Kubota
See All by Ryo Kubota
Terraform x OPA/Conftest の tips
ryokbt
0
1.2k
TerraformのレビューをConftestで自動化する
ryokbt
3
1.8k
Other Decks in Programming
See All in Programming
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.5k
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
500
CSC307 Lecture 17
javiergs
PRO
0
320
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.5k
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
120
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.3k
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
450
Agentic UI
manfredsteyer
PRO
0
110
New "Type" system on PicoRuby
pocke
1
480
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
240
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
140
Lessons from Spec-Driven Development
simas
PRO
0
140
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
580
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2k
Believing is Seeing
oripsolob
1
140
Six Lessons from altMBA
skipperchong
29
4.3k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
The Cult of Friendly URLs
andyhume
79
6.9k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
860
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
570
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
22k
Transcript
FiNC Technologies Ryo Kubota )BOEMJOH57"E5SBGGJD*OGMVY XJUI.JDSPTFSWJDFT
• Ryo Kubota • FiNC Technologies • SRE • New
graduate 8IPBN*
• What is Microservices? • About our TV Ad •
Discussion on Microservices after TV Ad "HFOEB
What is Microservices?
An architecture that structures a big system as a collection
of small services 8IBUJT.JDSPTFSWJDFT
• Technical heterogeneity • Resiliency • Scalability • etc #FOFGJUTPG.JDSPTFSWJDFT
8IZ'J/$BEPQU.JDSPTFSWJDFT
l0OF"QQGPS&WFSZ#PEZz The concept goes well with Microservices New functions have
been quickly released UP$BQQ "VUIFOUJDBUJPO &DPNNFSDF "* $PVQPO 8FBSBCMF 3FDPFOHJOF -JGFMPH 4/4 $IBU UP#TJUF 1PJOU 4VQQMFNFOU
About our TV Ad
57"E5SBGGJD*OGMVY
• .VMUJQMF/FX'VODUJPOT3JHIU #FGPSFUIF57"E • https://note.mu/mizoguchiyuji/n/n1267b01a3756
• Traffic influx • Parallel development right before the TV
ad • But NO DOWNTIME 8FIBOEMFE57"E
Discussion on Microservices after TV Ad
8IBUEJEXPSL 4DBMJOH
• You can scale out each function separately 8JUI.JDSPTFSWJDFTʜ
"NJDSPTFSWJDFGPSVTFSPOCPBSEJOH Transition in the number of workers → TV ad
started
• Quicker than scaling a single big monolith • Cost
saving 4DBMJOH.JDSPTFSWJDFT
8IBUEJEXPSL 'VODUJPO#BTFE1BSUJUJPOJOH
• .VMUJQMF/FX'VODUJPOTVOEFS %FWFMPQNFOUJO1BSBMMFM • https://note.mu/mizoguchiyuji/n/n1267b01a3756
• You just need to focus on a single function
• This can only be done with Microservices 1BSBMMFM%FWFMPQNFOU
'VUVSFJNQSPWFNFOU -FHBDZ.POPMJUI
"-FHBDZ.POPMJUI4UJMM3FNBJOT Legacy monolith can often be a bottleneck
&YBNQMFBU'J/$ .POPMJUI 4FSWJDF" 4FSWJDF# 4FSWJDF$ 4FSWJDF% : Synchronize user info
• This monolith has a knowledge about to which services it has to synchronize its information => Tight coupling (Anti-pattern)
• Anti-pattern emerged as a problem under increased traffic •
The queues for synchronization got stuck *ODJEFOU%VSJOH57"E
-PPTF$PVQMJOH • Each microservice should not have knowledge about other
services • Use pub/sub model instead • Microservice just publishes some event • Other microservices subscribe it if needed
.JHSBUJPOGSPN.POPMJUI • When you adopt Microservices, you often need to
migrate from monolithic architecture • Legacy monolith is likely to be tightly coupled to other services • Complete migration not to fall into anti-patterns • Otherwise you might end up increasing complexity
$PODMVTJPO
$PODMVTJPO • We ran TV ad • We handled the
traffic influx and parallel development with Microservices • Explained about a legacy monolith as future improvement