Nginx リバースプロキシがセッション永続性を実装する方法

WBOY
リリース: 2023-05-20 19:25:20
転載
1584 人が閲覧しました

1. ip_hash:

ip_hash は、サーバーが利用できない場合を除き、ソース アドレス ハッシュ アルゴリズムを使用して、常に同じクライアントから同じバックエンド サーバーにリクエストを送信します。

ip_hash 構文:

 upstream backend {
  ip_hash;
  server backend1.example.com;
  server backend2.example.com;
  server backend3.example.com down;
  server backend4.example.com;
}
ログイン後にコピー

ip_hash はシンプルで使いやすいですが、次の問題があります。サーバーがダウンすると、セッションが失われます;

  • 同じ LAN からのクライアントは同じバックエンド サーバーに転送されるため、負荷の不均衡が生じる可能性があります;

  • 適用外 CDN ネットワークの場合、前段にエージェントが存在する状況には適用されません。


  • 2. Sticky_cookie_insert:

Sticky_cookie_insert を使用してセッション アフィニティを有効にすると、同じクライアントからのリクエストが同じサーバー上のサーバーのグループに配信されます。 ip_hash との違いは、IP に基づいてクライアントを判断するのではなく、Cookie に基づいてクライアントを判断することです。したがって、上記の ip_hash で同じ LAN からのクライアントとフロントエンド プロキシによって引き起こされる負荷の不均衡を回避できます。 #構文:

 upstream backend {
  server backend1.example.com;
  server backend2.example.com;
  sticky_cookie_insert srv_id expires=1h domain=toxingwang.com path=/;
}
ログイン後にコピー

説明:


expires:ブラウザに Cookie を保持する時間を設定します

  • domain: cookie のドメインを定義します

  • path: cookie のパスを定義します

以上がNginx リバースプロキシがセッション永続性を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート