ヤマムギ

growing hard days.

*

Application Load Balancer スティッキーセッションでどれぐらい偏るかを偶然見ました

      2020/05/27

Amazon Linux2のPHPを7.2から7.3へアップデートしましたでアップデートしてリリースする際に、スティッキーセッション(セッションの維持)を有効にしているターゲットグループから、スティッキーセッションを無効にしているターゲットグループに変更してしまいました。

翌朝気づいて、スティッキーセッションに変更したのですが、その前後で顕著に変化が見れました。
せっかくなので記録です。

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

これをブログに書きはじめたときに、そうえいばスティッキーセッションがどういう動きなのか書かないと、このログ見ても面白くないなと思いましたので図解を書きます。

こちら公式情報です。
https://docs.aws.amazon.com/ja_jp/elasticloadbalancing/latest/application/load-balancer-target-groups.html#sticky-sessions

「ターゲットグループ内の同じターゲットにリクエストをルーティングするメカニズムです。これは、クライアントに連続したエクスペリエンスを提供するために状態情報を維持するサーバーに役立ちます。スティッキーセッションを使用するには、クライアントが Cookie をサポートしている必要があります。」

図にするとこんな感じです。

設定画面はこれです。

では結果をご覧ください

スティッキーセッションを有効にしてたターゲットグループから、無効のターゲットグループに変更したところの、各インスタンスへのリクエスト数の違いです。

無効のターゲットグループの変わった時点(オレンジの線)以降は、3つのインスタンスのリクエスト数の折れ線グラフがほぼ近似値なので一致してます。

そして8時ころに、スティッキーセッションを有効にした後の折れ線がこちらです。
1つのインスタンスへのリクエストが増えているのがわかります。

もちろんリクエスト数が偏ると、負荷も偏るので、上図の各インスタンスのメモリ使用率はこんな感じになりました。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

[JapanTaxi] Athena 指向アナリティクス 〜真面目に手を抜き価値を得よ〜(AWS Summit Tokyo 2017)を聞いてきました

Athenaのユースケースとして聞きにいきましたが、最近触ってるRe:dashも …

RocketChatからOutgoing Webhookで呼び出されたAPI Gatewayでtokenをリクエスト検証する

本来はWAFでやったほうがよさそうですが、追加料金を発生させたくない場合にAPI …

AWS Transfer Family S3向けのSFTP対応サーバー

S3バケットは作成済です。 IAMロールの作成 [crayon-68fd9cbe …

AWS OrganizatonsのRCP(リソースコントロールポリシー)を設定しました

2024/11月に発表されましたリソースコントロールポリシーを管理している組織に …

Amazon Location Service入門ワークショップ-ジオコーディング

ジオコーディングにより住所を緯度経度に変換したり、逆に緯度経度から住所を求めたり …

AWS Backupで取得したAMIとスナップショットの削除

個人で使っているAWSリソースの断捨離をしてました。 Cloud9も複数アカウン …

EC2のAMIとRDSのスナップショットを他のAWSアカウントに共有してブログサイトをAWSアカウント間で引っ越す

当ブログで使用しているEC2とRDSを環境の整理のため、他のAWSアカウントへ引 …

Cloud9 Python3でpipも3にする

このブログは、2019/10/20に書いた、 Cloud9のAMIがCloud9 …

AWS CLIを使用せずにCodeCommitへhttpsで接続する

AWS CLIやアクセスキーID、シークレットアクセスキーなどを開発環境にセット …

T2.microからT3.nanoに変更(メモリエラーも対応)

このブログのEC2インスタンスをT2.micro 1インスタンスからT3.nan …