ERROR | Context [/ofbizsetup] startup failed due to previous errors
INFO | No Spring WebApplicationInitializer types detected on classpath
INFO | starts initialization... (configured nodes definition n1:192.168.0.43:12587, failover nodes null)
ERROR | The session manager failed to start
org.apache.catalina.LifecycleException: Failed to start component [de.javakaffee.web.msm.MemcachedBackupSessionManager[/tomahawk]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5268)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoSuchMethodError: de.javakaffee.web.msm.SuffixLocatorBinaryConnectionFactory.getAuthWaitTime()J
at de.javakaffee.web.msm.SuffixLocatorBinaryConnectionFactory.createMemcachedNode(SuffixLocatorBinaryConnectionFactory.java:116)
at net.spy.memcached.MemcachedConnection.createConnections(MemcachedConnection.java:141)
at net.spy.memcached.MemcachedConnection.<init>(MemcachedConnection.java:128)
at net.spy.memcached.DefaultConnectionFactory.createConnection(DefaultConnectionFactory.java:176)
at net.spy.memcached.MemcachedClient.<init>(MemcachedClient.java:193)
at de.javakaffee.web.msm.MemcachedClientFactory.createMemcachedClient(MemcachedClientFactory.java:53)
at de.javakaffee.web.msm.MemcachedSessionService.createMemcachedClient(MemcachedSessionService.java:505)
at de.javakaffee.web.msm.MemcachedSessionService.startInternal(MemcachedSessionService.java:426)
at de.javakaffee.web.msm.MemcachedBackupSessionManager.startInternal(MemcachedBackupSessionManager.java:518)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
... 8 more
^[[?1;2cERROR | Context [/tomahawk] startup failed due to previous errors
INFO | Starting ProtocolHandler ["ajp-nio-8009"]
INFO | Starting ProtocolHandler ["http-nio2-8080"]
INFO | Starting ProtocolHandler ["http-nio2-8443"]
********************************************************
【问题】
同名方法(createMemcachedNode)存在于两个类中:
1> de.javakaffee.web.msm.SuffixLocatorBinaryConnectionFactory.createMemcachedNode
2> net.spy.memcached.BinaryConnectionFactory.createMemcachedNode
如果调用到BinaryConnectionFactory中的此方法,则没有问题,如果调用到SuffixLocatorBinaryConnectionFactory的方法就会出现【NoSuchMethodError】
net.spy.memcached.MemcachedConnection.createConnections调用
/////////begin/////
private final ConnectionFactory connectionFactory;
MemcachedNode qa = this.connectionFactory.createMemcachedNode(sa, ch, this.bufSize);
/////////end///////
而connectionFactory有多个实现类,如上面的(1)和(2),应该使用(2)就不会有问题。
可以考虑通过jvm参数-D,指定其实现类。
【解决】
经比对,发现jar版本不一致,memcached-session-manager-1.8.2.jar需要用到spymemcached-2.11.1.jar而不是spymemcached-2.8.1.jar。
分享到:
相关推荐
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,实现会话共享
Memcached-session-manager使用说明及相关jar包(tomcat7版) 依照文档部署即可实现多服务器多tomcat session共享,jar包中是tomcat7集成所需要的jar包,序列化工具用的是java默认的序列化工具,若要使用其他版本的...
本lib包包含:javolution-5.5.1.jar、kryo-1.03.jar、kryo-serializers-0.10.jar、memcached-2.5.jar、memcached-session-manager-1.5.1.jar、memcached-session-manager-tc7-1.5.1.jar、minlog-1.2.jar、msm-...
网上下载过N种jar版本,启动tomcat报各种错误;浪费了很多时间;本资源经tomcat7、tomcat8测试,均正常实现负载均衡,session共享功能。
memcached-session-manager
tomcat-7.0.54配合使用的memcached-session-manager-1.6.1的整套jar包
自测适用于tomcat7,其他tomcat没有测试 asm kryo kryo-serializer kryo-serializers memcached-session-manager memcached-session-manager-tc7 minlog objenesis reflectasm spymemcached
tomcat8+memcached session共享所需的jar包, memcached-session-manager memcached-session-manager-tc8 msm-kryo-serializer spymemcached kryo-serializers所有jar包都有
适应MSM的整合包,有 flexjson-3.3 msm-flexjson-serializer-1.9.6 msm-spymemcached-2.11.3 memcached-session-manager-1.9.6 memcached-session-manager-tc8-1.9.6
Nginx+Tomcat+Memcached-Session-Manager整合做集群实现Session共享,实战操作,亲测可用。本文档仅供交流学习使用,欢迎大家批评指正。
最新memcached-session-manager1.8(MSM),Tomcat+Memcached集群Jar包
完全可以根据github的要求来配置,我只是没分了~ 官网地址:https://github.com/magro/memcached-session-manager/wiki/SetupAndConfiguration#add-memcached-session-manager-jars-to-tomcat
memcached-session-manager-1.6.5.jar
Memcached-session-manager所需的jar包-tomcat7-kryo序列
memcached-session-manager-tc6-1.6.3.jar
tomcat9负载均衡tomcat-cluster-redis-session-manager_4.0
memcached-session-manager_4_tomcat8 用在centos7 下的tomcat 8.0.33 java 1.8 测试成功
memcached-session-manager-tc7.jar实现Tomcat+redis session共享, 解压该文件,将里面的jar包丢Tomcat7目录lib下进行相关配置即可(配置网上有),由官方git地址:...
memcached-session-manager-1.8.1.jar