Redis Hybris会话缓存用于非粘性会话配置

2020-09-23 08:42发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我想将Redis用于hy...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我想将Redis用于hybris会话的集中式会话缓存,而不是在每个即时级别存储该会话,并让我们知道这 https://github.com/jcoleman/tomcat-redis-session-manager 配置将起作用。

混合专家,需要您对混合会话缓存进行输入,我想实现 https://wiki.hybris.com/display/release5/How+To+Use+Oracle+Coherence+with+an+Extension 与Redis相同。

期待您的宝贵意见

我在Hybris中尝试了上述配置,即

面对下面的问题,请高度评价/评论,以便使我可以看到使它起作用的选项,问题是:

严重:路径为[/mystorestorefront]的上下文中Servlet [DispatcherServlet]的Servlet.service()抛出异常INFO | jvm 1 | 主| 2015/01/23 15:32:12.392 | redis.clients.jedis.exceptions.JedisConnectionException:java.net.SocketTimeoutException:读取超时 jvm 1 | 主| 2015/01/23 15:32:12.392 | 在redis.clients.jedis.Protocol.process(Protocol.java:79)处| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在redis.clients.jedis.Protocol.read(Protocol.java:131)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在redis.clients.jedis.Connection.getIntegerReply(Connection.java:188)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在redis.clients.jedis.BinaryJedis.setnx(BinaryJedis.java:429)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在com.radiadesign.catalina.session.RedisSessionManager.createSession(RedisSessionManager.java:275)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.connector.Request.doGetSession(Request.java:2936)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.connector.Request.getSession(Request.java:2300)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:897)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:909)中 jvm 1 | 主| 2015/01/23 15:32:12.392 | 在javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:238)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在de.hybris.platform.servicelayer.web.AbstractPlatformFilterChain.doFilterInternal(AbstractPlatformFilterChain.java:148)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在in.com.hometown.storefront.filters.UrlPathFilter.doFilterInternal(UrlPathFilter.java:85)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在in.com.hometown.storefront.filters.AcceleratorAddOnFilter.doFilter(AcceleratorAddOnFilter.java:92)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在de.hybris.platform.servicelayer.web.XSSFilter.doFilter(XSSFilter.java:230)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在com.radiadesign.catalina.session.RedisSessionHandlerValve.invoke(RedisSessionHandlerValve.java:26)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:607)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run(JIoEndpoint.java:315)中 jvm 1 | 主| 2015/01/23 15:32:12.392 | 在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在java.lang.Thread.run(Thread.java:745)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 引起原因:java.net.SocketTimeoutException:读取超时INFO | jvm 1 | 主| 2015/01/23 15:32:12.392 | 在java.net.SocketInputStream.socketRead0(本机方法) jvm 1 | 主| 2015/01/23 15:32:12.392 | 在java.net.SocketInputStream.read(SocketInputStream.java:152)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在java.net.SocketInputStream.read(SocketInputStream.java:122)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在java.net.SocketInputStream.read(SocketInputStream.java:108)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在redis.clients.util.RedisInputStream.fill(RedisInputStream.java:109)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在redis.clients.util.RedisInputStream.readByte(RedisInputStream.java:45)信息| jvm 1 | 主| 2015/01/23 15:32:12.392 | 在redis.clients.jedis.Protocol.process(Protocol.java:64)处 jvm 1 | 主| 2015/01/23 15:32:12.392 | ... 46更多

最好的问候

9条回答
粗暴的香蕉
2020-09-23 09:29

嗨,

我们遵循了 https://discuss.pivotal.io/hc/en-us/articles/206085337-How-to-setup-Redis-Session-Manager-on-tcServer-Tomcat ,最后我们能够 将会话信息存储在我们的Redis ElasticCache AWS集群中。

步骤基本上是:

  • 停止hybris

  • 下载3个jar并将其复制到hybris/bin/platform/tomcat/lib。

  • 修改我们要在redis中存储会话的上下文的配置(文件hybris/bin/platform/tomcat/server.xml)。

  • 开始hybris。

现在,我们的购物车遇到了一些问题。 我们无法在未收到以下错误的情况下向其中添加任何内容:

2017年2月20日上午10:27:21 com.orangefunction.tomcat.redissessions.RedisSessionManager saveInternal SEVERE:java.lang.Object

如果任何人遇到类似的问题,将不胜感激。

亲切的问候,

一周热门 更多>