統合方法概要
NetFUNNEL JavaScriptエージェントは2つの主要な統合方法をサポートします:
- URLトリガー統合 (UTI)
- コードベース統合 (CBI)
コードベース統合は、2つの制御タイプにさらに細分化されます:
- コードベース統合 - 基本コントロール: 進入速度制御 (キーが迅速に返却される)
- コードベース統合 - 区間コントロール: 固定された同時ユーザー数の維持 (区間終了までキーを保持)
📄️ URLトリガー方法
NetFUNNELコンソールでトリガールールを構成してコード変更なしで特定のURLに待合室を適用します。
📄️ コードベース方法
アプリケーションコードからNetFUNNEL関数を呼び出してボタン/APIレベルでトラフィックを制御します。
URLトリガー統合
何をするか:
- コード変更なしでコンソールからURLトリガールールのみを構成して「このURLに来るトラフィックにキューを適用します」と宣言します。
ユーザー体験 (UX)
- 待合室が必要な場合、ユーザーはVWRページにリダイレクトされます → 進入が許可されると元のターゲットページに戻ります。
特徴
- 迅速に適用可能 (デプロイ不要)、キャンペーン/ランディングページ/ディープリンクに適している
- 全ページ進入を広範囲に保護
- キー返却はデフォルトで自動 (
data-nf-return-key)
いつ適切か:
- 外部流入が多いプロモーション/イベント/ランディングURL。
コードベース統合
何をするか:
- JavaScriptコードからNetFUNNEL関数を呼び出してトラフィック制御を適用します
- 待合室をいつどこに適用するかを完全に制御できます
- アプリフローの特定のポイントで関数を呼び出します
ユーザー体験 (UX)
- 待合室が必要な場合、現在の画面にモーダル/レイヤーが開きます → 進入が許可されるとモーダルが閉じ、後続のロジックが即座に実行されます。
特徴
- トラフィック制御タイミングに対する精密な制御
- ネイティブWeb UI体験
- Webアプリおよび複雑なユーザーフローに最適
制御タイプ間の主な違い:
- 基本コントロール (コードベース統合): 進入速度制御 (キーが迅速に返却される)
- 区間コントロール (コードベース統合): 固定された同時ユーザー数の維持 (区間終了までキーを保持)
いつ適切か:
- ログイン/決済/注文/アップロードなどのアプリ内ボタンクリック作業の保護
- ページアクセス単位ではなく非同期バックエンドAPI呼び出しの保護
制御タイプ
NetFUNNEL JavaScriptエージェントは3つの制御タイプをサポートします:
| 制御タイプ | 目的 | 最適な用途 | キー管理 |
|---|---|---|---|
| URLトリガー方法 | ページ進入速度制御 | ランディングページ、プロモーションURL、外部リンク | 自動キー返却 - ページ進入保護 |
| コードベース方法 | 作業速度制御 | ボタンクリック、API呼び出し、ページナビゲーション | 作業完了後キーを迅速に返却 |
| コードベース方法 | 同時ユーザー数の維持 | マルチステッププロセス、決済フロー | 区間終了までキーを保持 (全プロセス完了) |
制御タイプの比較
URLトリガー統合
何をするか:
- ユーザーが特定のページにどれだけ速くアクセスできるかを制御
- URLパターンが一致するとトラフィック制御が自動的に適用されます
- ページがロードされるとキーが自動的に返却されます
- コード変更不要
キー管理: キーはデフォルトで自動的に返却されます (data-nf-return-key)。
使用例:
- ランディングページの保護
- プロモーションURL制御
- 外部リンク防御
- キャンペーンページ管理
例のフロー:
コードベース統合 - 基本コントロール
何をするか:
- ユーザーが特定の作業をどれだけ速く実行できるかを制御
- 各ユーザーが作業を開始するときにキーを受け取ります
- 作業が完了するとキーが迅速に返却されます
- 前のユーザーがキーを返却した後にのみ次のユーザーが進入できます
キー管理: 特定の作業が完了すると即座にキーが返却されます (例: ページロード、API呼び出し完了)。
使用例:
- ボタンクリック速度制限
- API呼び出しスロットリング
- ログイン試行制御
- ページナビゲーション保護
例のフロー:
コードベース統合 - 区間コントロール
何をするか:
- 特定の区間で固定された数の同時ユーザーを維持します
- ユーザーはスロットが利用可能になるまでキューで待機します
- ユーザーが全体の区間を完了するまでキーが保持されます
- 現在のユーザーが区間を終了するときにのみ次のユーザーが進入します
キー管理: 全体のマルチステッププロセス中にキーが保持され、全体の区間/プロセスが完了したときにのみ返却されます (例: 決済完了、決済処理完了)。
使用例:
- 決済プロセス制御
- 決済フロー管理
- マルチステップフォーム完了
- リソース集約的な作業
例のフロー:
意思決定マトリックス
| 要件 | 推奨方法 | 制御タイプ | キー管理戦略 |
|---|---|---|---|
| "ランディングページにユーザーがどれだけ速くアクセスできるかを制限したい" | URLトリガー統合 | N/A | 自動キー返却 - ページ進入保護 |
| "ユーザーがボタンをどれだけ速くクリックできるかを制限したい" | コードベース統合 | 基本コントロール (コードベース統合) | 迅速なキー返却 - 個別作業保護 |
| "同時に決済できるユーザー数を制限したい" | コードベース統合 | 区間コントロール (コードベース統合) | 決済完了までキー保持 - 同時ユーザー数制御 |
| "ログイン画面を保護したい" | コードベース統合 | 基本コントロール (コードベース統合) | 迅速なキー返却 - シンプルな進入保護 |
| "マルチステッププロセスを制御したい" | コードベース統合 | 区間コントロール (コードベース統合) | プロセス完了までキー保持 - 占有維持 |
| "API呼び出しをスロットリングしたい" | コードベース統合 | 基本コントロール (コードベース統合) | 迅速なキー返却 - 呼び出しあたり速度制限 |
| "決済処理を制御したい" | コードベース統合 | 区間コントロール (コードベース統合) | 決済完了までキー保持 - リソース管理 |
実装の複雑さ
URLトリガー統合
- 設定: シンプル
- コード: 不要
- メンテナンス: 低い
- キー管理: 自動
- 最適な用途: 迅速な実装、ページレベル保護
コードベース統合 - 基本コントロール
- 設定: シンプル
- コード: 最小限
- メンテナンス: 低い
- キー管理: シンプル (迅速な返却)
- 最適な用途: 迅速な実装、シンプルな使用例
コードベース統合 - 区間コントロール
- 設定: 普通
- コード: より複雑
- メンテナンス: 中程度
- キー管理: 複雑 (完了まで保持)
- 最適な用途: 複雑なワークフロー、リソース管理
複数の方法を一緒に使用できますか?
はい! 同じアプリケーションで複数の方法を使用できます:
// ランディングページ保護のためのURLトリガー
// (コンソールで構成)
// ログインのための基本コントロール
function handleLogin() {
Netfunnel.nfStart("login_project", "login_segment", loginCallback);
}
// 決済のための区間コントロール
function startCheckout() {
Netfunnel.nfStartSection("checkout_project", "checkout_segment", checkoutCallback);
}
一般的なパターン:
- ページ進入保護のためにURLトリガー統合を使用
- 進入ポイント(ログイン、主要機能)に基本コントロール (コードベース統合)を使用 - ページロード後迅速なキー返却
- 重要なプロセス(決済、決済処理)に**区間コントロール (コードベース統合)**を使用 - 全体プロセス完了までキー保持
練習プロジェクト利用可能
練習用の基本プロジェクトが必要ですか? NetFUNNEL統合の練習のために準備された**Webアプリケーション(バニラJavaScript MPA)**テンプレートを含むサンプルプロジェクトを確認してください。