`
jysboy
  • 浏览: 10610 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

tomcat管理及session设置(转)

 
阅读更多

tomcat在5.5以后,就没有自带admin项目了,如果要从http://localhost:8080界面进入tomcat管理页面,需要从网上下载对应的tomcat-admin.zip,举个例子,如果你的tomcat是5.5.30的,需要从http://tomcat.apache.org/download-55.cgi下载(在下载页面的Binary Distributions栏下的第四大项,Administration Web Application 即是)。解压以后,得到的文件夹里,东西都已经给你整理好了。
你只需要按照解压文件的目录,copy这些文件到$CATALINA_BASE对应的目录下,项目映射文件admin.xml中的路径稍微改下,然后重启tomcat就行了。

在tomcat的conf目录下的tomcat-user.xml文件中还需要加

  <role rolename="standard"/>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="admin" password="admin" roles="standard,manager,admin"/>

来添加一个admin用户,这样就可以访问tomcat的admin页面了。

同样,我们可以访问tomcat的manager页面来查看session的信息,在tomcat6.0以上的版本是自带了manager这个项目的,如果是tomcat5.5.x的版本也需要去网上下载的,配置同admin。

这里说说session过期时间的设置,一般来说方法有四种:

1. 在tomcat——>conf——>servler.xml文件中定义:

<Context path="/test" docBase="/test"  
  defaultSessionTimeOut="3600" isWARExpanded="true"  
  isWARValidated="false" isInvokerEnabled="true"  
  isWorkDirPersistent="false"/>
2. 在web.xml中定义:这个针对具体项目

<session-config>  
<session-timeout>20</session-timeout>  
</session-config>

3. 在程序中定义:这个就针对具体页面了

session.setMaxInactiveInterval(30*60);

4.在conf/context.xml文件设置:这个是针对所有的项目了

打开context.xml,在<Context>节点下添加如下<Manager>节点:
<Manager className="org.apache.catalina.session.PersistentManager" >
    debug=0
    saveOnRestart="true"
    maxActiveSession="-1"
    minIdleSwap="-1"
    maxIdleSwap="-1"
    maxIdleBackup="-1"
    <Store className="org.apache.catalina.session.FileStore" directory="../session" />

//这里代表的是文件持久化.也可以自己实现Store
</Manager>

saveOnRestart:(true/false)配置服务重启工程中对session的处理,若为true,则关闭前把有效的session保存,启动后重新载入

maxActiveSession:活动状态Session的最大数,为-1时则不限制,否则Session Manager将会把超出的Session对象转移到Session Store中。
minIdleSwap:Session不活动的最短时间,超过该时间,Session Manager 可能会把该Session对象转移到Session Store中,单位为秒。
maxidleSwap:Session不活动的最长时间,超过该时间,Session Manager 将会把该Session对象转移到Session Store中,该Session将不在内存中。
maxidleBackup: Session不活动的最长时间,超过该时间,Session Manager 将会把该Session对象备份到Session Store中,但该Session对象依然存在内存中。
<Store>指定实现持久化的类和Session存放的文件位置,如该例子中指定的类是:org.apache.catalina.session.FileStore,而Session对象存放的目录则是tomcat根目录下的 session文件夹(当然自己创建)

在第四种配置中,配置完后可以写一个简单的jsp页面,在页面上显示本次用户访问的Session ID,然后重起tomcat,再刷新该页面,可以看到该Session Id不变,而在/session目录下自动生成一个以session id为名,以“session”为扩展名的文件。该Session的持久化配置成功。

 

转自:http://blog.sina.com.cn/s/blog_49cc672f0100k8us.html

分享到:
评论

相关推荐

    设定tomcat中session过期时间.txt

    Tomcat作为一款广泛使用的Java应用服务器及Servlet容器,提供了多种方式来设定Session的有效时长。这有助于开发者根据具体业务需求灵活调整Session的生命周期。本文将详细介绍如何通过三种不同的方法来设定Tomcat中...

    tomcat8专用session管理包.rar

    标题中的“tomcat8专用session管理包.rar”指的是一个针对Tomcat 8的特定session管理解决方案,这个压缩包包含了在使用Nginx作为反向代理服务器,并与Redis结合实现负载均衡场景下,确保Tomcat应用间session数据共享...

    ngnix tomcat7 redis session manager jar包

    标签 "tomcat7 redis session manager jar" 强调了我们的重点是Tomcat7版本的session管理器,它依赖于Redis来存储和管理用户会话。 在压缩包中的文件名 "tomcat7 redis session manager" 没有提供具体的文件列表,...

    tomcat集群实现session复制

    在IT领域,特别是Web应用服务器的管理与优化中,Tomcat集群实现Session复制是一个关键的技术点,它确保了高可用性和负载均衡,特别是在处理大量并发请求的场景下。本文将深入探讨这一主题,涵盖其原理、配置方法以及...

    tomcat-redis-session-manager的jar包-包含Tomcat7和Tomcat8

    总结起来,Tomcat-Redis-Session-Manager通过整合Redis和Tomcat,实现了高效、可靠的session管理,特别适用于需要处理高并发和分布式部署的Web应用。其提供的jar包简化了集成过程,让开发者能快速地在Tomcat7和...

    tomcat8+memcached session共享

    2. 配置`context.xml`或`server.xml`文件,设置session管理器为MemcachedSessionManager,并指定Memcached服务器的地址和端口。 3. 可能还需要配置序列化策略,如使用Kryo作为默认的序列化器。 4. 重启Tomcat服务器...

    tomcat8配置session共享所需jar包

    `tomcat8-redis-session-manager-2.0.0.jar`和`tomcat7-redis-session-manager-2.0.0.jar`是Tomcat的Session管理器实现,它们扩展了Tomcat的默认Session管理机制,使得Session能够在多台Tomcat服务器间共享。...

    tomcat redis session.rar

    综上所述,"Tomcat Redis Session"是一种在分布式环境中保证用户会话一致性的解决方案,通过集成Redis和Nginx,有效地解决了Web应用集群中的Session管理难题。在实际部署中,还需要考虑系统整体架构、性能优化和运维...

    tomcat-redis-session-manager包集合下载(tomcat8)

    【标题】"tomcat-redis-session-manager包集合下载(tomcat8)"涉及的主要知识点是将Redis集成到Tomcat中管理会话(session),以提高Web应用的性能和可扩展性。 【描述】中提到的"所需的tomcat-redis-session-...

    tomcat-redis-session-manager

    《Tomcat Redis Session Manager:实现高效会话管理》 在Web应用开发中,session管理是不可或缺的一部分,它用于存储用户状态信息,确保用户在不同页面间保持登录状态。然而,随着分布式系统的普及,单个服务器的...

    memcached+tomcat7共享session所需要的jar包

    然而,当使用多台Tomcat服务器构建集群时,每个服务器都可能独立创建并管理Session,导致Session数据不一致。为了解决这个问题,可以借助外部存储,如Memcached,来存储和共享Session。 Memcached是一款高性能、...

    tomcat-redis-session管理 使用说明

    为了解决这个问题,一种常见的解决方案是使用外部存储如Redis来管理Session,例如“Tomcat-Redis-Session管理”。以下将详细解释这一技术的原理、实施步骤以及优势。 【一、Tomcat Session管理基础】 Tomcat是...

    redis-tomcat7-session共享配置文档及依赖包

    在“redis-tomcat67资源包”中可能包含了适用于Tomcat7的session管理器实现,例如`jedis.jar`和`tomcat-redis-session-manager.jar`等。将这些jar文件放入Tomcat的`lib`目录下,以便让Tomcat能够加载。 2. 修改...

    session 共享 tomcat-redis-session-manager 所需要的jar (绝对可用)

    总结来说,这个压缩包提供了一套完整的解决方案,包括了连接Redis的Jedis客户端、对象池管理、Tomcat的Session管理器以及配置文件,使得开发者可以轻松地在Tomcat集群中实现Session共享,提升系统的可扩展性和容错性...

    tomcat+memcached 管理session

    本篇文章将详细介绍如何使用`Tomcat`结合`Memcached`来实现高效的Session管理。 首先,`Memcached`作为一种高性能、分布式的内存缓存系统,能够存储包括Web应用中的Session数据在内的临时性数据。通过将Session数据...

    Tomcat8亲测可用 tomcat-redis-session-manager的jar包

    标题中的“Tomcat8亲测可用 tomcat-redis-session-manager的jar包”指的是一个专为Tomcat8设计的,用于管理session的扩展组件。这个组件实现了将Tomcat应用服务器中的用户session数据存储到Redis分布式缓存系统中,...

    tomcat6 memcache session manager session共享 jar包下载

    标题中的“tomcat6 memcache session manager session共享 ...一旦设置完成,Tomcat将自动开始使用Memcache来管理Session,实现跨服务器的Session共享。这不仅可以提高应用的可用性,还有助于负载均衡,提升整体性能。

    tomcat-redis-session-manager实现session共享 配置文件

    Tomcat-Redis-Session-Manager是基于Apache Tomcat的Session管理器,通过集成Redis作为Session持久化存储,实现了跨服务器的Session共享。它将Tomcat中的Session数据序列化后存储到Redis中,当需要时再从Redis中读取...

    nginx+tomcat6+session共享

    标题中的“nginx+tomcat6+session共享”指的是在Web服务器和应用服务器的集群环境中,如何通过Nginx、Tomcat6以及Session共享技术来实现用户会话在多个服务器之间的同步。这一配置对于高并发、高可用的系统设计至关...

    tomcat8集群session共享(redis处理)

    2. **选择Session管理器**:Tomcat提供了多种Session管理器,这里我们选择基于Redis的`org.apache.catalina.session.PersistentManager`。这个管理器能够将Session序列化并存储到Redis中。 3. **添加依赖库**:为了...

Global site tag (gtag.js) - Google Analytics