【问题标题】:google app engine session谷歌应用引擎会话
【发布时间】:2013-05-01 05:52:00
【问题描述】:
  1. 什么是java应用引擎,默认会话超时?
  2. 如果我们将会话超时设置为非常长的时间,是否会产生任何不良影响,因为谷歌应用引擎会话默认情况下只是存储在数据存储中? (就像facebook一样,每次去页面,session还是永远存在的)?

【问题讨论】:

    标签: java google-app-engine


    【解决方案1】:
    1. 默认会话超时设置为 30 分钟。 (您可以调用getMaxInactiveInterval 方法验证它)
    2. 由于有关您的应用的信息相当有限,我认为没有任何影响。
      使用setMaxInactiveInterval(-1) 表示会话永远不会超时。 请记住,您还需要覆盖 JSESSIONID cookie MaxAge 以防止在关闭浏览器时丢失 Session。

    【讨论】:

    • 这种情况会增加 appengine 中内存/资源的使用率吗?
    • 是的,因为您将在 _ah_SESSION 表上以许多无用的活动会话结束。
    • GAE 似乎不再遵守 req.getSession().setMaxInactiveInterval(x) 了。默认情况下,它将 memcache / 数据存储中的会话过期值设置为 1 天后。但是我找到了一种方法来改变这一点,将以下内容添加到 web.xml。 20160
    【解决方案2】:
    1. 我刚刚在我的 GAE webapp 上进行了测试,默认超时为 getMaxInactiveInterval()=86400 (s) = 24 hours = 1 day

    【讨论】:

      猜你喜欢
      • 2012-03-08
      • 2014-12-24
      • 1970-01-01
      • 2012-01-19
      • 2011-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多