Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
有没有办法强制mysql缓存一个特定的查询,比如5分钟,所以即使底层数据库发生变化,执行该查询也总是返回相同的结果?
我正在运行一个约会网站,我有一个显示“最新匹配”的页面,它对数据库的影响太大了。
提前致谢。
MySQL 中的缓存并不是解决这个问题的好方法。
MySQL 自动缓存查询,直到表被更新。
对于您的问题,您需要在数据库前面使用缓存。然后您可以先检查缓存,如果您要查找的内容不在缓存中,请访问数据库并将其添加到缓存中。
Memcached是一个很好的解决方案,特别是如果您有超过 1 个 Web 服务器。
APC是另一个很好的解决方案,它也可以缓存您的 PHP 字节码,但它只是单台机器上的本地缓存。