DISCUZ X2.5数据表内存级缓存

来源:互联网 发布:多个数据横向转纵向 编辑:程序博客网 时间:2024/05/17 06:49

    缓存层的引入是为了解决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       )

原创粉丝点击