日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

ALB配置會話保持

部分應用業務場景下需要保持用戶會話的狀態,例如購物車中的商品、登錄信息、用戶偏好設置、游戲應用等場景,如果用戶的請求被分發到不同的服務器,那么會話狀態就會丟失從而導致用戶體驗問題。當您開啟了ALB會話保持功能后,可以使來自同一客戶端的請求被轉發到同一臺后端服務器上,從而確保用戶的體驗和數據的一致性。

背景信息

默認情況下,ALB會將每個客戶端請求分別分發至不同的后端服務器上。當您開啟了會話保持功能后,會話保持可以使來自同一客戶端的請求被轉發至同一臺后端服務器上,方便后端服務器維護狀態信息及向客戶端提供持續體驗。

  • 未開啟會話保持:同一客戶端的請求通過ALB可能會被分發至不同的后端服務器,在某些場景下,如登錄后端服務器獲取交互信息等場景,客戶端的請求可能需重新登錄后端服務器。

  • 開啟會話保持:同一客戶端的請求通過ALB被分配至同一臺后端服務器,而非分配至不同的后端服務器,在某些場景下,如登錄后端服務器獲取交互信息等場景,避免了客戶端的請求需要重新登錄后端服務器。

ALB開啟會話保持后,需要選擇Cookie的處理方式,有植入Cookie和重寫Cookie兩種處理方式。

  • 植入Cookie:客戶端第一次訪問時,ALB會在返回請求中植入Cookie(即ALB插入SERVERID和SERVERCORSID兩個cookie;SERVERCORSID是以SERVERID為基礎,且加入了samesite=None這個屬性),下次客戶端攜帶此Cookie訪問,負載均衡服務會將請求定向轉發給之前記錄到的后端服務器上。

    說明

    會話保持植入Cookie方式自帶SameSite=None,無需用戶配置,可以有效解決ALB轉發規則中跨域(CORS)場景下瀏覽器無法保存Cookie的問題。

  • 重寫Cookie:當ALB發現用戶自定義了Cookie,將會對原來的Cookie進行重寫,下次客戶端攜帶新的Cookie訪問,ALB會將請求定向轉發給之前記錄的后端服務器。

使用限制

服務器組類型為函數計算類型時,您無需配置會話保持。更多操作,請參見創建服務器組

前提條件

  • 您已經創建了一個處于運行中狀態的公網ALB實例。具體操作,請參見創建應用型負載均衡

  • 您已經創建了服務器類型或IP類型的服務器組。具體操作,請參見創建服務器組

  • 您已經創建了后端服務器ECS01和ECS02,用于接收請求。ECS01和ECS02中部署了不同的后端服務,訪問時需要有不同展示,例如訪問ECS01時返回"Hello World ! This is ECS01.",返回ECS02時返回"Hello World ! This is ECS02."。注意安全組需要對相應服務端口放行。

  • 您已將后端服務器ECS01與ECS02添加到服務器組中。具體操作,請參見添加后端服務器

  • 您已經為該實例配置了監聽。具體操作,請參見添加HTTP監聽添加HTTPS監聽添加QUIC監聽

步驟一:ALB配置會話保持

  1. 登錄應用型負載均衡ALB控制臺

  2. 在頂部菜單欄處,選擇后端服務器組所屬的地域。

  3. 在左側導航欄,選擇應用型負載均衡ALB > 服務器組

  4. 服務器組頁面,找到目標服務器組,在操作列單擊編輯基本信息

  5. 編輯基本信息對話框中,開啟會話保持。

    開啟會話保持:打開開啟會話保持開關并選擇Cookie處理方式

    • 選擇植入Cookie,輸入會話保持超時時間,然后單擊保存

    • 選擇重寫Cookie,輸入Cookie名稱,然后單擊保存

      本文示例將Cookie名稱設置為BACKEND_SERVER,該名稱僅為示例,您可以自定義該名稱。

(可選)步驟二:后端服務器配置Cookie

當服務器組開啟會話保持,并且選擇的Cookie處理方式為重寫Cookie時,才需要在后端服務器中配置對應的Cookie。

  1. 遠程登錄ECS。具體操作,請參見ECS遠程連接操作指南

  2. 根據不同的Web服務器配置Cookie。

    說明

    不同的Web服務器對應的Cookie設置方法不同,以下列舉常見Web服務器的設置方法,請您根據實際情況選擇,如果您使用的Web服務器不在以下列表中,請您查閱對應的官方文檔獲取配置方法。

    Nginx

    此處以CentOS 7.9操作系統、Nginx 1.20.1 版本配置為例介紹。具體請以您實際使用的環境為準。

    1. 修改Nginx服務配置文件并保存,修改點可參考下方說明。執行nginx -t命令查看配置文件所在路徑,默認通常為/etc/nginx/nginx.conf,具體請以實際環境為準。

      http {
        # ...
        server {
          listen       80;
          # BACKEND_SERVER是您配置重寫Cookie時輸入的Cookie名稱;value您可使用自定義字符串。
          add_header Set-Cookie "BACKEND_SERVER=value";
          # ...
        }
      }
      
    2. 執行以下命令重新加載Nginx的配置文件。

      sudo nginx -s reload

    Apache

    此處以CentOS 7.9操作系統、Apache 2.4.6版本配置為例介紹。具體請以您實際使用的環境為準。

    1. 修改Apache服務配置文件并保存,修改點可參考下方說明。默認通常為/etc/httpd/conf/httpd.conf,具體請以實際環境為準。

      # ...
      Listen 80
      # BACKEND_SERVER是您配置重寫Cookie時輸入的Cookie名稱;value您可使用自定義字符串。
      Header always set Set-Cookie "BACKEND_SERVER=value"
      # ...
    2. 執行以下命令,重新加載Apache的配置文件,使以上改動生效。

       sudo systemctl reload httpd.service
  3. 參考以上步驟,修改服務器組中其余后端服務器的配置。

步驟三:測試會話保持的有效性

  1. 登錄應用型負載均衡ALB控制臺

  2. 在頂部菜單欄選擇地域。找到目標ALB實例,復制其對應的DNS名稱。

  3. 在瀏覽器中輸入DNS名稱,可訪問某個服務器,多次刷新頁面仍然訪問相同服務器。

    例如您第一次訪問的是ECS01,則后續幾次刷新后均是訪問ECS01。

    ECS01驗證結果

    如果多次刷新頁面后在ECS01與ECS02之間切換,則會話保持配置不生效,請您檢查配置是否有誤再重新測試。

相關文檔