...
(2)如果我们是通过集成相关代码,登录上了smartbi,却并未打开smartbi的任一资源或界面时,由于smartbi无法发起noop.jsp的请求,所以会话只能保持5分钟,5分钟后自动超时。此时再去打开smartbi的资源,便会出现会话超时,跳转到登录界面的情况。
...
2、smartbi的会话保持原理
smartbi的会话保持机制和其他应用一样都是遵循浏览器对于cookie持有机制的,浏览器cookie原理可以查看网上相关介绍文档 : https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies:
通俗的来说cookie就是一段文本,它存储在客户端(通常来说是浏览器)。你可以把cookie当作一个map,里边是键值对,每个键值对有 过期时间、域、路径、脚本可否访问等描述信息;描述信息存储在客户端,客户端请求时,默认会带上cookie的名称和值,不会带描述信息,通过http请求报文header中的cookie项进行传输;服务器响应时,可以设置cookie信息,就在http响应报文的header中Set-Cookie项。
因cookie区分域,而不区分端口,也就是说,同一个ip下的多个端口下的cookie是共享的!更确切的说,请求是会带上同域下所有端口的cookie,但是返回时会覆盖,因此如果在同一个浏览器同时访问相同IP不同端口号的应用,就会引发会话混乱,导致系统无法正常使用。
对于浏览器cookie更详细的原理说明也可通过网上的文档进一步了解:https://blog.csdn.net/wangjun5159/article/details/52312737
针对F5参考解决方案
F5是硬件负载,当前文档涉及的解决方案是日常项目遇到,由客户方和F5厂商沟通获取到的,可做同类型问题参考。
1、以F5做smartbi集群负载均衡,需要配置cookie会话保持。
2、如果已经配置cookie会话保持了,还是会不定时出现会话超时,可参考网上解决:2、如果已经配置cookie会话保持了,还是会不定时出现会话超时,可进一步参考网上解决方案:https://blog.csdn.net/zhangxm_qz/article/details/125694733
...