代码之家  ›  专栏  ›  技术社区  ›  DEfusion

ColdFusion会话未超时

  •  2
  • DEfusion  · 技术社区  · 15 年前

    我们有两个核心应用程序在CF 8上的服务器上运行,并且在应用程序CFC中设置了完全相同的会话超时(目前为2小时)。然而,我们看到其中一个应用程序(目前在一台服务器上有120000多个)的会话正在失控,我们称之为AppA,而AppB似乎很好(AppB是我们期望更多流量的应用程序)。

    所以我做了一些进一步的挖掘,发现AppA的大部分会话已经闲置了很多小时,到目前为止,我看到的最高值超过了11个小时。

    我们实际上并没有在会话中做那么多,所以我有点困惑,为什么它们没有按预期的那样超时。而且我已经扔掉了 this 应用程序CFC中的范围,它显示sessionTimeout的预期值。

    3 回复  |  直到 12 年前
        1
  •  1
  •   Dave Quested    15 年前

    就螺旋而言,我认为这与一些不通过CFID/CFTOKEN来维护会话的请求有关。这可能是web服务调用、CFHTTP请求、搜索引擎机器人等。听起来您的某个应用程序正在经历这种情况。如果是这种情况,那么对于CFHTTP,通过传递CFID/CFTOKEN来维护会话。Web服务有点棘手,您需要创建一个“密钥”,它来回传递,整个主题都是独立的!可以通过使用一些条件来设置会话超时值来处理bot。

    在这11个小时里,我认为这是因为它被某种东西保存了下来。连续投票?重新提交AJAX请求?它必须是继续传递ID/令牌的东西。

        2
  •  0
  •   SpliFF    15 年前

        3
  •  0
  •   DEfusion    15 年前

    事实证明,会话是从另一个应用程序启动的,该应用程序没有超过base Application.cfc(包括应用程序名称)中的默认值。