日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Rainbond最佳实践:Tomcat配置Redis实现Session共享

發(fā)布時(shí)間:2025/7/14 数据库 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Rainbond最佳实践:Tomcat配置Redis实现Session共享 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Rainbond:生產(chǎn)級(jí)無服務(wù)器PaaS
Rainbond是國內(nèi)首個(gè)開源的生產(chǎn)級(jí)無服務(wù)器PaaS,深度整合基于Kubernetes的容器管理、多類型CI/CD應(yīng)用構(gòu)建與交付、多數(shù)據(jù)中心的資源管理等技術(shù),提供云原生應(yīng)用全生命周期解決方案,構(gòu)建應(yīng)用與基礎(chǔ)設(shè)施、應(yīng)用之間及基礎(chǔ)設(shè)施之間的互聯(lián)互通生態(tài)體系。
點(diǎn)擊安裝

為了使您的應(yīng)用承受更多的并發(fā),提高應(yīng)用穩(wěn)定性,您需要在適當(dāng)情況下進(jìn)行擴(kuò)容。每個(gè)節(jié)點(diǎn)下的Tomcat只存儲(chǔ)來訪問自己的請(qǐng)求時(shí)產(chǎn)生的session,為了解決擴(kuò)容后session持久化的問題,我們提供 Java的War包項(xiàng)目使用Tomcat配置Redis實(shí)現(xiàn)Session共享 解決方案,將您session儲(chǔ)存在redis中來保證您應(yīng)用程序穩(wěn)定性。如圖所示:

Load Balancing 將請(qǐng)求發(fā)送給 container 1 下的 tomcat A ,同時(shí)產(chǎn)生 session ,將此 session 持久化到Redis 中。當(dāng) Web Server 再次發(fā)送請(qǐng)求,若請(qǐng)求到 container 2tomcat A ,此時(shí)會(huì)在Redis 中找到已存在的 session,即取即用。

通過源碼構(gòu)建,您可以通過如下兩種方式實(shí)現(xiàn) 配置redis實(shí)現(xiàn)session共享:

使用Webapp-Runner或Jetty-Runner

云幫使用 [webapp-Runner]() 內(nèi)嵌的 tomcat 或 [jetty-Runner]() 內(nèi)嵌的 jetty 實(shí)現(xiàn)服務(wù)器功能。在您不創(chuàng)建其他服務(wù)器情況下即可輕松將應(yīng)用部署在云幫。通過以下步驟可實(shí)現(xiàn) 配置redis實(shí)現(xiàn)session共享

  • 配置Procfile:將如下命令添加到您的Procfile中,并源碼根目錄下添加Procfile。
  • web: java -jar ./webapp-runner.jar --port 5000 --session-store redis ./*.war
    • 應(yīng)用端口8080,平臺(tái)默認(rèn)開啟應(yīng)用5000端口,為了端口映射正常:

      • 在Procfile中指定端口--port 5000
      • 在應(yīng)用控制臺(tái)-端口設(shè)置8080端口
    • 指定session存儲(chǔ)--session-store redis
  • 配置webserver:在源碼根目錄下添加webserver文件,寫入現(xiàn)平臺(tái)支持webapp-runner版本:
  • webapp-runner-7.0.57.2.jar webapp-runner-8.0.18.0-M1.jar webapp-runner-8.5.5.2.jar
  • 云幫通過源碼創(chuàng)建應(yīng)用,在創(chuàng)建應(yīng)用-應(yīng)用設(shè)置選擇已創(chuàng)建的Redis進(jìn)行依賴關(guān)聯(lián)。
  • 應(yīng)用配置redis:將REDIS_URL新增至應(yīng)用環(huán)境變量中,值為 127.0.0.1:6379。
  • 重啟應(yīng)用以適配
  • 為方便創(chuàng)建應(yīng)用時(shí)依賴,建議提前通過應(yīng)用市場(chǎng)創(chuàng)建 Redis 應(yīng)用;若您未在創(chuàng)建時(shí)依賴Redis應(yīng)用,也可以在應(yīng)用創(chuàng)建完成后在 應(yīng)用控制臺(tái)-依賴進(jìn)行Redis應(yīng)用關(guān)聯(lián)。關(guān)聯(lián)后記得重啟應(yīng)用哦。

    使用docker鏡像

    云幫提供使用定制 tomcat 容器來啟動(dòng)應(yīng)用的方法。通過以下步驟可實(shí)現(xiàn) 配置redis實(shí)現(xiàn)session共享

  • 創(chuàng)建Dockerfile,寫入如下內(nèi)容:

    • 使用源碼
  • dockerfile FROM goodrainapps/tomcat:7.0.82-jre7-alpine RUN rm /usr/local/tomcat/webapps/ROOT COPY <dir_name> /usr/local/tomcat/webapps/ROOT #<dir_name>為源碼目錄名稱 EXPOSE 8080
    • 使用war包
    FROM goodrainapps/tomcat:7.0.82-jre7-alpine RUN rm /usr/local/tomcat/webapps/ROOT COPY <filename>.war /usr/local/tomcat/webapps/ROOT.war EXPOSE 8080
  • 確認(rèn)源碼的<dir_name>或<filename>.war存在,并且與Dockerfile文件存在同一目錄,以此目錄為根目錄開始創(chuàng)建應(yīng)用。
  • 在創(chuàng)建應(yīng)用-應(yīng)用設(shè)置選擇已創(chuàng)建的Redis進(jìn)行依賴關(guān)聯(lián)。
  • 應(yīng)用配置redis:配置變量REDIS_URL到應(yīng)用環(huán)境變量中,值為 127.0.0.1:6379;配置變量REDIS_SESSION到應(yīng)用環(huán)境變量中,值為true。
  • 重啟應(yīng)用以適配
  • 總結(jié)

    以上是生活随笔為你收集整理的Rainbond最佳实践:Tomcat配置Redis实现Session共享的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。