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
AbemaTVでネイティブエンジニア からサーバーエンジニアに挑戦した話
Search
nghialv
March 13, 2017
Technology
3
2.8k
AbemaTVでネイティブエンジニア からサーバーエンジニアに挑戦した話
Battle Conference U30
http://bcu30.jp/
nghialv
March 13, 2017
Tweet
Share
More Decks by nghialv
See All by nghialv
Presentation for CA.go
nghialv
0
130
A consistent delivery process with GitOps style for any application on any platform
nghialv
0
520
How it works - 1.1 - What happens when you run kubectl apply command
nghialv
0
1k
Why and how we build a unified CD system
nghialv
0
360
PipeCD at CyberAgent
nghialv
2
1.1k
Introdution_to_PipeCD.pdf
nghialv
2
730
The Journey of Software Delivery
nghialv
4
440
Monitoring at AbemaTV
nghialv
18
12k
ReactiveCocoa
nghialv
0
840
Other Decks in Technology
See All in Technology
Claude Codeが爆速進化してプラグイン追従がつらいので半自動化した話 ver.2
rfdnxbro
0
470
「Blue Team Labs Online」入門 - みんなで挑むログ解析バトル
v_avenger
0
130
Fundraising Gala’s in 2026 What’s Changing & What Still Works
auctria
PRO
0
110
OCI技術資料 : コンピュート・サービス 概要
ocise
4
54k
ナレッジワークのご紹介(第88回情報処理学会 )
kworkdev
PRO
0
150
新職業『オーケストレーター』誕生 — エージェント10体を同時に回すAgentOps
gunta
4
1.7k
EMからICへ、二周目人材としてAI全振りのプロダクト開発で見つけた武器
yug1224
5
510
ナレッジワーク IT情報系キャリア研究セッション資料(情報処理学会 第88回全国大会 )
kworkdev
PRO
0
140
OpenClawで回す組織運営
jacopen
3
660
自動テストが巻き起こした開発プロセス・チームの変化 / Impact of Automated Testing on Development Cycles and Team Dynamics
codmoninc
3
1.3k
When an innocent-looking ListOffsets Call Took Down Our Kafka Cluster
lycorptech_jp
PRO
0
120
越境する組織づくり ─ 多様性を前提にしたチームビルディングとリードの実践知
kido_engineer
2
160
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
480
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
97
How to make the Groovebox
asonas
2
2k
ラッコキーワード サービス紹介資料
rakko
1
2.6M
エンジニアに許された特別な時間の終わり
watany
106
240k
Evolving SEO for Evolving Search Engines
ryanjones
0
150
Optimising Largest Contentful Paint
csswizardry
37
3.6k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
150
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
89
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
280
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
Transcript
AbemaTVͰωΠςΟϒΤϯδχΞ ͔ΒαʔόʔΤϯδχΞʹઓͨ͠ CyberAgent, Inc. AbemaTV։ൃہ αʔόʔαΠυΤϯδχΞ LE VAN NGHIA (ΪΞ)
• nghialv2607 • nghialv About me • 2014/11: CyberAgent 15৽ଔೖࣾ
• ~ 2015/6: AmebaΞϓϦ - iOS • ~ 2016/7: FRESH!ੜ์ૹ - iOS • ~ ࠓ : AbemaTV - Server Side ID ڵຯ • Φʔϓϯιʔε։ൃ ϓϩδΣΫτܦྺ • ΪΞ • ؔܕϓϩάϥϛϯά Hakuba, Future, MaterialKit…
”20ͷ൴Β͕ͲΜͳ͜ͱʹʮ ઓʯ͍ͯ͠Δͷ͔” ຊͷTalk BattleͷςʔϚ
ωΠςΟϒΤϯδχΞ αʔόʔΤϯδχΞ ➡
Ҡಈͷཧ༝ • ࣝΛ෯͍ͨ͘͠ • ΫϥυɺωοτϫʔΫ • େྔσʔλॲཧ • ࢄγεςϜɺϚΠΫϩαʔϏε
AbemaTVαʔόʔͷϞχλϦϯάγεςϜΛ࡞ ॳΊͯͷλεΫ
1 repository 35 repositories native server AbemaTVͷίʔυ
AbemaTVͷαʔόαΠυ Cloud DNS Cloud Load Balancer Cloud Router Cloud CDN
Pub/Sub BigQuery Cloud Storage Transcoder Kubernetes Wowza HLS MPEG-DASH DRM gRPC Microservices Protocol Buffers Varnish Alpine Linux Terraform Packer MongoDB Redis Cluster Elasticsearch Firebase
• ຊ • ϓϩδΣΫτͷࢿྉ • ݸਓGoogle CloudͷΞΧϯτ࡞ɼ ৭ʑ༡ΜͰΈΔ • AbemaTVίʔυΛಡΉ
• etcd, kubernetes…ͷίʔυΛಡΉ
GCP + Kubernetes + gRPC Google Cloud Platform Kubernetes Service
Service Service gRPC gRPC
AbemaTVͷΞʔΩςΫνϟ streaming-server gateway Media User Comment Share Question Purchase Firebase
Watchman Transcoder Ad system encoder Live Transcoder varnish api access live-gateway Compute Engine MongoDB Redis Cluster Container Engine Cloud Storage Firebase media access live admin access stateful stateless
Ϩϕϧ ྫ ΞϓϦέʔγϣϯ http, grpcͷΤϥʔɼϨΠςϯγɼ෦ঢ়ଶ ίϯςφ ίϯςφϦιʔεঢ়ଶ ΦʔέετϨʔγϣϯ ΫϥελʔͷϦιʔεɼεέδϡʔϦϯά ϗετ
(OS, Hardware) ϗετͷϦιʔεɼhardwareΤϥʔ ωοτϫʔΫ routers, switches ऩू͢Δσʔλ
࣌ܥྻDBͷબ • DalmatinerDB • InfluxDB • Prometheus • OpenTSDB •
Graphite • … “top10 time series databases”ͷϒϩάʹΑΓ
• PrometheusKubernetesͱ࿈ܞ͍ͯ͠Δ • αʔϏεσΟεΧόϦʔ: ΫϥυͷΑ͏ͳμΠφϛοΫͳڥʹendpoints͕มߋ͞ΕΔ • ίϯςφ, ΦʔέετϨʔγϣϯ ͷϝτϦΫεΛऔಘ͍͢͠ •
Prometheusͷੑೳ • ύϑΥʔϚϯεɿ • ҰͭͷPrometheusαʔό800K samples/s • Federation • ѹॖ: 12.3ഒ (ѹॖͳ͠ɿ16 bytes/sample, Prometheus: 1.3 bytes/sample) • PrometheusGrafanaͱ࿈ܞ͍ͯ͠Δ • PrometheusGolangͰॻ͔Ε͍ͯΔ PrometheusΛબͨ͠ཧ༝
AbemaTVʹ͓͚ΔPrometheus
Ռ
None
None
AlertManager Slack࿈ܞ͢ΔBot - ࣾ֎ϞόΠϧͰίϚϯυͰ γεςϜͷϝτϦΫε͕ݟ͑Δ - Τϥʔ, latency percentileͳͲ ͕ߴ͘ͳΔͱ௨͕དྷΔ
• ωΠςΟϒΤϯδχΞ͔ΒαʔόʔΤϯδχΞʹઓͷ • AbemaTVͷϞχλϦϯάγεςϜͷৄ͍͠ใ • “AbemaTVʹPrometheusͱ͍͏ϞχλϦϯάγεςϜΛಋೖͨ͠”ͷϒϩάϔ • αʔόʔΓ͍ͨωΠςΟϒΤϯδχΞ • ݴޠ͡Όͳͯ͘linux,
network, cloudؔ͢Δࣝͷ४උΛΦεεϝ • ·ͩ20ͳͷͰ৭ʑઓ͠·͠ΐ͏ʂ ·ͱΊ