SlideShare ist ein Scribd-Unternehmen logo
1 von 72
Downloaden Sie, um offline zu lesen
AbemaTVの動画配信を支える
サーバーサイドシステム
自己紹介
中澤 優一郎
プロジェクト経歴
- 2012/06~ AmebaスマートフォンPF
- 2014/01~ 『タップル誕生』
- 2015/12~ 『AbemaTV』
担当領域
- サーバーサイド全般
好きな言語
- golang
@hase_xpw
株式会社 AbemaTV
2015 年 4 月 : 設立
「インターネットTV局」
2016 年 4 月 11 日 本開局
約 30 チャンネル
24 時間放送
対応デバイス
A. TV のような体験 B. Internet
コンテンツとしての体験
AbemaTV の特性
ザッピング
受動型視聴
シェア
コメント
特徴その1
受動型視聴
「リニア型放送」
番組表通りの
時間にだけ配信。
「TV」を再現!!
特徴その2
ザッピング
テレビのチャンネルを
次々変えていく動作…
「ザッピング」
フリックで
「ザッピング」
を再現!!
特徴その3
コメント
インターネットで
おなじみの
コメント機能を
TV に融合!!
切り抜き
10 秒程度
シェア
インターネットTV局
アジェンダ
- 動画配信の基礎
- AbemaTVの動画配信システム
- AbemaTVのシステム構成
- 全体アーキテクチャ
- AbemaTV の開発スピード
動画配信の基礎
動画配信の歴史
2000
現在
【 1998 年頃〜】
主に UDP 上の
Server Push型
Streaming
【 2006 年頃〜】
HTTP による
動画サービスへ
【 2008 年〜】
各社独自の
HTTP Adaptive
Streaming
【 2010 年】
MPEG-DASH
(ISO/IEC 23009)
2010
【 1998 年】
Akamai 創業
CDN を活用したい
通信環境に
あわせて
配信したい
プログレッシブダウンロード
メディアファイルのうち、
ダウンロードできたところから再生
メディアファイル
プログレッシブダウンロード
メディアファイルのうち、
ダウンロードできたところから再生
メディアファイル
HTTP サーバに
ファイルを置くだけ。
簡単!!!
ストリーミング
時間分割したデータを
クライアントに順次転送・再生
元データ
時間分割
ストリーミング
撮影機材
時間分割したデータを
クライアントに順次転送・再生
オンラインで
映像が生成される
生配信形態も可能!!
Adaptive Bitrate Streaming
元データ
時間分割
帯域心配…。
最初は画質低め。
Adaptive Bitrate Streaming
元データ
時間分割
まだ余裕があるぞ!
Adaptive Bitrate Streaming
元データ
時間分割
高画質へ
シームレスに
切り替え!!
初期のストリーミング
元データ
時間分割
TCP or UDP の専用プロトコル
専用サーバ・専用クライアントが必要。
大規模サービスのリソース用意するの大変。
HTTP Adaptive Streaming
元データ
時間分割
ファイルの集まりとして
HTTP で転送
HTTP 関連のソリューションが使える!
ライブラリ、CDN、リバースプロキシ など
HTTP Adaptive Streaming の
具体的な規格は…?
HLS (HTTP Live Streaming)
TS
TS
TS
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100
#EXTINF:5.005,
100.ts
#EXTINF:5.005,
101.ts
#EXTINF:5.005,
102.ts
M3U8
(M3U + utf8)
動画ファイル
(MPEG2-TS)
過去
未来
HLS (HTTP Live Streaming)
TS
TS
TS
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100
#EXTINF:5.005,
100.ts
#EXTINF:5.005,
101.ts
#EXTINF:5.005,
102.ts
過去
未来
M3U8
(M3U + utf8)
動画ファイル
(MPEG2-TS)
HLS (HTTP Live Streaming)
TS
TS
TS
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100
#EXTINF:5.005,
100.ts
#EXTINF:5.005,
101.ts
#EXTINF:5.005,
102.ts
過去
未来
M3U8
(M3U + utf8)
動画ファイル
(MPEG2-TS)
HLS (HTTP Live Streaming)
TS
TS
TS
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100
#EXTINF:5.005,
100.ts
#EXTINF:5.005,
101.ts
#EXTINF:5.005,
102.ts
過去
未来
M3U8
(M3U + utf8)
動画ファイル
(MPEG2-TS)
ストリーミングサーバより
後ろでは何をしているの?
映像が配信されるまで
映像処理
パッケージン
グ
配信入力
映像が配信されるまで
映像処理
パッケージン
グ
配信入力
映像が配信されるまで
エンコード
- 入力映像の変換
映像の合成
- テロップ挿入
映像処理
パッケージン
グ
配信入力
映像が配信されるまで
パッケージング
- 映像配信可能なAssetを生成する
- m3u8+ts (HLS), mpd+fmp4 (MPEG-DASH) etc...
- 映像ファイルの暗号化 (DRM)
- 広告挿入
映像処理
パッケージン
グ
配信入力
映像が配信されるまで
配信
- クライアントに映像を配信する
- HTTPだとCDNがよく使われる
映像処理
パッケージン
グ
配信入力
AbemaTV の動画配信システム
録画済み番組
広告
生放送
Streaming-Server
管理システム
live
encoder
collector
collector
live
encoder
パッケージング入力 映像処理 配信
encoder
CDN
AbemaTVにおける配信システム
AbemaTVにおける配信システム
録画済み番組
広告
生放送A
Streaming-Server
encoder
CDN
collector
生放送B encoder collector
管理システム
encoder
配信の切り替え
自前開発
AbemaTVにおける配信システム
録画済み番組
広告
生放送A
Streaming-Server
encoder collector
Schedule 録画済み番組 生放送A 生放送B
10:00 10:30 11:00
生放送B encoder collector
管理システム
encoder 放送中
CDN
AbemaTVにおける配信システム
録画済み番組
広告
生放送A
Streaming-Server
encoder collector
生放送B encoder collector
管理システム
encoder
Schedule 録画済み番組 生放送A 生放送B
10:00 10:30 11:00
放送終了
放送開始
CDN
AbemaTVにおける配信システム
録画済み番組
広告
生放送A
Streaming-Server
encoder collector
生放送B encoder collector
管理システム
encoder
Schedule 録画済み番組 生放送A 生放送B
10:00 10:30 11:00
放送中
CDN
AbemaTVにおける配信システム
録画済み番組
広告
生放送A
Streaming-Server
encoder collector
生放送B encoder collector
管理システム
encoder
Schedule 録画済み番組 生放送A 生放送B
10:00 10:30 11:00
広告挿入
広告
CDN
Playlist はどうなっているのか
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100
#EXTINF:5.005,
program_a_1000.ts
#EXTINF:5.005,
program_a_1001.ts
#EXTINF:5.005,
program_a_1002.ts
#EXTINF:5.005,
program_a_1003.ts
Playlist はどうなっているのか
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100000
#EXTINF:5.005,
program_a_1000.ts
#EXTINF:5.005,
program_a_1001.ts
#EXTINF:5.005,
program_a_1002.ts
#EXTINF:5.005,
program_a_1003.ts
Schedule 番組A 番組B
10:00 10:30 11:00
Playlist はどうなっているのか
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100838
#EXTINF:5.005,
program_a_1838.ts
#EXTINF:5.005,
program_a_1839.ts
#EXT-X-DISCONTINUITY
#EXTINF:5.005,
program_b_0001.ts
#EXTINF:5.005,
program_b_0002.ts
Schedule 番組A 番組B
10:00 10:30 11:00
Playlist はどうなっているのか
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100840
#EXTINF:5.005,
program_b_0001.ts
#EXTINF:5.005,
program_b_0002.ts
#EXTINF:5.005,
program_b_0003.ts
#EXTINF:5.005,
program_b_0004.ts
Schedule 番組A 番組B
10:00 10:30 11:00
SEQUENCE
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100840
#EXTINF:5.005,
program_b_0001.ts
#EXTINF:5.005,
program_b_0002.ts
#EXTINF:5.005,
program_b_0003.ts
#EXTINF:5.005,
program_b_0004.ts
SEQUENCE
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:100840
#EXTINF:5.005,
program_b_0001.ts
#EXTINF:5.005,
program_b_0002.ts
#EXTINF:5.005,
program_b_0003.ts
#EXTINF:5.005,
program_b_0004.ts
SEQUENCE
セグメント103
セグメント102
セグメント101
セグメント100
SEQUENCE
100
セグメント104
セグメント103
セグメント102
セグメント101
SEQUENCE
101
セグメント105
セグメント104
セグメント103
セグメント102
SEQUENCE
102
セグメント104
セグメント103
セグメント102
セグメント101
セグメント100
セグメント105
プレイリスト プレイヤのメモリ上
時間
時間
SEQUENCE の計算
LB
SEQUENCE の計算
LB
DB
AbemaTV の全体アーキテクチャ
配信を取り巻く機能たち
リニア型
配信
シェア
コメント
通知
On-Demand
(課金)
検索
ランキング
AbemaTVの全体アーキテクチャ
AbemaTVの全体アーキテクチャ
AbemaTVの全体アーキテクチャ
AbemaTVの全体アーキテクチャ
AbemaTVの全体アーキテクチャ
AbemaTVの全体アーキテクチャ
AbemaTVの全体アーキテクチャ
AbemaTVの全体アーキテクチャ
AbemaTVの全体アーキテクチャ
AbemaTV の開発スピード
AbemaTV 開局まで
1月 4月2月 3月
3 月 1 日
先行配信
4 月 11 日
本開局
サーバ開発
本格始動
AbemaTV 開局まで
1月 4月2月 3月
3 月 1 日
先行配信
4 月 11 日
本開局
サーバ開発
本格始動
配信サーバ
開発開始
AbemaTV 開局まで
1月 4月2月 3月
3 月 1 日
先行配信
4 月 11 日
本開局
サーバ開発
本格始動
生配信コンテンツ
配信の開発
録画コンテンツ
配信の開発
AbemaTV 開局まで
1月 4月2月 3月
3 月 1 日
先行配信
4 月 11 日
本開局
サーバ開発
本格始動
Abema
News
FRESH!
経由
生配信
録画コンテンツ
配信の開発
AbemaTV 開局まで
1月 4月2月 3月
3 月 1 日
先行配信
4 月 11 日
本開局
サーバ開発
本格始動
Abema
News
FRESH!
経由
生配信
録画コンテンツ
配信の開発
シェア
コメント
ランキン
グ
On Demand
課金
管理システム
短期間で仕上げられた背景
GCPに助けられたこと
- 各種機能の充実
- logging
- monitoring
- alert
- クライアントライブラリの充実
- ドキュメント
GKEに助けられたこと
- インテグレーション
- スケールアウト
今日の内容
- 動画配信の基礎
- AbemaTVの動画配信システム
- AbemaTVのシステム構成
- 全体アーキテクチャ
- AbemaTV の開発スピード
ご静聴ありがとうございました

Weitere ähnliche Inhalte

Was ist angesagt?

Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Kohei Tokunaga
 
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48Preferred Networks
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれKumazaki Hiroki
 
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方Shohei Koyama
 
Amazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAmazon Web Services Japan
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチYoshiki Hayama
 
20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway 20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway Amazon Web Services Japan
 
ここが良かったDatadog
ここが良かったDatadogここが良かったDatadog
ここが良かったDatadogtyamane
 
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続Amazon Web Services Japan
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13Amazon Web Services Japan
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方Yoshiyasu SAEKI
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
 
Amazon Athena 初心者向けハンズオン
Amazon Athena 初心者向けハンズオンAmazon Athena 初心者向けハンズオン
Amazon Athena 初心者向けハンズオンAmazon Web Services Japan
 
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)Amazon Web Services Japan
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門Kohei Tokunaga
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
こわくない Git
こわくない Gitこわくない Git
こわくない GitKota Saito
 

Was ist angesagt? (20)

At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajpAt least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれ
 
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
 
Amazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティス
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
 
20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway 20190514 AWS Black Belt Online Seminar Amazon API Gateway
20190514 AWS Black Belt Online Seminar Amazon API Gateway
 
ここが良かったDatadog
ここが良かったDatadogここが良かったDatadog
ここが良かったDatadog
 
AWSからのメール送信
AWSからのメール送信AWSからのメール送信
AWSからのメール送信
 
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続
20200219 AWS Black Belt Online Seminar オンプレミスとAWS間の冗長化接続
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
Amazon Athena 初心者向けハンズオン
Amazon Athena 初心者向けハンズオンAmazon Athena 初心者向けハンズオン
Amazon Athena 初心者向けハンズオン
 
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
20200303 AWS Black Belt Online Seminar AWS Cloud Development Kit (CDK)
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
 

Andere mochten auch

リニア放送型動画サービスの 
Web フロントエンド
リニア放送型動画サービスの 
Web フロントエンドリニア放送型動画サービスの 
Web フロントエンド
リニア放送型動画サービスの 
Web フロントエンドYusuke Goto
 
マイクロサービス時代の動画配信基Ruby×go=∞
マイクロサービス時代の動画配信基Ruby×go=∞マイクロサービス時代の動画配信基Ruby×go=∞
マイクロサービス時代の動画配信基Ruby×go=∞DMM.com
 
AbemaTV Developer Conference 2016
AbemaTV Developer Conference 2016AbemaTV Developer Conference 2016
AbemaTV Developer Conference 2016康洋 板敷
 
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話Kentaro Matsumae
 
ニコニコ生放送の配信基盤改善
ニコニコ生放送の配信基盤改善ニコニコ生放送の配信基盤改善
ニコニコ生放送の配信基盤改善takahiro_yachi
 
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させるHTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させるGaprot
 
Google Container Engine と Kubernetes で 無理をしないコンテナ管理
Google Container Engine と Kubernetes で 無理をしないコンテナ管理Google Container Engine と Kubernetes で 無理をしないコンテナ管理
Google Container Engine と Kubernetes で 無理をしないコンテナ管理Ryosuke Suto
 
Kubernetesを触ってみた
Kubernetesを触ってみたKubernetesを触ってみた
Kubernetesを触ってみたKazuto Kusama
 
AWS Black Belt Online Seminar 2017 動画配信 on AWS
AWS Black Belt Online Seminar 2017 動画配信 on AWSAWS Black Belt Online Seminar 2017 動画配信 on AWS
AWS Black Belt Online Seminar 2017 動画配信 on AWSAmazon Web Services Japan
 

Andere mochten auch (9)

リニア放送型動画サービスの 
Web フロントエンド
リニア放送型動画サービスの 
Web フロントエンドリニア放送型動画サービスの 
Web フロントエンド
リニア放送型動画サービスの 
Web フロントエンド
 
マイクロサービス時代の動画配信基Ruby×go=∞
マイクロサービス時代の動画配信基Ruby×go=∞マイクロサービス時代の動画配信基Ruby×go=∞
マイクロサービス時代の動画配信基Ruby×go=∞
 
AbemaTV Developer Conference 2016
AbemaTV Developer Conference 2016AbemaTV Developer Conference 2016
AbemaTV Developer Conference 2016
 
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
 
ニコニコ生放送の配信基盤改善
ニコニコ生放送の配信基盤改善ニコニコ生放送の配信基盤改善
ニコニコ生放送の配信基盤改善
 
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させるHTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
 
Google Container Engine と Kubernetes で 無理をしないコンテナ管理
Google Container Engine と Kubernetes で 無理をしないコンテナ管理Google Container Engine と Kubernetes で 無理をしないコンテナ管理
Google Container Engine と Kubernetes で 無理をしないコンテナ管理
 
Kubernetesを触ってみた
Kubernetesを触ってみたKubernetesを触ってみた
Kubernetesを触ってみた
 
AWS Black Belt Online Seminar 2017 動画配信 on AWS
AWS Black Belt Online Seminar 2017 動画配信 on AWSAWS Black Belt Online Seminar 2017 動画配信 on AWS
AWS Black Belt Online Seminar 2017 動画配信 on AWS
 

AbemaTVの動画配信を支えるサーバーサイドシステム