处理缓存动态数据

AKo*_*Kor 2 php caching

我正在使用一种名为Quickcache for PHP的东西来提供网页的整页缓存.它工作得很好,但我唯一的问题是我有一个动态网站,并且某些东西在启用缓存时不会更新我想要的方式.

例如,如果用户登录,登录框仍将显示,即使用户已登录到服务器(我可以访问该网站的未缓存部分,它将显示用户登录完全正常).同样适用于更改用户设置等.

每次用户登录或更改微小的设置时,我也无法转储缓存,这是过度的.

好像我无法缓存,因为它使网站无法使用,我不缓存该网站将在任何明显的负载下无法使用.

我该如何解决这个问题?我对一般的缓存很新 - 我第一次推出我的一个网站进行制作.当然其他人已经解决了这个问题.

Dav*_*ise 6

我不是一个php人,但我可以告诉你有关缓存的信息.

为每个用户生成内容的动态网站是最有效的,但是,它可以完成.它需要您查看数据在应用程序中的流动方式,以确定缓存的方式,位置和内容.以下是一些指导原则:

  • 每个用户或每页不会更改的数据 - 在应用程序内存中缓存并抓取它而不是转到数据库.
  • 每个用户而不是每页更改的数据 - 用户会话中的缓存
  • 每页更改但不是每个用户更改的数据 - 使用页面名称作为密钥在应用程序内存中缓存
  • 每页每用户更改的数据 - 以页面名称为密钥的会话缓存
  • 每页请求唯一的数据 - 不缓存.

不仅数据库中的数据是缓存的候选者.如果您有一个操作数据的复杂逻辑块,请考虑缓存该逻辑的输出.