合理地利用应用层cache机制

  对于web应用,活跃数据的数量总不会特别大,有些活跃的数据更是很少变化。对于这类数据,是否有必要每次都到数据库中去查询吗?如果能够将变化相对较少的部分活跃数据通过应用层
的cache机制缓存至内存中,(www.phpcq.com)对性能的提升肯定是成数量级的,而且由于是活跃数据,对系统整体性能的影响也会很大。
  当然,通过cache机制成功的案例数不胜数,但是失败的案例同样并不少见。如何合理的通过cache技术让系统性能得到较大的提升也不是通过寥寥几笔就能说清楚的,下面就举几个简单案例--什么样的数据适合通过cache技术来提高系统性能。

 1、系统各种配置及规则数据
 由于这些配置信息变动的频率非常低,访问概率有很高,所以非常适合使用cache。

 2、活跃用户的基本信息数据
 虽然我们经常会听到某某网站的用户量达到成百上千万,但是系统的活跃用户量很少能够达到这个数量级。也很少有用户每天没事干去将自己的基本信息改来改去。(www.phpcq.com)更为重要的一点是用户的基本信息在应用系统中的访问率极其频繁。所以用户基本信息的cache,很容易让整个应用系统的性能得到更高的提升。

 3、活跃用户的个性化定制信息数据
 虽然用户个性化定制的数据从访问率来看,可能并没有用户的基本信息那么频繁,但相当于系统的整体来说,也占了很大的比例,而且变更频率一样不会太多。(www.phpcq.com)从易趣的贝宝通过MYSQL的Memory存储引擎实现个性化定制数据的成功案例就能看出,对这部分信息进行cache的价值。虽然通过MYSQL的Memory存储引擎并不像传统意义层面的cache机制,但正是对cache技术的合理利用和扩充造就了项目整体的成功。
 
 4、准实时的统计信息数据
 所谓准实时的统计数据,实际上就是基于时间段的统计数据。这种数据不会实时更新,也很少须要增量更新,只有当重新构建该数据的时候才须要做一次全量更新操作。虽然这种数据即使通过数据库来读取效率也会比较高,但是执行效率很高之后,同样会消耗不少资源。既然数据库服务器的资源非常珍贵,我们为什么不能放在与应用相关的内存cache中呢。
 
 5、其它一些访问频繁但变更很少的数据
 在各种系统环境中肯定还会有各种各样的变更较少但是访问很频繁的数据。只要合适,实际项目上的需求,都可以将对他们的访问从数据库移动到cache中。

 

      
      

上一篇文章: www.phpdesigner.org 下一篇文章: 80后是最悲惨的一代

关于PHP博客

PHP blogger

博客-致力于分享PHP技术的开发心得, 记录站长生活的点点滴滴,PHP博客采用PHP 面向对象编程+Smarty模板引擎+Mysql数据库 开发(全站纯静态化与伪静态化)
QQ:334192009
电邮:admin@PHPdesigner.org

本站搜索

本站最新文章

博客最近档案

友情链接