2019-09-28 nginx_tomcat集群會(huì)話共享

Nginx+Tomcat集群會(huì)話共享 redis cluster

session測(cè)試代碼用例

1.配置虛擬主機(jī)

[root@web01 conf]# vim /soft/tomcat/conf/server.xml 
<!--session站點(diǎn)-->
  <Host name="session.oldxu.com"  appBase="/code/session"
        unpackWARs="true" autoDeploy="true">
  </Host>

2.準(zhǔn)備index.jsp文件(為了區(qū)分需要調(diào)整輸出的web01 web02)

[root@web01 conf]# cat /code/session/ROOT/index.jsp 
<body>
<%
//HttpSession session = request.getSession(true);
System.out.println(session.getCreationTime());
out.println("<br> web01 SESSION ID:" + session.getId() + "<br>");
out.println("Session created time is :" + session.getCreationTime()
+ "<br>");
%>
</body>

3.下載TomcatClusterRedisSessionManager (所有web集群都需要操作)


[root@tomcat ~]# wget https://github.com/ran-jit/tomcat-cluster-redis-session-manager/releases/download/3.0.3/tomcat-cluster-redis-session-manager.zip
[root@tomcat ~]# unzip tomcat-cluster-redis-session-manager.zip
[root@web01 ~]# cd tomcat-cluster-redis-session-manager

4.拷貝jar包

[root@web01 tomcat-cluster-redis-session-manager]# cp lib/* /soft/tomcat/lib/

5.拷貝tomcat連接redis配置文件

[root@web01 tomcat-cluster-redis-session-manager]# cp conf/redis-data-cache.properties /soft/tomcat/conf/

6.修改redis-data-cache.properties

[root@web01 ~]# vim /soft/tomcat/conf/redis-data-cache.properties
...
redis.hosts=172.16.1.51:6379
redis.password=123456           #有密碼就寫(xiě)密碼,沒(méi)有不要寫(xiě)
...

7.添加如下兩行至tomcat/conf/context.xml

[root@web01 ~]# vim /soft/tomcat/conf/context.xml
<Context>
    .....
    <Valve className="tomcat.request.session.redis.SessionHandlerValve" />
    <Manager className="tomcat.request.session.redis.SessionManager" />
    ....
</Context>

8.修改tomcat/conf/web.xml 配置文件session的超時(shí)時(shí)間 ,單位是分鐘

<session-config>
        <session-timeout>60</session-timeout>       #根據(jù)情況調(diào)整
</session-config>

9.安裝redis,當(dāng)然也可以自行搭建redis集群,anyway

[root@redis ~]# yum install redis -y
[root@redis ~]# cat /etc/redis.conf
...
bind 172.16.1.51 127.0.0.1
requirepass 123456              #如果不需要密碼,則不要配置
...
[root@redis ~]# systemctl start redis
[root@redis ~]# systemctl enable redis

10.重啟多臺(tái)機(jī)器的Tomcat

11.接入負(fù)載均衡,通過(guò)負(fù)載均衡輪詢調(diào)度檢查是否正常

12.如果session會(huì)話不正常:

將域名解析到指定的服務(wù)器,通過(guò)8080的方式去訪問(wèn),測(cè)試,檢查日志.

Nginx+Tomcat集群全站Https

單臺(tái):
1.http接收器修改為 80端口 ---> 443
2.配置443的證書(shū)
集群:

[root@lb01 conf.d]# cat proxy_zrlog.oldxu.com.conf 
upstream  zrlog {
    server 172.16.1.7:8080;
    server 172.16.1.8:8080;
}

server {
    listen 443 ssl;
    ssl_certificate ssl_key/server.crt;
    ssl_certificate_key ssl_key/server.key;
    server_name zrlog.oldxu.com;

    location / {
        proxy_pass http://zrlog;
        include proxy_params;
    }
}
server {
    listen 80;
    server_name zrlog.oldxu.com;
    return 302 https://$http_host$request_uri;
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容