我们使用COOKIEINSERT设置来使用NetScaler后面的4台服务器的会话cookie。 如果我打开网页,它加载确定。 如果我删除NetScaler添加Cookie并刷新页面,我被要求再次login(使用Windows身份validation,NTLM)。 警告提供的请求碰巧去到同一个服务器,它成功了。 如果它select另一台服务器,则login失败。
在正常情况下,删除该cookie不是可能的情况。 但是,我们有另外一个应用程序向这个Web应用程序暴露的API发出请求。 如果cookie不存在,那么几乎同时触发的多个AJAX请求可能会或可能不会工作,并且每个请求可能会转到另一个服务器(我们有HTTP头部来查看是这种情况)。
首先,当持久性cookie被移除时,需要再次login,都依赖于你的应用程序。 如果您的应用程序具有用户会话的共享后端,则只要您的用户会话仍然有效,应该无论到达哪个后端服务器都无关紧要。
此外,考虑在具有多个AJAX请求的事务中的服务器故障。 那时,NetScaler还会将下一个请求引导到以下可用的后端服务器。
接下来,考虑多个AJAX调用正在发送的场景。 如果您的网页是由相同的后端服务器提供的,客户端将已经有一个可用的cookie。 (AJAX调用不会触发,直到调用它们的HTML / JS代码被加载到浏览器中,这意味着已经有响应并且cookie已经被设置)。
我不确定这是否完全回答你的第二个问题?