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
Introduction of LINE LIVE
Search
LINE Developers
March 27, 2019
Technology
1
1.4k
Introduction of LINE LIVE
Streaming Conference #6 @LINE
Kazuhiro Osawa ( @yappo )
LINE Developers
March 27, 2019
Tweet
Share
More Decks by LINE Developers
See All by LINE Developers
LINEスタンプのSREing事例集:大きなスパイクアクセスを捌くためのSREing
line_developers
3
2.4k
Java 21 Overview
line_developers
6
1.3k
Code Review Challenge: An example of a solution
line_developers
1
1.5k
KARTEのAPIサーバ化
line_developers
1
590
著作権とは何か?〜初歩的概念から権利利用法、侵害要件まで
line_developers
5
2.3k
生成AIと著作権 〜生成AIによって生じる著作権関連の課題と対処
line_developers
3
2.3k
マイクロサービスにおけるBFFアーキテクチャでのモジュラモノリスの導入
line_developers
9
3.8k
A/B Testing at LINE NEWS
line_developers
3
1.1k
LINEのサポートバージョンの考え方
line_developers
2
1.4k
Other Decks in Technology
See All in Technology
AIとともに歩む情報セキュリティ / Information Security with AI
kanny
4
2.7k
SREの仕事を自動化する際にやっておきたい5つのポイント
jacopen
6
1.2k
エンジニアとマネジメントの距離/Engineering and Management
ikuodanaka
3
680
Regional_NAT_Gatewayについて_basicとの違い_試した内容スケールアウト_インについて_IPv6_dual_networkでの使い分けなど.pdf
cloudevcode
1
180
ファシリテーション勉強中 その場に何が求められるかを考えるようになるまで / 20260123 Naoki Takahashi
shift_evolve
PRO
3
410
BPaaSオペレーション・kubell社内 n8n活用による効率化検証事例紹介
kubell_hr
0
370
プロダクトエンジニアこそ必要なPMスキル 〜デリバリー力を最大化し、価値を届け続けるために〜
layerx
PRO
0
150
漸進的過負荷の原則
sansantech
PRO
3
420
いよいよ仕事を奪われそうな波が来たぜ
kazzpapa3
3
300
The Engineer with a Three-Year Cycle - 2
e99h2121
0
200
re:Inventで出たインフラエンジニアが嬉しかったアップデート
nagisa53
4
220
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
2
100
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
430
Color Theory Basics | Prateek | Gurzu
gurzu
0
190
For a Future-Friendly Web
brad_frost
182
10k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
210
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Into the Great Unknown - MozCon
thekraken
40
2.2k
How to make the Groovebox
asonas
2
1.9k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
Visualization
eitanlees
150
17k
Transcript
LINE LIVE ΞϓϦͷઃܭࢥ Kazuhiro OSAWA, LINE Corporation. 2019/03/27 Streaming Conference
#6 @LINE αʔόฤ
@yappo https://github.com/yappo ࣗݾհ େ LINEגࣜձࣾ ։ൃ3ηϯλʔॴଐ LINE LIVE ։ൃ୲ϚωʔδϟͳͲ
લʑճͷ͋Β͢͡ • LINE LIVE System Overview • HLS Hack •
ٸͳ৴அ࣌ͷϑϩʔ • Chat System Overview • LOVE Architecture https://www.slideshare.net/linecorp/a-7-architecture-sustaining-line-live
લճͷ͋Β͢͡ • Elasticsearch Ͱ࡞ͬͨϥϯΩϯάγεςϜ • PC৴ͷ࣮༰ • RabbitMQಋೖظ • ͜ͷ1Ͱͯ͢
Kafka ʹϦϓϨʔε • LINE ͷதʹ LIVE ͷ native code Λ࣮ https://www.slideshare.net/linecorp/update-of-line-live-over-the-past-year
Service History https://www.slideshare.net/linecorp/a-7-architecture-sustaining-line-live
ࠓճͷ͢༰
Tech Stack ͷࠓੲͦͯ͠ ͦͷબΛԿނ͔ͨ͠? +࠷ۙͷڥͳͲ
Android iOS Web •Vue.js, Vuex •hls.js •axios •Webpack •Angular.js (CMS)
•Swift 100% •ishkawa/APIKit •Starscream (WebSocket) •PromiseKit •MVC, MVVM, Redux •UIKit •Kotlin30% • ৽نશ෦Kotlin •RxJava2 •Dagger2 •OkHttp3 + Retrofit2 •MVVM, Redux Current Clients Tech Stack Native Client ʹؔͯ࣍͠ͷηογϣϯͰৄࡉઆ໌͋Γ·͢
CORE CHAT CMS •Spring •Spring Boot •Akka •Redis PubSub •MySQL
•Avans •Jesque •Redis •MySQL •Memcached OLD Server Components • ٕज़తόοΫάϥϯυ͕ଟछଟ༷ͳϝϯόʔͰ։ൃΛ։࢝ͨ͠ • ͦΕͧΕͷಘҙͳٕज़બΛߦͬͯαʔϏε։ൃΛ։࢝ͨ͠ • ֤छίϯϙʔωϯτʹɺߋʹෳͷΞϓϦέʔγϣϯʹࡉԽ͞Ε͍ͯΔ • ࣾͷଞͷαʔϏεͰڞ௨ԽͰ͖Δ෦ઐ༻ͷνʔϜͰ։ൃ • ΤϯίʔμαʔόετϨʔδRTMP৴ϞδϡʔϧͳͲ
CORE CHAT CMS •Spring •Spring Boot •Akka •Redis PubSub •MySQL
•Spring Boot •Kafka •Redis •MySQL •Elasticsearch Current Server Components • Ұൠతͳ Java Application ͷߏʹมߋ͍ͯ͠Δ • ֤छϛυϧΣΞࣾͷҰൠߏ͕Ͱ͖͖ͯͨͷͰҰൠతͳͷʹҠߦ • ࣾͷ Private Cloud ͖ͬͯͨͷͰɺҠ͠ସ͑Λৗ࣌ߦ͍ͬͯΔ • ͜͜1ʙ2Կ͔͠ΒͷҠߦλεΫΛ࣮ࢪ͍ͯ͠Δ • αʔόॳΑΓഒۙ͘ʹ૿͖͍͑ͯͯΔ LINE Bot •Spring Boot •Kafka •MySQL
֤ίϯϙʔωϯτछྨ͝ͱʹ ٕज़ελοΫҧ͍ͬͯͨ ϦϦʔεॳ WAF Ҡߦޙ core Avans Spring Boot 2.1.3
ཧը໘ Spring 4.3.x Spring Boot 2.2.x (༧ఆ) chat Spring Boot 1.4.x Spring Boot 2.2.x (༧ఆ) for LINE Bot Spring Boot 1.5.x Spring Boot 2.1.3 ։ൃνʔϜ͕एׯ͔Ε͍ͯͨɺͱ͔͍͏Α͋͘Δཧ༝ɻ ※2019/03/25 ͷࢿྉ͔Βൈਮ
શϦϙδτϦ αʔόͷछྨ: 27
System Diagram for Public
Chat Diagram for Public
• γεςϜϝτϦΫε • Grafana • Kibana • Ξϥʔτ௨ • IMON
(https://www.slideshare.net/linecorp/observability-at-line) • Prometheus • ϩάࢹ • IMON • Kibana • ϓϩϑΝΠϦϯά • Spring Boot Admin, VisualVM, Java Flight Recorder, jcmd, etc ֤छཧπʔϧ
Spring Boot Admin ͰJVMͷҰݩཧࢦ͢ ※·ͩະಋೖͷ ίϯϙʔωϯτଟ͋Δ
• ֤छίϯϙʔωϯτͷ౷ഇ߹ͯ͠࠷దԽΛ͍͖͍ͯͨ͠ • Storage Access ࠷దԽ • Logging ӡ༻ࢹϨϕϧͷ্ •
Client <-> Server ͷ௨৴࠷దԽ • ৴Ԇͷվળ • MediaServer ͷϦϓϨʔε (ϦϓϨʔεޙʹ LIME ͱͯ͠ OSS ެ։༧ఆ) • https://www.slideshare.net/linecorp/how-does-line-effectively-handle-media- content ͍͖͍ͬͯͨ͜ͱଟ͍
• ֤छίϯϙʔωϯτͷ౷ഇ߹ͯ͠࠷దԽΛ͍͖͍ͯͨ͠ • Storage Access ࠷దԽ • Logging ӡ༻ࢹϨϕϧͷ্ •
Client <-> Server ͷ௨৴࠷దԽ • ৴Ԇͷվળ • MediaServer ͷϦϓϨʔε (ϦϓϨʔεޙʹ LIME ͱͯ͠ OSS ެ։༧ఆ) • https://www.slideshare.net/linecorp/how-does-line-effectively-handle-media- content ͍͖͍ͬͯͨ͜ͱଟ͍ ࠾༻
THANK YOU