Nginx+Tomcat集群配置[二]
2018-01-04 17:47
281 查看
Nginx+Tomcat集群配置[二]
在第一篇博客的基础上,进行后续的配置
搭建SSM框架,修改两个页面的index.jsp
<h1>本地的Tomcat</h1> <form action="login"> 用户名:<input type="text" name="username"/><p/> 密码:<input type="password" name="password"></p> <input type="submit"/> </form>
<h1>远程的Tomcat</h1> <form action="login"> 用户名:<input type="text" name="username"/><p/> 密码:<input type="password" name="password"></p> <input type="submit"/> </form>
2. 使用redis完成session共享
作为这次的主角,相信大家对redis应该都一定印象,redis是一款开源的高性能key-value数据库,拥有丰富的键值储存类型,并提供多种语言的API。与一般数据库不同,redis是使用内存作为主存,而使用硬盘来实现数据持久化,而且redis是周期性的将数据写到硬盘上。这就意味着一旦我们服务器出现断电、重启之类的情况,我们很可能会出现数据丢失的情况,所以不建议使用redis来存放关键的数据。当然,也正因为redis读写数据都使用内存,所以它的速度是非常快的,很适合我们来存放一些临时性的数据。此外,redis能实现的作用很多,诸如队列、缓存之类的,但我也还没使用过,无法在这里为大家说明,但不影响我们今天的session共享功能。具体安装请看这里3. SSM与Redis的整和
其实Spring本身就有提供对redis的支持,就是spring-session,我们只需将这个在pom.xml添加如下代码,maven便会自己下载所需的jar包及依赖包<dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> <version>1.1.1.RELEASE</version> <type>pom</type> </dependency>
reources文件夹中新建redis.properties
#主机地址 redis hostName = localhost #端口 redis port = 6379 #密码 redis password = 123456 #连接超时时间 redis timeout = 20000
再新建一个spring-redis.xml,往里面添加我们redis相关的配置。其中maxInactiveIntervalInSeconds是设置session有效时间,以秒为单位,但实际上无论怎么设,session真实有效时间还是会比我们设置的稍微长一些
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- session设置 --> <bean class="org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration"> <property name="maxInactiveIntervalInSeconds" value="3600"></property> </bean> <!-- redis连接池 --> <bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig"/> <!-- redis连接工厂 --> <bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"> <property name="hostName" value="${redis_hostName}"/> <property name="port" value="${redis_port}"/> <property name="password" value="${redis_password}"/> <property name="timeout" value="${redis_timeout}"/> <property name="poolConfig" ref="poolConfig"></property> </bean> </beans>
添加完成后,别忘了还要在spring.xml和web.xml引入我们新添加的文件,引入代码这里就不给出了。最后我们还需要在web.xml中加入spring的session过滤器,我个人理解这个过滤器的作用是告诉spring来接管对session管理与创建工作。
<!--session过滤器--> <filter> <filter-name>springSessionRepositoryFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterPro 4000 xy</filter-class> </filter> <filter-mapping> <filter-name>springSessionRepositoryFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
Session共享测试
为了完成测试,我先在IndexController中添加了两个简单方法,一个是登录方法,一个是进入用户中心方法。需要注意的是如果要往redis中存入对象,则需要改对象序列化才能存入。我这里为了方便,就用fastjson将对象转为字符串存入了,查看起来也方便点。另外个人中心页面很简单
redis+tomcat+session
redis可视化工具
相关文章推荐
- Nginx+Tomcat集群配置[一]
- Nginx+Tomcat集群配置[一]
- Nginx+Tomcat集群配置[二]
- nginx+tomcat集群配置
- Nginx+Tomcat集群配置[一]
- Nginx+Tomcat集群配置[二]
- Nginx+Tomcat集群配置[一]
- Nginx+Tomcat集群配置[二]
- Nginx+Tomcat集群配置[一]
- Nginx+Tomcat集群配置讲解
- Nginx+Tomcat集群配置[二]
- Nginx+ 多个Memcached+ 多个Tomcat集群配置来实现 sticky Session
- Nginx+Tomcat集群配置[一]
- Nginx+Tomcat集群与负载均衡示例,配置webservice,配置Tomcat,配置Nginx
- Nginx+Tomcat集群配置[二]
- windows下nginx+tomcat集群配置笔记
- nginx+tomcat集群配置(4)--rewrite规则和多应用根目录设定思路
- Nginx+Tomcat集群配置[一]
- 关于Nginx+tomcat集群配置
- Nginx+Tomcat集群配置[二]