SlideShare a Scribd company logo
1 of 40
TV連動サービスの
リアルタイム通知を支える技術
2014/01/14
テレビ連動サーバ勉強会vol1
Tsuyoshi Torii (@toritori0318)
Bascule Inc.
自己紹介
鳥居 剛司 @toritori0318
株式会社バスキュール
TV連動プラットフォームサーバ開発/運用
Lua / Python / Golang / Node.js / Perl / Ruby
二児の父
アジェンダ
MIESについて
Sonicshooter基本機能/事例紹介
Sonicshooter詳細構成/特徴
お試し構成デモ
まとめ
アジェンダ
MIESについて
Sonicshooter基本機能/事例紹介
Sonicshooter詳細構成/特徴
お試し構成デモ
まとめ
MIES
MIES
アジェンダ
MIESのご紹介
Sonicshooter基本機能/事例紹介
Sonicshooter詳細構成/特徴
お試し構成デモ
まとめ
SonicShooter機能
ユーザ管理/認証
Push機能
フレンド配信
ブロードキャスト配信
Sync機能(New!)
P2Pっぽく、特定デバイスとの同期をリアルタイムに行う
Pull機能
フレンドタイムライン
パブリックタイムライン
ブロードキャストデータ
SonicShooter機能
ユーザ管理/認証
Push機能
フレンド配信
ブロードキャスト配信
Sync機能(New!)
P2Pっぽく、特定デバイスとの同期をリアルタイムに行う
Pull機能
フレンドタイムライン
パブリックタイムライン
ブロードキャストデータ
すごいTwitter っぽい
番組事例
事例: BloodyTube
紹介ムービー
プロジェクト構成概要
アジェンダ
MIESについて
Sonicshooter基本機能/事例紹介
Sonicshooter詳細構成/特徴
お試し構成デモ
まとめ
Elastic Socket.ioクラスタ
S2構成
S2構成
特徴
同時数百万接続
HTTPS対応
特定ユーザ(グループ)に対して通知
動的にノード追加可能
Weighted load balancing
複数インスタンスタイプ対応
特定ユーザへ通知
動的にノード追加
ノード取得
Weighted load balancing
複数インスタンスタイプ対応
その他工夫しているところ
クライアントのフォールバックの仕組み
ハートビートが切れたら生きているノードを探しに行く
別ノードへ再接続
ソケットが切れている最中は、ポーリング間隔を短くする
アジェンダ
MIESについて
Sonicshooter基本機能/事例紹介
Sonicshooter詳細構成/特徴
お試し構成デモ
まとめ
Docker+socket.ioデモ
Socket.ioも気軽にスケール出来たらいいよね
Socket.ioをDockerコンテナ化して、ポコポコ増やしてみる
スケールアウト/スケールインしたときに問題なく接続/再接続さ
れる仕組み
昨日、さくっとプロトタイプ作ってみた
Docker+socket.ioデモ
Socket.io ロードバランサ問題
ハンドシェイク > アップグレード の2回アクセス問題
公式はIP Hashで実現しているが、Sticky Sessionでやりたい
※もっというと、コネクション数見ながら自前で制御したい
Openresty + Luaでコード書いてみた
Nginxのupstream更新はconsul-template + Registrator
Consul: クラスタされたサービス検出と設定のためのソリューション
consul-template: Consulイベントと連動してテンプレートを更新
Registrator: Dockerコンテナ情報をconsul/etcdなどに適用
全体へのbroadcastはsocketio-redis adapter を使用
補足:sio-clientのsticky session
補足:Lua – sioノード決定コード
デモ構成
デモムービー
アジェンダ
MIESについて
Sonicshooter基本機能/事例紹介
Sonicshooter詳細構成/特徴
お試し構成デモ
まとめ
まとめ
TV連動のリアルタイム通知を行うサービス/実装
/実例の紹介
バージョンアップに向けてのデモンストレーション
まだまだ改善したいところたくさんある
ポエム
TV連動企画、人事ではない
基本的には同じような企画が多いし、知見共有出来るところはたく
さんあるはず
もっとこういう機会をふやしてこの業界全体の底上げしていきたい
もし次回があるなら聞きたい〜
サーバ運用
チート対策
集計
対談
宣伝その1
エンジニアサポート
CROSS 2015 に登壇しま
す!
はやぶさ2開発者に聞く
~一度きりのテスト対策~
http://2015.cross-party.com/program/x1
宣伝その2
ご清聴ありがとうございました

More Related Content

Similar to TV連動サービスのリアルタイム通知を支える技術

[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
cloudconductor
 
第1回 静岡 IT Pro 勉強会 セッション1
第1回 静岡 IT Pro 勉強会 セッション1第1回 静岡 IT Pro 勉強会 セッション1
第1回 静岡 IT Pro 勉強会 セッション1
Tatsuya Ueda
 
Rds 2008 R2 Express Editionで遊んでみよう
Rds 2008 R2 Express Editionで遊んでみようRds 2008 R2 Express Editionで遊んでみよう
Rds 2008 R2 Express Editionで遊んでみよう
guest468ec6
 
DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃
Teruo Adachi
 
【NCMB】アプリのバックエンドを支えるサービス 「mBaaS」のご紹介
【NCMB】アプリのバックエンドを支えるサービス 「mBaaS」のご紹介【NCMB】アプリのバックエンドを支えるサービス 「mBaaS」のご紹介
【NCMB】アプリのバックエンドを支えるサービス 「mBaaS」のご紹介
Shohei Yamamoto
 
Tiなごや vol.3 Titaniumのキホン
Tiなごや vol.3 TitaniumのキホンTiなごや vol.3 Titaniumのキホン
Tiなごや vol.3 Titaniumのキホン
Mori Shingo
 

Similar to TV連動サービスのリアルタイム通知を支える技術 (20)

Behatで行う、E2Eテスト入門
Behatで行う、E2Eテスト入門Behatで行う、E2Eテスト入門
Behatで行う、E2Eテスト入門
 
【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック
 
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
さくらのIoT Platformを使ってみよう ~OSC浜名湖編~
 
Smart at robo
Smart at roboSmart at robo
Smart at robo
 
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
[OpenStack Days Tokyo 2015] Zabbixを用いたOCPベアメタル監視環境構築の自働化
 
20121126 Solr@ニコニコ生放送
20121126 Solr@ニコニコ生放送20121126 Solr@ニコニコ生放送
20121126 Solr@ニコニコ生放送
 
17-D-1 Azure開発の極意 ~2011年版~
17-D-1 Azure開発の極意 ~2011年版~17-D-1 Azure開発の極意 ~2011年版~
17-D-1 Azure開発の極意 ~2011年版~
 
第1回 静岡 IT Pro 勉強会 セッション1
第1回 静岡 IT Pro 勉強会 セッション1第1回 静岡 IT Pro 勉強会 セッション1
第1回 静岡 IT Pro 勉強会 セッション1
 
Live配信のワークフロー takusuta tech conf #1
Live配信のワークフロー takusuta tech conf #1 Live配信のワークフロー takusuta tech conf #1
Live配信のワークフロー takusuta tech conf #1
 
Rds 2008 R2 Express Editionで遊んでみよう
Rds 2008 R2 Express Editionで遊んでみようRds 2008 R2 Express Editionで遊んでみよう
Rds 2008 R2 Express Editionで遊んでみよう
 
モバイルビジネスの動向
モバイルビジネスの動向モバイルビジネスの動向
モバイルビジネスの動向
 
DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃
 
20140315 JAWS Days OpsWorks
20140315 JAWS Days OpsWorks20140315 JAWS Days OpsWorks
20140315 JAWS Days OpsWorks
 
エヌビディアのディープラーニング戦略
エヌビディアのディープラーニング戦略エヌビディアのディープラーニング戦略
エヌビディアのディープラーニング戦略
 
Proxy War
Proxy WarProxy War
Proxy War
 
04 コンテナ管理ツール比較 public_r001
04 コンテナ管理ツール比較 public_r00104 コンテナ管理ツール比較 public_r001
04 コンテナ管理ツール比較 public_r001
 
【NCMB】アプリのバックエンドを支えるサービス 「mBaaS」のご紹介
【NCMB】アプリのバックエンドを支えるサービス 「mBaaS」のご紹介【NCMB】アプリのバックエンドを支えるサービス 「mBaaS」のご紹介
【NCMB】アプリのバックエンドを支えるサービス 「mBaaS」のご紹介
 
GTMF2017 アプリのバックエンドを支えるサービス「mBaaS」のご紹介 ニフティクラウド mobile backend
GTMF2017 アプリのバックエンドを支えるサービス「mBaaS」のご紹介  ニフティクラウド mobile backendGTMF2017 アプリのバックエンドを支えるサービス「mBaaS」のご紹介  ニフティクラウド mobile backend
GTMF2017 アプリのバックエンドを支えるサービス「mBaaS」のご紹介 ニフティクラウド mobile backend
 
Flexでサクッと作れ!Androidアプリ開発のススメ
Flexでサクッと作れ!Androidアプリ開発のススメFlexでサクッと作れ!Androidアプリ開発のススメ
Flexでサクッと作れ!Androidアプリ開発のススメ
 
Tiなごや vol.3 Titaniumのキホン
Tiなごや vol.3 TitaniumのキホンTiなごや vol.3 Titaniumのキホン
Tiなごや vol.3 Titaniumのキホン
 

TV連動サービスのリアルタイム通知を支える技術

Editor's Notes

  1. 血液型対抗レースに視聴者が参加して番組を構成する完全インタラクティブTV バスキュールの企画・提供・制作 視聴者のスマホからの参加状況がテレビに反映される 優勝チームにはリアル店舗で利用できるPontaポイントが提供される B2O2O(Broadcast to Online to Offline)マーケティング施策にもチャレンジ