Suche senden
Hochladen
REALITY低遅延モード配信を支えるリアルタイムサーバとデータパイプライン
•
0 gefällt mir
•
2,945 views
gree_tech
Folgen
GREE Tech Conference 2020 で発表された資料です。 https://techcon.gree.jp/2020/session/Session-11
Weniger lesen
Mehr lesen
Ingenieurwesen
Melden
Teilen
Melden
Teilen
1 von 36
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Try new transport protocol SRT (ver. 2)
Try new transport protocol SRT (ver. 2)
Tetsuyuki Kobayashi
UnityでUI開発を高速化した件
UnityでUI開発を高速化した件
Grenge, Inc.
DeNAの分析を支える分析基盤
DeNAの分析を支える分析基盤
Kenshin Yamada
Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦
Preferred Networks
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
Tier Ⅳ Tech Meetup #2 - 自動運転を作るのはCloudシステムの集合体?? 活用技術を大解剖 -
Tier Ⅳ Tech Meetup #2 - 自動運転を作るのはCloudシステムの集合体?? 活用技術を大解剖 -
Tier_IV
ヤフーのプライベートクラウドとクラウドエンジニアの業務について
ヤフーのプライベートクラウドとクラウドエンジニアの業務について
Yahoo!デベロッパーネットワーク
Empfohlen
Try new transport protocol SRT (ver. 2)
Try new transport protocol SRT (ver. 2)
Tetsuyuki Kobayashi
UnityでUI開発を高速化した件
UnityでUI開発を高速化した件
Grenge, Inc.
DeNAの分析を支える分析基盤
DeNAの分析を支える分析基盤
Kenshin Yamada
Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦
Preferred Networks
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
Tier Ⅳ Tech Meetup #2 - 自動運転を作るのはCloudシステムの集合体?? 活用技術を大解剖 -
Tier Ⅳ Tech Meetup #2 - 自動運転を作るのはCloudシステムの集合体?? 活用技術を大解剖 -
Tier_IV
ヤフーのプライベートクラウドとクラウドエンジニアの業務について
ヤフーのプライベートクラウドとクラウドエンジニアの業務について
Yahoo!デベロッパーネットワーク
今から始めるWebClient(JSUG勉強会 2020年その6 LT大会)
今から始めるWebClient(JSUG勉強会 2020年その6 LT大会)
NTT DATA Technology & Innovation
ゲーム業界から見たアジャイル開発
ゲーム業界から見たアジャイル開発
Masaru Nagaku
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
NTT DATA Technology & Innovation
型安全性入門
型安全性入門
Akinori Abe
クラウド時代だからSpring-Retryフレームワーク
クラウド時代だからSpring-Retryフレームワーク
Y Watanabe
【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
torisoup
Observableで非同期処理
Observableで非同期処理
torisoup
心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話
Yusuke Hisatsu
20180729 Preferred Networksの機械学習クラスタを支える技術
20180729 Preferred Networksの機械学習クラスタを支える技術
Preferred Networks
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
エピック・ゲームズ・ジャパン Epic Games Japan
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
Unity Technologies Japan K.K.
[Track2-5] CPUだけでAIをやり切った最近のお客様事例 と インテルの先進的な取り組み
[Track2-5] CPUだけでAIをやり切った最近のお客様事例 と インテルの先進的な取り組み
Deep Learning Lab(ディープラーニング・ラボ)
自宅で出来る!ゲームサーバの作り方
自宅で出来る!ゲームサーバの作り方
光晶 上原
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編
NAKAOKU Takahiro
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
自動テストの誤解とアンチパターン in 楽天 Tech Talk
自動テストの誤解とアンチパターン in 楽天 Tech Talk
kyon mm
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
エンタープライズ、アーキテクチャ、アジャイルのこれから
エンタープライズ、アーキテクチャ、アジャイルのこれから
Yusuke Suzuki
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
Amazon Web Services Japan
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Amazon Web Services Japan
Weitere ähnliche Inhalte
Was ist angesagt?
今から始めるWebClient(JSUG勉強会 2020年その6 LT大会)
今から始めるWebClient(JSUG勉強会 2020年その6 LT大会)
NTT DATA Technology & Innovation
ゲーム業界から見たアジャイル開発
ゲーム業界から見たアジャイル開発
Masaru Nagaku
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
NTT DATA Technology & Innovation
型安全性入門
型安全性入門
Akinori Abe
クラウド時代だからSpring-Retryフレームワーク
クラウド時代だからSpring-Retryフレームワーク
Y Watanabe
【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
torisoup
Observableで非同期処理
Observableで非同期処理
torisoup
心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話
Yusuke Hisatsu
20180729 Preferred Networksの機械学習クラスタを支える技術
20180729 Preferred Networksの機械学習クラスタを支える技術
Preferred Networks
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
エピック・ゲームズ・ジャパン Epic Games Japan
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
Unity Technologies Japan K.K.
[Track2-5] CPUだけでAIをやり切った最近のお客様事例 と インテルの先進的な取り組み
[Track2-5] CPUだけでAIをやり切った最近のお客様事例 と インテルの先進的な取り組み
Deep Learning Lab(ディープラーニング・ラボ)
自宅で出来る!ゲームサーバの作り方
自宅で出来る!ゲームサーバの作り方
光晶 上原
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編
NAKAOKU Takahiro
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
自動テストの誤解とアンチパターン in 楽天 Tech Talk
自動テストの誤解とアンチパターン in 楽天 Tech Talk
kyon mm
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
エンタープライズ、アーキテクチャ、アジャイルのこれから
エンタープライズ、アーキテクチャ、アジャイルのこれから
Yusuke Suzuki
Was ist angesagt?
(20)
今から始めるWebClient(JSUG勉強会 2020年その6 LT大会)
今から始めるWebClient(JSUG勉強会 2020年その6 LT大会)
ゲーム業界から見たアジャイル開発
ゲーム業界から見たアジャイル開発
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
型安全性入門
型安全性入門
クラウド時代だからSpring-Retryフレームワーク
クラウド時代だからSpring-Retryフレームワーク
【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
Observableで非同期処理
Observableで非同期処理
心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話
20180729 Preferred Networksの機械学習クラスタを支える技術
20180729 Preferred Networksの機械学習クラスタを支える技術
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
[Track2-5] CPUだけでAIをやり切った最近のお客様事例 と インテルの先進的な取り組み
[Track2-5] CPUだけでAIをやり切った最近のお客様事例 と インテルの先進的な取り組み
自宅で出来る!ゲームサーバの作り方
自宅で出来る!ゲームサーバの作り方
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Unityで始めるバージョン管理 Git LFS 入門編
Unityで始めるバージョン管理 Git LFS 入門編
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
自動テストの誤解とアンチパターン in 楽天 Tech Talk
自動テストの誤解とアンチパターン in 楽天 Tech Talk
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
エンタープライズ、アーキテクチャ、アジャイルのこれから
エンタープライズ、アーキテクチャ、アジャイルのこれから
Ähnlich wie REALITY低遅延モード配信を支えるリアルタイムサーバとデータパイプライン
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
Amazon Web Services Japan
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Amazon Web Services Japan
AWSの様々なアーキテクチャ
AWSの様々なアーキテクチャ
Kameda Harunobu
大手ゲーム会社のプラットフォームにハイブリッドクラウドを採用した理由とは
大手ゲーム会社のプラットフォームにハイブリッドクラウドを採用した理由とは
Kentaro Kamata
CData API Server ハンズオン
CData API Server ハンズオン
CData Software Japan
Realm platform2019
Realm platform2019
昌桓 李
20130313 OSCA Hadoopセミナー
20130313 OSCA Hadoopセミナー
Ichiro Fukuda
IoT@Loft #4 - IoT製品の量産化および運用を効率化させるためのAWS サービスの使い方
IoT@Loft #4 - IoT製品の量産化および運用を効率化させるためのAWS サービスの使い方
Amazon Web Services Japan
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Futomi Hatano
CData Sync Hand-on 資料
CData Sync Hand-on 資料
CData Software Japan
Wagby で100+ のクラウドデータに連携するアプリを開発(CData JDBC Drivers)
Wagby で100+ のクラウドデータに連携するアプリを開発(CData JDBC Drivers)
CData Software Japan
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
Amazon Web Services Japan
20201125 EC Solution Seminar Live Commerce
20201125 EC Solution Seminar Live Commerce
Amazon Web Services Japan
AWSを用いた番組連動Webコンテンツ処理基盤の構築
AWSを用いた番組連動Webコンテンツ処理基盤の構築
Eiji KOMINAMI
AWS All Stars ~Lightning Talks x 13~
AWS All Stars ~Lightning Talks x 13~
Amazon Web Services Japan
クラウドサービスを使って作る動画サイト?
クラウドサービスを使って作る動画サイト?
Daichi Isami
20180319 ccon sync kintone
20180319 ccon sync kintone
CData Software Japan
APIに関するセッション資料
APIに関するセッション資料
CData Software Japan
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
Amazon Web Services Japan
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo!デベロッパーネットワーク
Ähnlich wie REALITY低遅延モード配信を支えるリアルタイムサーバとデータパイプライン
(20)
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
Gaming on aws 〜ゲームにおけるAWS最新活用術〜
AWSの様々なアーキテクチャ
AWSの様々なアーキテクチャ
大手ゲーム会社のプラットフォームにハイブリッドクラウドを採用した理由とは
大手ゲーム会社のプラットフォームにハイブリッドクラウドを採用した理由とは
CData API Server ハンズオン
CData API Server ハンズオン
Realm platform2019
Realm platform2019
20130313 OSCA Hadoopセミナー
20130313 OSCA Hadoopセミナー
IoT@Loft #4 - IoT製品の量産化および運用を効率化させるためのAWS サービスの使い方
IoT@Loft #4 - IoT製品の量産化および運用を効率化させるためのAWS サービスの使い方
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
CData Sync Hand-on 資料
CData Sync Hand-on 資料
Wagby で100+ のクラウドデータに連携するアプリを開発(CData JDBC Drivers)
Wagby で100+ のクラウドデータに連携するアプリを開発(CData JDBC Drivers)
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
20201125 EC Solution Seminar Live Commerce
20201125 EC Solution Seminar Live Commerce
AWSを用いた番組連動Webコンテンツ処理基盤の構築
AWSを用いた番組連動Webコンテンツ処理基盤の構築
AWS All Stars ~Lightning Talks x 13~
AWS All Stars ~Lightning Talks x 13~
クラウドサービスを使って作る動画サイト?
クラウドサービスを使って作る動画サイト?
20180319 ccon sync kintone
20180319 ccon sync kintone
APIに関するセッション資料
APIに関するセッション資料
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Mehr von gree_tech
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
gree_tech
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
gree_tech
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
gree_tech
アプリ起動時間高速化 ~推測するな、計測せよ~
アプリ起動時間高速化 ~推測するな、計測せよ~
gree_tech
長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化
gree_tech
Cloud Spanner をより便利にする運用支援ツールの紹介
Cloud Spanner をより便利にする運用支援ツールの紹介
gree_tech
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
gree_tech
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
gree_tech
海外展開と負荷試験
海外展開と負荷試験
gree_tech
翻訳QAでのテスト自動化の取り組み
翻訳QAでのテスト自動化の取り組み
gree_tech
組み込み開発のテストとゲーム開発のテストの違い
組み込み開発のテストとゲーム開発のテストの違い
gree_tech
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
gree_tech
データエンジニアとアナリストチーム兼務になった件について
データエンジニアとアナリストチーム兼務になった件について
gree_tech
シェアドサービスとしてのデータテクノロジー
シェアドサービスとしてのデータテクノロジー
gree_tech
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
gree_tech
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
gree_tech
比較サイトの検索改善(SPA から SSR に変換)
比較サイトの検索改善(SPA から SSR に変換)
gree_tech
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
gree_tech
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
gree_tech
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
gree_tech
Mehr von gree_tech
(20)
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
GREE VR Studio Laboratory「XR-UX Devプロジェクト」の成果紹介
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
REALITYアバターを様々なメタバースで活躍させてみた - GREE VR Studio Laboratory インターン研究成果発表
アプリ起動時間高速化 ~推測するな、計測せよ~
アプリ起動時間高速化 ~推測するな、計測せよ~
長寿なゲーム事業におけるアプリビルドの効率化
長寿なゲーム事業におけるアプリビルドの効率化
Cloud Spanner をより便利にする運用支援ツールの紹介
Cloud Spanner をより便利にする運用支援ツールの紹介
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
WFSにおけるCloud SpannerとGKEを中心としたGCP導入事例の紹介
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
海外展開と負荷試験
海外展開と負荷試験
翻訳QAでのテスト自動化の取り組み
翻訳QAでのテスト自動化の取り組み
組み込み開発のテストとゲーム開発のテストの違い
組み込み開発のテストとゲーム開発のテストの違い
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
サーバーフレームワークに潜んでる脆弱性検知ツール紹介
データエンジニアとアナリストチーム兼務になった件について
データエンジニアとアナリストチーム兼務になった件について
シェアドサービスとしてのデータテクノロジー
シェアドサービスとしてのデータテクノロジー
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
「ドキュメント見つからない問題」をなんとかしたい - 横断検索エンジン導入の取り組みについて-
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
「Atomic Design × Nuxt.js」コンポーネント毎に責務の範囲を明確にしたら幸せになった話
比較サイトの検索改善(SPA から SSR に変換)
比較サイトの検索改善(SPA から SSR に変換)
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
コードの自動修正によって実現する、機能開発を止めないフレームワーク移行
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
「やんちゃ、足りてる?」〜ヤンマガWebで挑戦を続ける新入りエンジニア〜
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
法人向けメタバースプラットフォームの開発の裏側をのぞいてみた(仮)
REALITY低遅延モード配信を支えるリアルタイムサーバとデータパイプライン
1.
REALITY低遅延モード配信を支える リアルタイムサーバと データパイプライン 株式会社 Wright Flyer
Live Entertainment 増住 啓吾
2.
2 自己紹介 増住 啓吾 株式会社Wright Flyer
Live Entertainment - 2017年にGlossom株式会社に入社 - iOS/Android向けアプリの開発やデータ分析基盤 の構築、広告ログ集計システムの開発・運用などを 担当 - グループ内公募制度を利用し、2019年に株式会社 Wright Flyer Live Entertainmentにジョイン - Kubernates・Apache Beamなどを用いた REALITYプラットフォームのライブ配信基盤の開発 を担当
3.
3 REALITYとは?
4.
4 2020/01/08 REALITY低遅延モードリリース
5.
5 ラグなし、ギガ安、高画質
6.
6 低遅延モード配信のフォーマット • REALITYの現行のメイン配信方式 • 配信・視聴ユーザーがそれぞれWebSocketサーバへ接続 •
WebSocketサーバを通してデータを送受信する • 配信データの中身はモーション・音声などのデータをProtobuf形式 でシリアライズしたもの
7.
7 解決すべき問題点 • 配信データのボリュームが大きい • チャット等に比べデータ量が非常に多い •
128〜256kbs程度 • パトロール・監査のため、配信データを参照可能な方式で保存して おく必要がある • 配信音声やラベル付き配信データなどのフォーマット
8.
8 ライブ配信・視聴サーバ
9.
9 全体像 Kubernetes Android iOS Ingress HTTPS Streamer Kubernetes Engine Redis (StatefulSet) Kubernetes
Engine Listener Kubernetes Engine Cloud Pub/Sub Archiver Cloud Dataflow Archive Cloud Storage Stats BigQuery
10.
10 解決すべき問題点 • 配信データのボリュームが大きい • チャット等に比べデータ量が非常に多い •
128〜256kbs程度 • パトロール・監査のため、配信データを参照可能な方式で保存して おく必要がある • 配信音声やラベル付き配信データなどのフォーマット
11.
11 ライブ配信 / 視聴サーバ
- 課題 ● WebSocketサーバ ( Node.js ) を通して配信データの送 受信を行う ● WebSocketサーバの冗長化はRedis Pub/Subを用いる ● ただし、一般的なWebSocket + Redis Pub/Subのパ ターンでは配信・視聴の負荷に耐えきれなくなる
12.
12 WebSocketサーバの負荷分散方式 (1)
13.
13 課題 Redis Pub/Subがボトルネックになる ○ スケールアウトができない ○
スケールアップができない ○ クラスタ化しても無意味 スケーラビリティに限界がある
14.
14 WebSocketサーバの負荷分散方式 (2)
15.
15 課題 1.エンドポイントレベルのシャー ディング 2.WebSocketサーバ * N
+ Redis * 1 の単位でスケール 運用コストが高い
16.
16 REALITYの構成
17.
17 2.配信側サーバは全ての Redisインスタ ンスに対して分散してデータを Publishす る
3.視聴側サーバは全ての Redisインスタ ンスに対し必要なRedis Pub/Sub ChannelをSubscribeし、来たデータを視 聴者へbroadcast Redisをスケールアウト可能 1.Redis (Pub/Sub専用) をスタンドアロ ンでN基立ち上げる
18.
18 1.Redisはk8sのStatefulSet + Headless Serviceとして立ち上げる 2.各WebSocketサーバはk8sのサービ スディスカバリでRedisの各hostを認識・ 接続 運用コストが低い 3.各WebSocketサーバやRedisは単一 のk8sワークロードとなるため、
k8sのス ケーリングの仕組みをそのまま活用でき る
19.
19 ライブ配信 / 視聴サーバ
- 構成 ● k8sのサービスディスカバリを利用したRedisのスケーリング ● Redisはk8sのStatefulSet + Headless Serviceを利用 => kube-proxyを通らないのでパフォーマンスも落ちない ● Redisのスケールアウトが可能なので、構成全体のスケーラ ビリティを担保できる ● k8sのオートスケーリングの仕組みに乗ったスケーリングが 可能なので運用工数も低い
20.
20 ライブ配信 / 視聴サーバ
- まとめ • 当該方式の配信・視聴サーバのリリース後7ヶ月経過 • 同時配信数・視聴者数ともに右肩上がりだが、障害なしで安定して動 作 • 基本的にはk8sのオートスケーリングに任せられるので、運用コストも 非常に低い • Redis Pub/Subによる遅延は、アプリ - 配信・視聴サーバ間の通信 に比べて無視できる程度で安定
21.
21 ライブ配信 / 視聴サーバ
- その他 • シンプルな構成なので横展開が楽 • 事例1: コラボ配信サーバ • 「アバタービデオチャット」的な機能を提供するコンポーネント • ボイスチャット用の音声のミキシングも行う • 事例2: ゲーム配信サーバ • ゲームサーバ + ゲーム配信の視聴サーバの機能を提供する
22.
22 解決すべき問題点 (再掲) • 配信データのボリュームが大きい •
チャット等に比べデータ量が非常に多い • 128〜256kbs程度 • パトロール・監査のため、配信データを参照可能な方式で保 存しておく必要がある • 配信音声やラベル付き配信データなどのフォーマット
23.
23 ライブ配信データパイプライン
24.
24 ライブ配信データパイプライン - 構成 Cloud Pub/Sub Archiver Cloud
Dataflow Archive Cloud Storage Stats BigQuery Kubernetes Streamer Kubernetes Engine Ingress HTTPS Redis (StatefulSet) Kubernetes Engine Listener Kubernetes Engine
25.
25 ライブ配信データパイプライン - 構成 Cloud Pub/Sub Archiver Cloud
Dataflow Archive Cloud Storage Stats BigQuery Kubernetes Streamer Kubernetes Engine Ingress HTTPS Redis (StatefulSet) Kubernetes Engine Listener Kubernetes Engine 1.配信データをCloud Pub/Sub TopicへPublish 2.Cloud Dataflow Jobが Cloud Pub/Sub Subscription 経由で配信データを読み出す 3.配信データを Streaming処理で集計・ 加工して保存
26.
26 ライブ配信データパイプライン - 概要 ●
配信サーバはCloud Pub/Sub Topicへラベル付き配信データ をPublish ● Cloud DataFlow Job ( Apache Beam Java ) がCloud Pub/Sub Subscription経由でデータを読み出す ● 読み出した配信データをApache Beam Pipelineで処理 ● ラベル付き配信データ、監査用音声アーカイブファイル、分 析用統計情報などを生成 ● 生成したデータをCloud Storageへ書き込む
27.
27 ライブ配信データパイプライン - インフラ ●
Cloud DataFlow Streaming Engineを使用 ● Streaming処理とオートスケーリングを両立 ● Worker Machineの分だけ自動でスケールしていく ● キャパシティプランニングもほぼ不要 ● deployもJavaのビルドだけで完結するので楽
28.
28 Apache Beam??
29.
29 ライブ配信データパイプライン - Apache
Beam ● バッチ・ストリーミング処理を統合して実行できる分散処理 フレームワーク ● REALITYではApache Beam Javaを使用 ● 基本的にはJavaアプリケーションなのでできることの範囲が 広い ● 当然JNIも使えるのでネイティブコードも利用可能 ● その上でさらに分散処理のメリットを享受できる ● Apache Sparkなどと比較すると、Cloud DataFlowとの連携 のメリットが非常に大きい
30.
30 ライブ配信データパイプライン - 処理グラフ
31.
31 ライブ配信データパイプライン - データ保存 ●
Streaming Pipelineにラベル付き配信デー タが流れてくる ● 取り出したデータを10秒単位でWindow化 ● データをPOJOに変換 ● データとそのタイムスタンプから、1時間 ごとのディレクトリに分割した一意なファ イルパスを生成 ● 生成したファイルパスへデータをAvro フォーマットで書き出す
32.
32 ライブ配信データパイプライン - 音声アーカイブ ●
Streaming Pipelineにラベル付き配信 データが流れてくる ● データを配信ごとにグルーピング し、時系列に並びかえ音声データ (Opus圧縮) を抽出 ● その音声データをOggコンテナに格 納する ● 生成したOggコンテナをバイナリ ファイルとして配信IDごとの時系列 順にCloud Storageに書き出す
33.
33 ライブ配信データパイプライン - まとめ •
同時配信数の増加に伴い比例して処理データ量も増えていったが、全て Cloud Dataflow側で吸収してくれるので特に追加のオペレーションの必要 はなかった • データロストの発生もなし • サーバ費用の面では当然それなりのコストは発生するものの、想定通りにお さまる
34.
34 結果
35.
35 解決された問題点 • 配信データのボリュームが大きい • チャット等に比べデータ量が非常に多い •
128〜256kbs程度 • パトロール・監査のため、配信データを参照可能な方式で保存して おく必要がある • 配信音声やラベル付き配信データなどのフォーマット
36.
36 おわりに
Jetzt herunterladen