[英]PHP & APC: One object in cache with multiple keys?
我正在使用APC在PHP应用程序中实现对象缓存。
问题是,有时我会根据不同的标准从数据库中选择某些内容。 例如,当用户登录网站时,我所拥有的只是他的用户名和密码,因此我将基于用户名从数据库中进行选择。
在其他情况下,我将拥有用户ID,并希望基于该ID进行选择。
每次选择用户时,我都想将对象添加到缓存中。
因此,假设我一次将其放入键“ User.user_id.123”,一次将其放入“ User.user_name.JoeSmith”。
但是,这确实意味着我已经将同一对象两次放入了缓存,对吗? 看来效率不高。
有没有一种方法可以使用多个密钥将一个对象放入APC缓存中以便以后查找?
您可以将用户ID放入缓存中,例如User.user_name.JoeSmith=123
。
但是我怀疑将这些值存储在缓存中的效率。 它肯定会在运行时加快速度,但是在开发过程中可能会导致一些问题(因为基本上将相同的值存储两次,一次存储在数据库中,一次存储在缓存中)。 我立刻想到了一些事情:
更新:这的确意味着将相同的对象两次放入缓存,这就是我最后要做的事情。 只需小心删除或更新对象时,使用所有可能的键将其从缓存中清空。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.