您现在的位置是:首页 > cms教程 > Discuz教程Discuz教程

Discuz的缓存体系

翠萱2025-07-14Discuz教程已有人查阅

导读1.session Dz的session只保存了登陆状态,不是我们理解的保存整个会话状态的概念我们通常意义上的缓存应该是对应到discuz的memory这一块,其他的三项可能是历史遗留问题,造成在使用时有较多的入口。

Discuz中涉及数据缓存的地方有:
1.session Dz的session只保存了登陆状态,不是我们理解的保存整个会话状态的概念
2.cache
3.syscache
4.memory
我们通常意义上的缓存应该是对应到discuz的memory这一块,其他的三项可能是历史遗留问题,造成在使用时有较多的入口。
先说session,Discuz的session是完全独立的,存放在数据库表 - common_session中,使用时需以$discuz->session->set('lastolupdate', TIMESTAMP);形式调用。表结构与一般缓存的key -> value形式很大不同。
cache应该是最早的缓存机制,概念上应该有基于db和file的两种缓存机制,db模式数据默认放在数据表 - common_cache中,他的操作方式在source/class/db/cache_sql中有所体现,配置项为
$_config['cache']['type'] = 'sql';
但没有在代码中看到使用的地方,应该是被废弃了。file模式存放在data/cache下面,同样的,cache_file这个机制也应该是被废弃了,直接放到了函数库中。
syscache 是专门针对系统各项设置包括插件的参数进行集中缓存处理的机制,数据默认先存在数据表 - common_syscache中,然后在使用时存入到file中进行加速。所以他是一项特定的东西,但3.0以下file的存放目录为data/cache,与cache的file模式存放的目录相同,比较容易让初入门者迷惑。
memory中引入的机制,他的定义应该是能真正提高系统性能的缓存机制,如memcached、redis这类nosql的存储引擎。
结论:
经过分析后,发现cache 与 memory应该可以合并起来,即在source/class/memory目录(3.0)中加上file/db两种driver,将原来cache目录下的两个文件复制过来,简单的修改一下即可,同时function_core中对应的方法也要进行相应修改。
涉及cache操作的方法在function_core.php 与function_cache.php两个文件中。
functin_core.php:loadcache、cachedata;这里加载的指的是syscache,3.0中直接完全使用db的方式存放在common_syscache表中,放弃以前还要同步生成file缓存的做法。合并file、db两者引擎到memory中后,memory()应该就是日常缓存用户数据的唯一入口了,3.0以上由Core提供了全局mem对象。
function_cache.php:updatecache、writetocache 同样指的是syscache,writetocache方法应该是一个残留的函数,它的作用是写入指定的缓存内容到file cache中。

本文标签:

很赞哦! ()

相关源码

  • (自适应)大气网络公司工作室个人作品展示网站模板免费下载基于PbootCMS内核开发的响应式网站模板,为网络技术服务类企业打造,具备高度可定制性。通过简洁现代的设计语言展现企业专业形象,后台数据实时同步机制确保多终端内容一致性,查看源码
  • (PC+WAP)红色驾校培训学车在线预约源码下载基于PbootCMS内核开发的驾校培训专用网站模板,深度适配驾驶培训行业展示需求。采用PC与移动端同步响应设计,单一后台统一管理内容数据,更换图文素材后可快速转变为其他行业网站。查看源码
  • 帝国cms7.5奇闻异事末解之谜模板免费下载带数据本模板基于帝国CMS7.5系统开发,为神秘现象、未解之谜类主题网站设计。包含完整的PC端、移动端及百度MIP站同步生成功能,内置火车头采集规则模块,可快速采集目标站内容资源。整体设计风格神秘大气,符合主题定位。查看源码
  • (自适应响应式)绿色环保防腐木材轻钢别墅建材pbootcms模板下载本模板为环保防腐木材、轻钢别墅建材类企业设计开发,基于PbootCMS内核构建,充分考虑了建材行业的展示需求与产品特点。模板设计风格自然环保,布局清晰合理,呈现建材产品特性与专业优势,帮助访客直观了解产品特点并建立信任感。查看源码
  • (自适应)大气壁挂炉暖气设备家用电器模板带加盟申请和下载资料为壁挂炉、暖气片等供暖设备企业设计的PbootCMS模板,通过响应式技术实现跨终端展示产品参数和技术细节。后台统一管理确保采暖系统数据、服务网点信息实时同步更新查看源码
  • (自适应响应式)pbootcms食品零食店日化用品网站源码下载基于PbootCMS内核开发的响应式模板,为食品零食、日化用品等行业量身定制。该模板通过可视化设计展现产品特色,帮助企业快速搭建专业官网查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐