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
2.8k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AbemaTVでネイティブエンジニア からサーバーエンジニアに挑戦した話
Battle Conference U30
http://bcu30.jp/
nghialv
March 13, 2017
More Decks by nghialv
See All by nghialv
How LLMs Actually Work
nghialv
0
30
Presentation for CA.go
nghialv
0
130
A consistent delivery process with GitOps style for any application on any platform
nghialv
0
550
How it works - 1.1 - What happens when you run kubectl apply command
nghialv
0
1.1k
Why and how we build a unified CD system
nghialv
0
370
PipeCD at CyberAgent
nghialv
2
1.2k
Introdution_to_PipeCD.pdf
nghialv
2
750
The Journey of Software Delivery
nghialv
4
470
Monitoring at AbemaTV
nghialv
18
12k
Other Decks in Technology
See All in Technology
4人目のSREはAgent
tanimuyk
0
360
AIに障害切り分けを全部やってもらった。 。 。 。
estie
0
330
AWS Summit Japan 2026の振り返りと2027へ向けて / AWS Summit Japan 2026 Recap and Prospects for 2027
kaminashi
1
180
勉強会企画をアプリで構造化してみた 〜そこで見えた、AIとの付き合い方〜 / I've structured a study group plan using an app.
pauli
0
280
Docker Desktop不要の時代が来る? WSL標準の「wslc」で Linuxコンテナを動かしてみた.
ueponx
0
540
水を運ぶ人としてのリーダーシップ
izumii19
4
1.2k
5分でわかるDuckDB Quack
chanyou0311
4
300
SRE歴2ヶ月でも開発6年の知見を活かして、チームで止まっていた環境改善を前に進めた話
a_ono
0
170
Fabricをフル活用する AI Agent Hub -製造業特化AIエージェントの設計
iotcomjpadmin
0
190
アラート調査向けAIエージェントの本番導入とその後/AI Agents for Alert Investigation: Production Deployment and After
taddy_919
1
320
“詰む”前に仕組みを作れ 〜技術の波に溺れないためのキャッチアップ術〜
takasyou
8
5k
記録をかんたんに、提案をパーソナルに ── AIであすけんが目指すもの
oprstchn
0
120
Featured
See All Featured
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
460
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
150
Become a Pro
speakerdeck
PRO
31
6k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
230
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
550
Color Theory Basics | Prateek | Gurzu
gurzu
0
380
Designing for humans not robots
tammielis
254
26k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
How to train your dragon (web standard)
notwaldorf
97
6.7k
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ͳͷͰ৭ʑઓ͠·͠ΐ͏ʂ ·ͱΊ