我是应用程序开发方面的新手。我目前正在开发一个应用程序,我想知道您对我作为新手所面临的一个问题的有价值的投入。
当涉及到缓存时,我应该在缓存中添加应用程序的哪些部分?让我举一个例子来说明我在做什么:
我正在为我的用户开发一个图片共享应用程序,我已经创建了一个缓存机制来缓存每个用户的数据、他的相册和他的照片。我目前每个页面有一个查询(仅在没有存储在缓存中的情况下),例如:
if ( !$ItemNotInCache )
{
$MyData = $DB->Query('blah');
Cache::CacheIt($MyData);
}这是关于我得到的每一个结果,我试着不要每次用户请求一个页面时调用太多的查询,这是有效的吗?问题是,正如你所理解的,我必须构建这个庞大的机制来操作数组中的所有这些数据,等等。
我的一位朋友告诉我,我不应该滥用缓存,因为我的数据是动态的,而且它会经常发生变化,他还告诉我,这就是MySQL的目的。我的问题是我应该以那种方式使用缓存还是不使用缓存?正如您所理解的,数据是动态的,应该经常刷新。这是有效的,还是我应该继续使用MySQL查询?
发布于 2013-08-04 21:08:22
我认为你所做的一切都很好。在几乎所有情况下,从缓存检索资源都要比每次执行查询少。
但是,我不会尝试“合并”添加的图像,只需再次调用数据库。当相册修改时,只需增加缓存即可。我不认为在修改专辑时编辑缓存是正确的方法。数据库善于存储和构建数据,因此很容易检索。为什么大楼是你自己的?
https://stackoverflow.com/questions/18047489
复制相似问题