缓存层的引入是为了解决MYSQL自身对高并发处理的性能瓶颈,目前产品缓存层采用主流的Key-Value对形式,内存级的缓存产品很多,支持的内存优化接口有 Memcache、eAccelerator、Alternative PHP Cache(APC)、Xcache、Redis 五种,优化系统将会依据当前服务器环境依次选用接口,单服务器环境中推荐使用APC,多服务器环境中推荐使用Redis或Memcache。
数据层是以表为单位的类文件,所有表类都继承discuz_table基类,基类实现缓存操 作的相关函数;理论上所有的数据表均可以缓存,目前产品在六个压力大的数据表内置开启了缓存 机制:用户相关表、回帖、主题、主题和专辑关系、淘贴专辑、用户关注关系
如要开启其它表的内存级缓存,方法如下:
在表类文件如:table_common_member.php中__construct方法里添加 “缓存前缀”和“缓存时长”即可,如:
$this->_pre_cache_key = 'common_member_';//缓存前缀
$this->_cache_ttl = 0; //缓存时长。
( 此答案由张国盛给出: http://t.qq.com/bilicen )