版本:
Tomcat:8.5.6
memcached-session-manager:1.9.7
在tomcat的lib下需要增加以下jar:
memcached-session-manager-1.9.7.jar
memcached-session-manager-tc8-1.9.7.jar
spymemcached-2.12.1.jar
msm-kryo-serializer-2.0.0.jar
kryo-serializers-0.11.jar
kryo-1.04.jar
minlog-1.2.jar
reflectasm-1.07.jar
asm-4.0.jar
在tomcat的conf/server.xml文件配置如下:
<Context path="/" docBase="/opt/demo" debug="0" privileged="true" reloadable="true" > <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" memcachedNodes="n1:192.168.1.20:12001" sticky="false" sessionBackupAsync="false" lockingMode="auto" requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$" customConverter="de.javakaffee.web.msm.serializer.kryo.SpringSecurityUserRegistration" transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" /> </Context>
在spring-securit的序列化时要用ycustomConverter="de.javakaffee.web.msm.serializer.kryo.SpringSecurityUserRegistration"
在demo工程下pom.xml需要增加
<dependency> <groupId>de.javakaffee.msm</groupId> <artifactId>msm-kryo-serializer</artifactId> <version>2.0.0</version> </dependency>
demo工程下自定义的User类等需要实现序列化接口(implements Serializable)
demo工程下的
LoginUser userDetails = new LoginUser(user.getUserName(), user.getUserPassword().toLowerCase(), enabled, accountNonExpired, credentialsNonExpired, accountNonLocked, obtainGrantedAuthorities(roles));
private Set<GrantedAuthority> obtainGrantedAuthorities(List<String> roleList) { Set<GrantedAuthority> authSet = new HashSet<>(); if (roleList != null) { for (int i = 0; i < roleList.size(); i++) { String roleName = roleList.get(i); authSet.add(new ComparableGrantedAuthority(roleName)); } } return authSet; }
@Override public int compareTo(ComparableGrantedAuthority o) { return getAuthority().compareTo(o.getAuthority()); }
这几个地方也需要调整。
demo:https://github.com/tombigun/spring-security-demo
相关推荐
memcached-1.9.6,libevent-2.1.12-stable.tar memcached-session-manager-1.9.6,msm-kryo-serializer-1.9.6.jar,tomcat8.5,实现会话共享
7. `memcached-session-manager-tc8-1.8.3.jar`:这个是针对Tomcat 8版本的session管理器实现,确保与Tomcat 8的兼容性。 8. `minlog-1.2.jar`:这是一个简单的日志库,可能用于在处理session共享时记录和调试信息。...
总结来说,`memcached-session-manager`是一个用于在Tomcat环境中实现基于Memcached的session共享的工具,版本1.9.6已被证实兼容Tomcat 7和8,并且能有效支持负载均衡。它利用Kryo等高效序列化库,优化了session在...
MSM--memcached session manager是一个高可用的Tomcat session共享解决方案,除了可以从本机内存快速读取Session信息(仅针对黏性Session)外,同时可使用memcached存取Session,以实现高可用。对于非黏性Session,...
依照文档部署即可实现多服务器多tomcat session共享,jar包中是tomcat7集成所需要的jar包,序列化工具用的是java默认的序列化工具,若要使用其他版本的tomcat或其他的序列化工具,更具文档自己替换jar包即可,附赠...
tomcat8+memcached session共享所需的jar包, memcached-session-manager memcached-session-manager-tc8 msm-kryo-serializer spymemcached kryo-serializers所有jar包都有
为了优化这个问题,我们可以使用`memcached-session-manager`,它是一个专门为Tomcat设计的插件,使得Tomcat能够将用户的session数据存储在Memcached服务器上,实现session的分布式管理。 本文将详细介绍如何在...
"memcached-session-manager_4_tomcat8" 这个标题表明我们正在讨论一个针对Tomcat 8.0.33版本的session管理器,它使用了memcached作为持久化存储。memcached是一种分布式内存对象缓存系统,常用于减轻数据库负载,...
3. **Memcached-session-manager**:这是一个开源项目,用于在Apache Tomcat应用服务器中集成Memcached,以便将用户的会话数据存储在Memcached集群中,以实现高可用性和可扩展性。它提供了一种替代默认的基于文件或...
Nginx+Tomcat+Memcached实现tomcat集群和session共享 tomcat部分
在本篇文章中,我们将深入探讨如何使用Nginx、Tomcat和Memcached-Session-Manager(MSM)来构建一个集群环境,并实现Session共享。这涉及到集群搭建、分布式应用以及缓存管理等多个方面的IT知识。下面将详细展开这些...
整合memcached-session-manager1.9.6和相关资源包,实现session共享,支持tomcat7和tomcat8,包含msm+kryo-2.24+reflectasm+javolution+spymemcached等共计16个jar包,根据需求取用,项目可用,如果项目环境为tomcat...
下面我们将详细探讨如何实现Nginx+Tomcat+Memcached的集群和Session共享。 **Nginx** Nginx是一款轻量级的Web服务器/反向代理服务器,以其高效的性能和低内存占用著称。在本场景中,Nginx主要负责以下任务: 1. **...
标题 "memcached-session-manager 实现 tomcat session共享" 指的是在分布式环境中,通过 memcached-session-manager 这个工具来实现 Tomcat 应用服务器之间的 Session 共享。Session 是 Web 应用中用于存储用户状态...
**Memcached-Session-Manager与Tomcat集群中的Session共享** 在分布式系统中,尤其是在使用了多个Tomcat实例作为Web服务器的集群环境中,确保用户会话(Session)在各个节点之间共享是至关重要的。Memcached-...
标题中的“tomcat8 memcached session共享jar包”指的是在Tomcat 8中使用Memcached作为session共享存储的解决方案。Memcached是一种分布式内存缓存系统,常用于减轻数据库负载,提高应用性能。在Tomcat这样的Java...
memcached-session-manager-tc7.jar实现Tomcat+redis session共享, 解压该文件,将里面的jar包丢Tomcat7目录lib下进行相关配置即可(配置网上有),由官方git地址:...
"tomcat9+tomcat-cluster-redis-session-manager_4.0.zip"这个文件组合涉及到的是在Tomcat 9上实现负载均衡以及使用Redis作为Session管理器的高级配置。 首先,Tomcat 9是Apache Tomcat服务器的一个版本,它是Java ...
Nginx+Tomcat+Memcached实现tomcat集群和session共享 nginx配置
2.4.jar、reflectasm-1.11.3.jar、spymemcached-2.12.2.jar、memcached-session-manager-tc7-1.9.7.jar(Tomcat7使用)、memcached-session-manager-tc8-1.9.7.jar(Tomcat8使用)、memcached-session-manager-tc9-...