grails - 在范围为='session'的 Controller 中Grails 3存储 session 数据?

标签 grails grails-controller

某种程度上,这似乎是个坏主意,但想知道当您在 Controller 中使用 session 作用域将 session 数据存储在 Controller 字段中时是否建议,例如,将其作为对用户数据的一种缓存,不必一直打数据库以获取特定用户经常请求的信息?

而且,顺便说一句,只是想知道在这种情况下服务器保留 Controller 实例的时间。如果有人将浏览器选项卡保持打开状态一周,而不使用它,那么该 session 的 Controller 实例是否会无限期地消耗服务器上的资源?

最佳答案

您可以使用类似的 Controller ,但是为什么不仅仅使用缓存呢?有很多非常好的缓存(例如Spring缓存),它们可能比这种方法更具扩展性。

session 管理(以及它们何时过期)由您的应用程序容器(例如Tomcat,JBoss,Websphere等)处理。在大多数情况下,如果不与服务器互动(例如,点击URL或页面),则默认情况下它们会在20分钟后失效。因此,一旦 session 过期, session 作用域 Controller 实例将成为清理和删除候选对象。

关于grails - 在范围为='session'的 Controller 中Grails 3存储 session 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40836860/

相关文章:

grails - 仅将文件上传到特定参数

grails - Grails结果集分页

grails - 安全grails spring安全 Controller

grails - 运行nohup时,无法将grails run-app的输出重定向到文件

validation - Grails 自定义验证消息不起作用?

grails - 像Grails过滤器中那样,Grails拦截器中是否存在某种依赖关系概念?

grails事务 Controller ,处理异常

grails - 在currencyInstance.properties = params之后未设置Grails currencyInstance.properties

grails在表单提交之前删除id参数

grails - 如何在Grails中注册自定义json解串器/解析器?