Weblogic 12c 集群部署和session复制
https://blog.****.net/yulei_qq/article/details/52778865
在上一篇Weblogic12c集群搭建的基础上,这一篇介绍Weblogic12c集群应用的部署和session复制.
1、启动服务
首先在weblogic12c控制台,启动受托管服务server1、server2、server3.
2、将要部署的应用打包成war文件.
我用的是MyEclipse做的开发,可以用其自带的工具把项目应用打包成war包.
右键工程--->Export-->搜索框输入war,选择WAR file,生成对应的war
weblogic.xml文件内容:
- <!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
- <weblogic-web-app>
- <session-descriptor>
- <session-param>
- <param-name>TimeoutSecs</param-name>
- <param-value>28800</param-value>
- </session-param>
- <session-param>
- <param-name>CookieName</param-name>
- <param-value>BSS_JSESSIONID</param-value>
- </session-param>
- <session-param>
- <param-name>PersistentStoreType</param-name>
- <param-value>replicated_if_clustered</param-value>
- </session-param>
- </session-descriptor>
- <jsp-descriptor>
- <jsp-param>
- <param-name>encoding</param-name>
- <param-value>gb2312</param-value>
- </jsp-param>
- <jsp-param>
- <param-name>pageCheckSeconds</param-name>
- <param-value>1</param-value>
- </jsp-param>
- </jsp-descriptor>
- <container-descriptor>
- <servlet-reload-check-secs>1</servlet-reload-check-secs>
- </container-descriptor>
- <context-root>/redis</context-root>
- </weblogic-web-app>
replicated_if_clustered表示session复制,无此参数值配置,后续部署的server1-3服务应用之间的session不会复制,各位可以实践下,我这里就不演示了.
web.xml内容- <?xml version="1.0" encoding="UTF-8"?>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
- <display-name>session_test</display-name>
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- </welcome-file-list>
- </web-app>
3、部署
打开weblogic控制台,点击部署-->安装
进入你存放的打包war的目录,选择那个war文件.
点击下一步,
点击下一步
然后一直默认选择,点击完成就好了,部署成功后是如下状态.
4、访问部署的session_test应用服务
打开浏览器,访问server1部署的服务,输入http://127.0.0.1:47001/redis/
访问server2部署的服务,输入http://127.0.0.1:47002/redis/
访问server3部署的服务,输入http://127.0.0.1:47003/redis/
访问三个服务下的session_test应用之后,可以发现session_id第一个感叹号之前的值(602t6EWkiR9LkbZ1QADZr6073bjxlYfJIhEAd-U456eiI26aC5vT)是不变的,说明cluster集群下的server1、server2、server3服务的session_test应用的session是相互复制的.