jfinal-session共享的问题

这个项目中用了太多的session,项做集群部署,但不知从何处下手?

评论区

JFinal

2017-12-19 21:07

将 session 存放在一个共用的中心式缓存中就可以,例如用 reids

如果并发不大的话存放在数据库中也可以,本站就是存放在数据库的

我要做菜鸟

2017-12-21 09:23

@JFinal 可以搞一搞类似于spring session的东西,我觉得很多人主要卡在怎么用自己的方式接管session上面。当然你club的处理方式也可以,但对原来基于httpsession的项目改动还是不小的

JFinal

2017-12-21 12:31

@我要做菜鸟 这个我考虑后续做到 jfinal demo 中去,session 的事情还是在业务层面处理比较好,毕竟无法阻止用户去使用底层最基本的 session 对象

JJfinal

2017-12-23 23:49

@JFinal @JFinal 存数据库的方式是不是 用户登录了创建session,在监听中写入数据库,一直到session销毁再到库中删除这条登录信息?是这个思路吗?最近我们也在考虑这个应该怎么做更合适

我要做菜鸟

2018-01-25 11:18

@JFinal 一般都是用的上层的接口,spring session的处理方式可以把原来的session接管,这种接管是开发无感知的,对于原来的代码不需要做任何修改。

JFinal

2018-01-25 13:13

@我要做菜鸟 jfinal 也有很多办法来接管 session,例如,在 handler 或拦截器中接管 session 的实现,还可以通过在 BaseController 中接管 setSessionAttr(...) getSessionattr getSession() 这些方法来接管

我要做菜鸟

2018-01-25 18:32

@JJfinal 这个其实就是登陆后把登陆信息放到数据库,set cookie,在来个拦截器,读cookie,恢复登录信息,更新库session的超时。登出删库。在来个定时任务,超时删库。

我要做菜鸟

2018-01-25 18:36

@JFinal 嗯嗯,也可以。接管的位置不一样而已,spring session的设计在容器中接管,使用范围更大,非jfinal的也可以用,handler的设计也可以,只是只能在jfinal中使用。为了更好的推广jf,我觉得搞一个在容器中使用,替换spring session,更优雅、更方便、更简洁的jfinal-session会更好些。O(∩_∩)O哈哈~

JJfinal

2018-01-31 18:57

@我要做菜鸟 理解了,谢谢你

热门反馈

扫码入社