大量のコメントを捌く技術 / API Talk about mercari channel
by
Sota Sugiura
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
大量 コメントを捌く技術 @sota1235 2018/1/23 API Talk about メルカリチャンネル
Slide 2
Slide 2 text
自己紹介 ■ @sota1235 ■ Sota Sugiura ■ 入社1年経ちました ■ 将来 夢 JavaScriptです
Slide 3
Slide 3 text
最初に ■ これだけ 覚えて帰ってほしいことがあります
Slide 4
Slide 4 text
メルカリチャンネル
Slide 5
Slide 5 text
メルカリチャンネル?
Slide 6
Slide 6 text
ˈ メルカリチャンネル
Slide 7
Slide 7 text
ˉ メルチャン
Slide 8
Slide 8 text
あと おまけです
Slide 9
Slide 9 text
アジェンダ ■ お客さまにとって コメント ■ 開発者にとって コメント ■ コメント機能 未来
Slide 10
Slide 10 text
お客さまにとって コメント
Slide 11
Slide 11 text
No content
Slide 12
Slide 12 text
視聴者数 入室メッセージ 視聴者コメント 各種通知メッセージ いい
Slide 13
Slide 13 text
視聴者数 入室メッセージ 視聴者コメント 各種通知メッセージ いい
Slide 14
Slide 14 text
コメント機能 ■ ログインしていれ 誰でも可能 ■ 配信者、視聴者全員が見られる
Slide 15
Slide 15 text
なぜコメント機能?
Slide 16
Slide 16 text
なぜ◯◯でなくメルチャン?
Slide 17
Slide 17 text
なぜメルチャン? ■ なぜECサイトで ない? ■ なぜテレビショッピングで ない? ■ なぜメルカリで ない?
Slide 18
Slide 18 text
なぜか Seller Buyer Broadcast Comment ■ そ 場でコミュニケーションが取れるから
Slide 19
Slide 19 text
コミュニケーション ■ 「そ 野菜 おすすめ 食べ方 ?」 ■ 「そ アクセサリ、アレンジできない?」 ■ 「あと500円安かったら買います」 ■ 「送料込みにできませんか?」
Slide 20
Slide 20 text
買い物に限らない ■ 挨拶したり ■ 雑談したり ■ ゲームしたり
Slide 21
Slide 21 text
例えるなら、八百屋?
Slide 22
Slide 22 text
例えるなら、八百屋? へいらっしゃい
Slide 23
Slide 23 text
数字で見るコメント機能 ■ 配信によって 毎秒1個以上 コメントが投稿され ている ■ 運用しているFirebase Realtime Database インス タンス数 世界最大級
Slide 24
Slide 24 text
コメント メルチャン 肝 ■ 「映像が見られる」に次いで大事な機能 ■ もしもコメントが無かったら… ■ ライブである必要が無い
Slide 25
Slide 25 text
開発者にとって コメント
Slide 26
Slide 26 text
要件定義 ■ 細かい要件 一杯ある ■ ログインユーザしかコメントできない ■ ユーザ名にいい感じに色を付ける ■ NGワード フィルタリング ■ etc...
Slide 27
Slide 27 text
一番必要な要件 ■ コミュニケーション機能として確立すること
Slide 28
Slide 28 text
Face to face
Slide 29
Slide 29 text
face to face感を出すために ■ 遅延がない ■ コメントが埋もれていかない ■ 配信者がきちんと拾える
Slide 30
Slide 30 text
遅延がない ■ コメントを投稿したらすぐに反映される ■ Firebase Realtime Databaseを用いて実現
Slide 31
Slide 31 text
ちなみに ■ 多く 機能でFirebase Realtime Databaseを利用し ています
Slide 32
Slide 32 text
視聴者数 入室メッセージ 視聴者コメント 各種通知メッセージ いい
Slide 33
Slide 33 text
コメントが埋もれていかない ■ 生放送な で放送途中に視聴することがある ■ 途中から直近N件 コメントを表示するよう改善
Slide 34
Slide 34 text
コメントが埋もれていかない ■ 生放送な で放送途中に視聴することがある ■ 途中から直近N件 コメントを表示するよう改善 ■ 結果、コメント率が改善
Slide 35
Slide 35 text
配信者が読める ■ 視聴者以上にコメントを読めることが重要 ■ 唯一無二 コミュニケーション手段
Slide 36
Slide 36 text
より読みやすく ■ 視聴者よりも文字を大きく ■ 同じユーザ 同じ色で表示
Slide 37
Slide 37 text
視聴者画面 配信者画面
Slide 38
Slide 38 text
配信画面 文字を大きく 視聴者画面 配信者画面
Slide 39
Slide 39 text
ユーザ名 色を固定 視聴者画面 配信者画面
Slide 40
Slide 40 text
コメント機能 未来
Slide 41
Slide 41 text
大きく2つ ■ 今あるコメント機能 改善 ■ 新しいコミュニケーション 創造
Slide 42
Slide 42 text
コメント機能 改善
Slide 43
Slide 43 text
今 問題点 ■ スケールアップ問題 ■ モニタリング問題 ■ コメント 表現力
Slide 44
Slide 44 text
スケールアップ問題 ■ Firebase Realtime Database スケールアップしな い ■ 現在 複数インスタンスを運用中
Slide 45
Slide 45 text
スケールアップ問題
Slide 46
Slide 46 text
シャーディング
Slide 47
Slide 47 text
スケールアップ問題 ■ 今 ところ 回ってる ■ が、手動で インスタンス追加がツライ ■ 急成長する(現在進行系)サービスで 限界がある
Slide 48
Slide 48 text
New Architecture ■ Cloud Firestore 検証、移行したい ■ 自社実装もありうる ■ いずれも難易度が高いながら、技術的にやりがい あるチャレンジ
Slide 49
Slide 49 text
モニタリング問題 ■ コメント機能が快適に動いてるか 監視 ■ “快適に” 定義が非常に難しい ■ モニタリング→自動切り替え等 Karakuriが求め られる
Slide 50
Slide 50 text
コメント 表現力 ■ 文字がコメントできるだけでいい か? ■ 今 UIってベスト? ■ コメントが右から左に流れていっても面白いかもし れない
Slide 51
Slide 51 text
新しいコミュニケーション 創造
Slide 52
Slide 52 text
再掲 コミュニケーション 構図 Seller Buyer Broadcast Comment
Slide 53
Slide 53 text
これから…? Seller Buyer Broadcast ???
Slide 54
Slide 54 text
半年後 メルカリチャンネル きっと… ■ スタンプ機能 ■ コメント自動読み上げ ■ 自動返信 ■ 模索 余地がまだまだある
Slide 55
Slide 55 text
[WIP]半年後 メルチャン Seller Buyer Broadcast 自動読み上げ AI ライブ参加 仮想通貨 機械学習 etc...
Slide 56
Slide 56 text
Thank you