`

tomcat重启保存在session中的对象序列化到硬盘。

阅读更多
     在面试宝典中看到一个结论。
     “如果对象被保存在了Session中,tomcat在重启时要把Session对象序列化到硬盘,这个对象就必须实现Serializable接口。”

      想到了开发中遇到过这个异常。在重启tomcat时,报对象未序列话异常。按照异常提示将对象序列化,程序就正常了。之前没有想过是什么原因,为什么存到session中的对象需要序列化。
      另外,tomcat重启session中保存的对象为什么要序列化?
      google之大致原因是,用户访问过后浏览器没有关闭,此时tomcat如果重启,用户访问存在session中的信息就应该还在,所以session要将对象信息序列化到硬盘,重启时再反序列化到session中。这样保证不影响用户的操作。
      只有用户关闭浏览器,session才结束?
分享到:
评论

相关推荐

    tomcat-7.0.47-memcached-各种序列化策略-session共享

    综上所述,“tomcat-7.0.47-memcached-各种序列化策略-session共享”这个主题涉及到的核心知识点包括Tomcat的Session管理、Memcached的使用、以及不同序列化策略的比较与选择。通过这些技术,我们可以构建一个高可用...

    tomcat8+memcached session共享

    在session共享中,它可能用于处理session对象的序列化和反序列化过程。 5. `msm-kryo-serializer-1.8.3.jar`:这是Kryo序列化器的扩展,专门为memcached-session-manager提供支持。 6. `reflectasm-1.09.jar`:...

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

    Tomcat-Redis-Session-Manager是一个开源项目,它允许Tomcat服务器将用户的session数据存储到Redis缓存系统中,而不是默认存储在本地内存或文件系统。这一设计显著提升了session管理的性能和可扩展性,尤其是在集群...

    nginx+tomcat7+session共享 kryo序列化所需要包

    nginx+tomcat7+session共享 kryo序列化所需要包 1.将上面所提到的包全部拷贝到tomcat的lib下(三台tomcat都需要) 2.修改每台tomcat的conf目录下得context.xml文件或者server.xml文件,在其中加入如下任意一段代码...

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

    tomcat-redis-session-manager是专门为Tomcat设计的一个插件,它实现了SessionManager接口,允许Tomcat将session数据序列化并存储到Redis中。这样,无论用户连接到哪个Tomcat实例,都可以从Redis中获取其session信息...

    tomcat-session序列化(tomcat-kryo序列化)

    tomcat kryo序列化,msm-memcached-session-manager-tc7-1.8.2

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

    1. **Session创建与更新**:当用户请求到达服务器时,如果创建或更新Session,Tomcat-Redis-Session-Manager会将Session对象序列化为字节数组,然后存储到Redis中,键为服务器生成的唯一Session ID。 2. **Session...

    apache-tomcat-7.0.47-memcached-各种序列化策略-session共享

    在`apache-tomcat-7.0.47-memcached`的配置中,你需要选择合适的序列化策略,并将其配置在Tomcat的`context.xml`或`server.xml`文件中,通过`MemcachedSessionManager`来实现Session的存取。配置项可能包括序列化类...

    tomcat-redis-session-manager

    这是一个开源项目,它允许Tomcat服务器将用户的session数据持久化到Redis数据库中,而不是传统的内存或本地硬盘。这样,无论用户访问哪个服务器节点,都能获取到正确的session信息,从而实现负载均衡下的会话持久性...

    Tomcat_Session的持久化

    Tomcat_Session 的持久化是指将 HttpSession 对象保存到文件系统或数据库中,以便在服务器关闭或重启时可以恢复 Session 数据。下面详细讲解 Tomcat_Session 的持久化原理和实现机制。 一、Session 的使用 Session...

    tomcat-redis-session-manager-1.2-tomcat-7-java-7

    tomcat-redis-session-manager-1.2-tomcat-7-java-7tomcat-redis-session-manager-1.2-tomcat-7-java-7tomcat-redis-session-manager-1.2-tomcat-7-java-7tomcat-redis-session-manager-1.2-tomcat-7-java-7tomcat-...

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

    Tomcat Redis Session Manager是专门为Apache Tomcat设计的一个插件,它的主要任务是将Tomcat的Session对象存储在Redis这种高可用的键值存储系统中,以便在集群环境中跨多个Tomcat实例共享Session。这样可以解决负载...

    Memcached-session-manager所需最新jar包-tomcat7-kryo序列

    session-manager和Kryo,开发者需要下载相应的jar包,将其添加到Tomcat的类路径中,然后在`context.xml`或`server.xml`配置文件中进行相应的配置,指定Memcached服务器的地址、端口以及序列化策略等参数。...

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

    这个组件实现了将Tomcat应用服务器中的用户session数据存储到Redis分布式缓存系统中,以提高系统的可伸缩性和性能。Redis是一个高性能的键值数据库,常被用来作为缓存服务,因其速度快、数据持久化等特点,非常适合...

    Memchached+Tomcat6|7session共享 kryo序列化所需要包

    Memchached+Tomcat6|7session共享 kryo序列化所需要包 (已经更新至1.8.2版本) 1.将所有的包拷贝至tomcat目录下的lib下面; 2.修改conf/context.xml加下面的代码: memcachedNodes="n1:127.0.0.1:11211" ...

    tomcat-redis-session-manager jar包

    这个库的目的是将用户的会话信息存储在Redis这样的分布式内存数据库中,而不是传统的基于内存的Session管理,这样可以解决因服务器重启或负载均衡导致的Session丢失问题。 **Redis作为Session存储的优势** 1. **高...

    tomcat-redis-session管理 使用说明

    3. 配置Serializer:为了将Session对象序列化到Redis,需要指定一个序列化器。通常可以使用Java自带的`java.beans.XMLEncoder`或第三方库如Google的Protocol Buffers。 4. 测试与优化:完成配置后,启动Tomcat并...

    tomcat-redis-session-manager源码

    `RedisSession`是`RedisSessionManager`内部用于表示会话的对象,它继承自`org.apache.catalina.Session`,并扩展了对Redis特性的支持,如序列化和反序列化。会话数据在Redis中以哈希(Hash)形式存储,便于高效地...

    tomcat-redis配置session共享

    现在,每当一个新的Session被创建时,Tomcat会将Session对象序列化并存储到Redis中。 6. **测试与优化**:部署应用到多台Tomcat服务器上,尝试登录并浏览不同的服务器实例,确保Session数据在不同服务器之间正确...

Global site tag (gtag.js) - Google Analytics