03-6845-0775平日10:00〜18:00受付
無料ガイド
お問い合わせ

2023年05月26日

PaaSやSDKの制限に対する実装のコツ

paas_sdk

WebRTCやメッセージングの基盤を担うPaaSやSDKは開発工数の短縮に有効です。しかし、秒間あたりの実行数に上限がある等、制限事項もあります。制限事項の影響で実現できない非機能要件が発生する場合もあります。
この記事では、要件をさらに深掘りして実現させたい内容を満たす実装のコツを記載します。

お役立ち資料ダウンロード

オンライン体験におけるブイキューブの技術サポートのご案内

【図解】システム開発のお手伝い

ブイキューブのソリューションアーキテクトが、寄り添います!
各種ライブ配信システムのアーキテクチャについて わかりやすい構成図にてご紹介!

無料ダウンロード

制限事項の例

メッセージングを提供するAgoraやTencentの制限事項を例に解説します。AgoraのSignalingSDKではチャンネル毎に200件/秒以内(チャンネル参加者数が1,000人未満の場合)を推奨、TencentのChatでは40件/秒の制限になっています。

参考リンク
Signaling Limitations(Agora)
使用制限(Tencent Chat)

実装の改善例

連続したギフトやハートの処理要件

要件

・ハートを飛ばしてライブ配信の盛り上がりを演出
・応援する配信者へ積極的にギフトを送る

改善前の実装

  1. クライアントからハート又はギフトを送信
  2. サーバー側でデータ保存と決済処理を実施
  3. サーバー側からのレスポンス後、クライアントからメッセージングでハート又はギフト送信の旨をブロードキャスト
  4. 配信者や他の視聴者がメッセージを受信してUI更新

問題点

  • 送信側が連打できる為、メッセージの受信がスパイクして端末の負荷が上昇する
  • 決済処理やデータ保存用サーバーの負荷が上昇する
  • 大量にギフトの画像が流れていって読み取れない

改善のポイント

パターン1
ギフトの枚数や、ハートの数を入力するUIを追加し、件数とハート又はギフトの情報を合わせ、1回にまとめて送信
パターン2
クライアント側でボタンクリック数をカウントし、数秒待機してからクリック数とハート又はギフトの情報を合わせて1回送信

大量のチャット

要件

・10,000人規模のライブ配信でチャットをスムーズに流したい

改善前の実装

  1. メッセージング用に全員が1つのチャンネルに接続
  2. メッセージの送信
  3. 配信者や他の視聴者がメッセージを受信してUI更新

問題点

  • メッセージの受信がスパイクして端末の負荷が上昇する
  • PaaS側の負荷が上昇し、メッセージの遅延や送信できなくなる
  • 大量にチャットが流れていって読み取れない

改善のポイント

パターン1

視聴者をランダムで複数のチャンネルに分けて参加させる。数百人規模のグループであればメッセージも自然に流れ、盛り上がりの様子も失われない。

パターン2

チャットの投稿数が増えてきたらメッセージングですぐにメッセージを送信せずに、タイマー等で遅延させて送信する。

ベストプラクティス

PaaSやSDKを提供するベンダーは、設計や実装についてベストプラクティスをドキュメントとして公開しているケースもあります。コンセプトが実装中のサービスに対する同じソリューションなので参考になる場合が多いと思います。

例:Agora SignalingSDKTencent Chat

ガイドブックダウンロード
ビデオ通話・ライブ配信API/SDK「Agora」

【最新版】超低遅延API/SDK「Agora」ガイドブック

通話・配信遅延30-200ms!100万人の視聴対応!未経験者から専門家まで、誰でも読みやすいAgoraのガイドブックをダウンロードしませんか。

無料ダウンロード
藤本 諭志

執筆者藤本 諭志

株式会社ブイキューブ 技術本部 Agora担当。 2007年ブイキューブ入社。 自社開発サービスであるV-CUBE セミナーの開発に携わる。現在はAgoraとTencent Cloudのプロダクト担当SEをしている。 スキル:Docker/AWS/Linux/DB/Ruby/PHP/JavaScript

関連記事

2023年04月14日

モバイル化: マルチパーティモバイルビデオ通話のためのAgoraとZoom SDKとの比較テスト

  • Agora
  • 基礎知識
  • ライブ配信
※この投稿は、Agoraの日本総代理店であるブイキューブが、Agoraブログを翻訳した記事です。 ※一部、日本向けに調整しています。 第3回:マルチパーティモバイルビデオ通話-ビデオSDKの比較 この複数パートのブログのパート1とパート2で、Agoraは、Zoom Video SDKがいくつかの面でAgoraのVideo SDKを上回ることを示唆したZoomの最近の研究を調べました。しかし、私たちのフォローアップ分析では、Agoraの詳細なテストにより、1:1のPC通話シナリオとマルチホストビデオ通話(デスクトップPC)において、SDKのパフォーマンスの優位性を実証しました。 第3回目は、最大32人が参加するマルチパーティモバイルビデオ通話において、AgoraとZoomのVideo SDKを並べて、実際のネットワーク条件を変化させながら、どのようなパフォーマンスを示したかを見ていきます。 まず、この議論の発端について簡単に説明します。2022年末にZoomが依頼した一連のベンチマークテストでは、ビデオテレフォニー会社はVideo SDKの分野にさらに足を踏み入れ、Agoraを含むいくつかの有名な競合製品と比較しました。 明らかに、10年近く何千もの顧客と何百ものユースケースにクラス最高のVideo SDKを提供してきたAgoraのチームは、このチャレンジに挑む自信がありました。 こことここにあるように、第1ラウンドと第2ラウンドはAgoraに軍配が上がりました。Agoraが3連覇を達成するかどうかは、この先を読んでみてください!
Agora 勉強会 好評実施中!ご参加はこちら

先頭へ戻る