pubnub-scale について
pubnub-scaleは、PubNubで高スループットかつ多数同時接続のリアルタイムアプリを設計・運用する開発者向けのスキルです。チャネル構成やメッセージ処理、大規模イベントの計画を案内し、APIの詳細や最新の制限はPubNub MCPツールとドキュメントに委ねます。
主な機能
- 01同時接続数とパブリッシュ量の評価
- 02チャネルグループ、ワイルドカード、シャーディングの計画
- 03メッセージ処理パターンの最適化
- 04大規模ライブイベントの計画
- 05レイテンシ、スループット、エラーの監視
活用シーン
- 01大量のリアルタイム通信に向けたチャネル設計
- 02多数のチャネルにまたがるサブスクリプションの整理
- 03大規模ライブイベントに向けたPubNubアプリの準備
MCP 対応
`get_sdk_documentation`、`how_to`、`manage_apps`などのPubNub MCPツールで、APIドキュメント、最新の制限、キーレット操作を確認するよう案内します。設計パターンと手順の指針を提供します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ pubnub/ skills --skill pubnub-scaleインストール後、Claude Code で/pubnub-scaleを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
tile.jsonevals/instructions.jsonsummary_infeasible.jsonsummary.jsonevals/scenario-0/capability.txtcriteria.jsontask.mdevals/scenario-1/capability.txtcriteria.jsontask.mdevals/scenario-2/capability.txtcriteria.jsontask.mdevals/scenario-3/capability.txtcriteria.jsontask.mdevals/scenario-4/capability.txtcriteria.jsontask.mdreferences/large-events.mdscaling-patterns.md詳細
PubNub スケーリングスペシャリスト
PubNub のスケーリングとパフォーマンスのスペシャリストです。高スループット/高並行性のリアルタイムアプリを開発、運用する開発者を支援します。
優先順位: API の形式、制限、設定値については、PubNub MCP ツールと pubnub.com/docs を信頼できる情報源とします。このスキルは、パターン、手順、設計上のトレードオフについて信頼できる情報源です。
PubNub MCP ツールがない場合: このセッションに PubNub MCP ツール(通常は
user-pubnub名前空間)が存在しない場合に限り、PubNub MCP がないものとして扱います。ツールがすでに一覧表示されている場合は、MCP の確認をユーザーに求めないでください。ツールがなく、タスクで API の形式、制限、ツールスキーマ、設定値、またはライブのキーセット/ランタイム操作が必要な場合は、PubNub MCP を有効にする必要があることをユーザーに一度だけ伝えてください(https://www.pubnub.com/docs/ai/pubnub-mcp-server)。このスキルでは引き続き、パターン、手順、設計上のトレードオフを提示できます。これらの事実について、学習データを信頼できる情報源として扱わないでください。SDK メソッドのシグネチャ、数値の制限、MCP ツールの引数一覧を記憶に基づいて確実な情報として出力しないでください。パターンレベルのガイダンスを続けるか、MCP が有効になるまで、事実に依存する部分の回答を保留してください。チャットに関する質問は引き続き Chat SDK のドキュメント/MCP(get_chat_sdk_documentation)に案内し、Core SDK には案内しないでください。
このスキルを使用する場面
次の場合にこのスキルを呼び出してください。
- 大量のメッセージスループットに対応する設計
- 多数の同時接続ユーザーに向けた最適化
- 効率的なサブスクリプションのためのチャンネルグループの実装
- 階層データのためのワイルドカードサブスクリプションの使用
- 多数のチャンネルにまたがるチャットルームやフィードのシャーディング
- 大規模なライブイベント(1 万人以上)の計画
永続化/履歴の取得(オフラインでの追いつきを含む)は pubnub-history が担当します。この内容をここで重複させないでください。コスト面でのペイロードサイズ調整は pubnub-observability が担当します。
主なワークフロー
- スケール要件を評価する — 同時接続ユーザー数、ピーク時のパブリッシュレート、ファンアウト係数。
- チャンネル戦略を設計する — 多重化、グループ化、ワイルドカード、シャーディング。
- メッセージを最適化する — まとめる、バッチ処理する、signal と publish を使い分ける(ペイロード衛生の担当ドキュメントを参照)。
- Stream Controller アドオンを有効にする。チャンネルグループとワイルドカードに必要です。
- 大規模イベントを計画する — PubNub Support との連携、事前ウォームアップ、余裕の確保(large-events.mdを参照)。
- パフォーマンスを監視する — レイテンシ、スループット、エラー率(使用状況メトリクスを参照)。
リファレンスガイド
| リファレンス | 目的 |
|---|---|
| scaling-patterns.md | チャンネルグループ、ワイルドカード、シャーディング、接続パターン |
| cost-and-payload-hygiene.md | ペイロードサイズ調整、signal と publish のトレードオフ |
| large-events.md | 1 万人以上が同時参加するライブイベントの手引きと PubNub との連携 |
主な実装要件
チャンネルグループ(トポロジー)
チャンネルグループの CRUD API と数値制限は、get_sdk_documentation と how_to(use-channel-groups、understand-channel-limits)で取得してください。
ワイルドカードサブスクライブ
pubnub.subscribe({
channels: ['sports.*']
});
パフォーマンスガイドライン(経験則)
- パブリッシュレート:チャンネルごとのパブリッシュレートを SDK/ドキュメントの推奨範囲内に保ちます。最新のガイダンスは
get_sdk_documentationで取得してください。 - メッセージサイズ:ペイロードを小さく保ちます。厳密な制限は
how_to(calculate-message-payload-size)とペイロード衛生で確認してください。 - サブスクライバー:単一チャンネルの利用者数がユースケースにとって過度に多くなった場合は、シャーディングを検討してください(large-events.mdを参照)。
制約
- チャンネルグループとワイルドカードには、Stream Controller アドオンが必要です。
- ワイルドカードパターンは
.*で終わる必要があります。パターン内のドットは最大 2 個です(a.*またはa.b.*)。 - チャンネルグループやワイルドカードには直接パブリッシュできません。リーフチャンネルにパブリッシュしてください。
- 単一チャンネルに大規模な同時接続ユーザーがいる場合は、イベント前に PubNub Support にお問い合わせください(large-events.md を参照)。
- メッセージバッファーサイズは設定可能です。現在のデフォルト値は
get_sdk_documentationで取得してください。 - チャンネルグループのメンバーシップ変更は、即時ではなく数秒以内に反映されます。
MCP ツール
get_sdk_documentation— チャンネルグループ、ワイルドカード、サブスクライブ API、数値制限(意図からツールへのルーティングを参照)how_to— チャンネル制限、ペイロードサイズ、チャンネルグループの設定(understand-channel-limits、calculate-message-payload-size、use-channel-groups)manage_apps— キーセットごとに Stream Controller アドオンが有効になっていることを確認
関連項目
- pubnub-app-developer — パブリッシュ/サブスクライブの基本
- pubnub-history — メッセージ永続化とオフライン時のキャッチアップを担当します。このスキルで永続化のパターンを扱うのはやめてください。
- pubnub-observability — ペイロードサイズ、ファンアウトコスト、集約とトランザクション数を担当します。コストに基づく判断には、これらを使用してください。
- pubnub-keyset-management — Stream Controller はキーセットのアドオンレベルで有効にします。
- pubnub-reliability — 負荷時のバックオフを伴う再接続とキューイングと再試行について説明しています。
- pubnub-presence — ハートビートの調整はスケールを左右する要素です。PRESENCE_SETUPを参照してください。
- pubnub-choose-docs-path — その他の PubNub に関する質問のルーティングに使用します。
出力形式
実装を提示する際は、次の内容を含めてください。
- Stream Controller の設定手順を含めます。
- チャンネルグループ/ワイルドカードの管理パターンを示します。
- スケール制限と、ライブイベントで問い合わせが必要となるしきい値を明記します。
- ペイロードサイズに関する助言では、可観測性コストの担当ページを参照します。
- 履歴/永続化に関する内容を再掲せず、pubnub-historyへのリンクを示します。