Laravel 用户登录后的 session 问题?

一直好奇,为什么用户登陆后只在session中记录用户的id呢?为什么不将用户的其他信息保存进去呢,这样获取登陆的用户信息就不用每次去查表了,如果用户量很大会影响数据库吗?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1

你可以自己再存其他的信息到session

1、存储用户信息到session

- 优点:不用重复查询数据库
- 缺点:数据无法实时获取最新的,比如:后台封禁了用户A,那用户A在session未更新前可以继续使用系统。

2、每次都数据库查询

- 优点:实时获取最新数据
- 缺点:性能损耗

建议:两者结合使用,一定周期或敏感操作后重新更新session。具体看业务逻辑需要了。

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!