我正在使用 Yii PHP 框架构建一个论坛网站。我还使用 Memcached 进行会话维护和存储一些数据对象。
对于每个用户请求,我必须获取一些用户信息来检查某些事情(检查他是否是特定组的成员以及其他检查)
所以我计划的两种方法是
1) 不要在会话中存储除用户 ID 之外的任何内容,并且在用户会话建立后从 memcached 获取对象并检查它 - 这里有一个用户对象和两次对 memcached 服务器的调用(一个是会话调用,另一个是获取用户目的)
2) 使用setState方法将所有需要的用户信息存储在会话中。成功登录后,用户从会话对象中获取信息并进行检查。这里有两个用户对象,一个在 memcached 中,一个在用户会话中(当然这又存储在 memcached 中)。但是我觉得当会话通过一个电话建立时,我们可以获得用户的所有必需详细信息(真的是这样吗?)
不知道什么是最好的方法。感谢您对此的帮助。