用語集

スティッキーセッションとは何か?

スティッキーセッションとは、リクエストごとに新しいIPへローテーションする代わりに、定義されたウィンドウまたはセッションIDの有効期間中、同じ出口IPをクライアントに固定するプロキシ設定です。

ログインフロー、ページネーションスクレイピング、チェックアウトにおいてセッションの継続性が重要な理由、およびローテーティングIPプールのメリットを損なわずにスティッキーセッションを使用する方法を理解する。

解説

スティッキーセッションはリクエストごとのIPローテーションの逆です。リクエストごとに新しい出口IPを選ぶのではなく、プロキシゲートウェイはセッションの継続時間中、1つのIPをトラフィックに固定します。セッションは通常、プロキシのユーザー名に渡すセッションID(例: `customer-USER-session-abc123`)によってスコープが決まり、ゲートウェイのスティッキネスウィンドウが期限切れになるまで継続します(一般的に1、5、10、または30分)。

スティッキーセッションは、接続先サイトがソースIPに状態をバインドするあらゆるワークフローにおいて不可欠です。ログインページ、複数ページにわたるチェックアウトフロー、IPバインドのCSRFトークン、ページネーションされた検索結果、およびほとんどのアカウント管理タスクは、複数のリクエストにわたって同じIPを必要とします。リクエストごとのローテーションを使用した場合、2番目のリクエストは異なるIPに届き、接続先はそれを新しい未認証の訪問者として扱います。

ほとんどのレジデンシャルプロキシプロバイダーは、同じゲートウェイを通じて両方のモードを提供しています。プロキシ認証にセッションIDを含めることでスティッキネスを有効にし、それを削除することで無効にします。

仕組み

認証情報にセッションIDを含めてローテーティングプロキシゲートウェイに接続すると、ゲートウェイはセッションIDをハッシュ化し、プールの中の特定の出口IPに紐づけます。同じセッションIDを使用する以降のすべてのリクエストは、スティッキネスウィンドウが期限切れになるか、そのIPが正常でなくなるまで、そのIPを通じてルーティングされます。

セッションIDを変更する(または送信をやめる)と、ゲートウェイは新しいIPを選択します。これにより、プールの多様性というメリットを失うことなく、ワークフローごとのスティッキネスを実現できます。並行して実行される異なるワークフローはそれぞれ独自の固定IPを持ちながら、同じ大規模なローテーティングプールから引き続き利用できます。

時間制限付きスティッキーセッション

IPは固定された時間ウィンドウ(一般的に1、5、10、または30分)の間固定されます。ウィンドウが終了すると、次のリクエストは新しいIPを取得します。ほとんどのスクレイピングパイプラインの標準的な設定です。

セッションIDによるスティッキーセッション

クライアントが同じセッションIDを使い続ける限り、IPは固定されます。クライアント側からセッションの有効期間を明示的に制御できます。

専用 / ISP プロキシ(固定スティッキー)

厳密には「スティッキーセッション」ではありませんが、同等の効果があります。ISP/専用プロキシは、無期限に保持できる単一のIPを提供し、長期的なアカウント管理ワークフローに適しています。

主な使用事例

ログイン済みスクレイピング(IPに紐付いたセッション)
複数ページにわたるチェックアウトフロー
ページネーションされた検索結果のスクレイピング
ソーシャルプラットフォームでのアカウント管理
IPにバインドされたCSRFトークンを含むワークフロー
セッション途中の IP 変更が状態を破壊するあらゆるフロー
FAQ

よくある質問

よくある質問: スティッキーセッション.

ほとんどのレジデンシャルプロキシプロバイダーは、1~30分の範囲でstickyセッションを提供しています。より長期間のセッション(数時間または無期限)には、ISP / dedicatedプロキシを使用してください。サブスクリプション期間中は固定IPが割り当てられます。

プロキシのユーザー名にセッションIDを`customer-USER-session-myworkflow-1`のように渡してください。Shifterのゲートウェイはそのセッションidを設定されたウィンドウ内の特定のレジデンシャルIPに固定します。同じセッションIDをリクエスト間で再利用してIPを維持し、変更すると新しいIPを取得できます。

ログイン、ページネーション、複数ページにわたるフローなど、複数のリクエストで同じIP が必要なワークフローにはスティッキーセッションを使用します。各リクエストが独立している場合(検索結果のスクレイピング、大規模な単一ページ製品の取得)にはローテーティング(リクエストごと)を使用します。

保証されません。スティッキーセッションは設定されたウィンドウに縛られており、そのウィンドウが期限切れになると、セッションIDを再利用した場合でも、ゲートウェイは新しいIPを自由に割り当てることができます。IPの永続的な安定性が必要な場合は、ISPプロキシを使用してください。

はい。各セッションIDはプールから独自の固定IPを取得するため、それぞれ異なるIPを持つ何百もの並列スティッキーセッションを、同じゲートウェイ経由で実行できます。これはマルチアカウントワークフローの標準的なパターンです。

ほとんどのゲートウェイは、現在のIPがヘルスチェックに失敗した場合(到達不能になった、フラグが立てられた、またはドロップした場合)に自動的に新しいIPにローテーションします。セッションIDは同じままで、基礎となるIPが変わります。クライアントは一時的な障害時にリトライできるよう準備しておく必要があります。