婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 網(wǎng)站建設(shè) > 建站知識(shí) > 織夢(mèng)DedeCMS的問答模塊ask緩存機(jī)制詳解

織夢(mèng)DedeCMS的問答模塊ask緩存機(jī)制詳解

POST TIME:2021-05-25 01:59

  織夢(mèng)DedeCMS在國內(nèi)算是比較流行的開源cms,大多數(shù)個(gè)人網(wǎng)站及企業(yè)網(wǎng)站都選用了織夢(mèng)DedeCMS,諸多用戶對(duì)織夢(mèng)DedeCMS的緩存結(jié)構(gòu)卻并不是很了解,這里我就對(duì)織夢(mèng)DedeCMS的緩存機(jī)制進(jìn)行一下講解。

  織夢(mèng)DedeCMS其緩存文件放在data目錄下的cache、tplcache、sessions文件中,詳細(xì)了解的話,我推薦:增強(qiáng)織夢(mèng)DedeCMS“更新系統(tǒng)緩存”清理沉余緩存的功能 http://www.gxchina.com/edu/11185.html

在本節(jié)中,我主要以ask問答模塊為例來看看其緩存的使用。

1.最先調(diào)用ask/index.php,緩存通過調(diào)用語句
  require_once(DEDEASK.'/data/common.inc.php');
  實(shí)現(xiàn);

2.ask/data目錄下的文件為生成緩存的主要文件,在ask/data/common.inc.php中調(diào)用了
  //載入分類
  require_onceDEDEASK.'/data/asktype.inc.php';
  //載入積分排行
  require_onceDEDEASK.'/data/scores.inc.php';
  這兩個(gè)文件就是生成對(duì)應(yīng)緩存文件和讀取緩存數(shù)據(jù)的關(guān)鍵所在。

3.(1)前臺(tái)ask/data/asktype.inc.php先判斷ask/data/cache/asktype.inc文件是否存在,如果存在則直接讀取該緩存文件的數(shù)據(jù)放在$asktypes中,否則從數(shù)據(jù)庫中讀取數(shù)據(jù)放在$asktypes中并寫入對(duì)應(yīng)緩存文件中。
  (2)后臺(tái)admin可以在模塊/問答管理/欄目管理增加分類并提交后會(huì)更新緩存,實(shí)現(xiàn)代碼為ask/controller/admin/asktype.php中的
  //更新欄目緩存
  functionupdatecache()
  {
    $asktypes=$this->type->get_alltype();
    $path=DEDEASK."/data/cache/asktype.inc";
    $row=serialize($asktypes);
    $configstr="<"."?php $asktypes='".$row."';";
    file_put_contents($path,$configstr);
  }
  通過$this->updatecache();
  更新了對(duì)應(yīng)的緩存文件。

4.ask/data/scores.inc.php是通過時(shí)間來控制積分的緩存數(shù)據(jù),如果超過了緩存時(shí)間則從數(shù)據(jù)庫讀取數(shù)據(jù),否則文件存在則讀取文件緩存數(shù)據(jù),文件不存在則為空;
  生成或更新緩存文件的時(shí)間也放在文件中緩存。
  注意transport()函數(shù)中的
  $path=$cfg_basehost.'/'.APPNAME."/?ct=index&ac=scores";
  對(duì)應(yīng)的文件是ask/controller/index.php中動(dòng)作
  //更新總積分排行
  functionac_scores()
  {
    $memberlists=$this->scores->get_scores();
    if(count($memberlists)>0)
    {
      $row=serialize($memberlists);
      $configstr="<"."?php $memberlists='".$row."';";
      file_put_contents(DEDEASK.'/data/cache/scores.inc',$configstr);
    }
  }

織夢(mèng)DedeCMS的問答模塊ask緩存機(jī)制詳解

總結(jié):后臺(tái)管理生成的數(shù)據(jù)據(jù)我所見都會(huì)被緩存,開源實(shí)現(xiàn)的主要是文件緩存,一般也提供了memcache等緩存接口,實(shí)現(xiàn)的方式就各有不同!

 



收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
主站蜘蛛池模板: 普宁市| 合肥市| 濮阳县| 楚雄市| 东丰县| 惠东县| 津市市| 固安县| 隆化县| 福清市| 扶风县| 桑植县| 江津市| 来凤县| 滦平县| 赤峰市| 阿拉尔市| 安庆市| 开江县| 冀州市| 铜鼓县| 仲巴县| 海口市| 夏津县| 牟定县| 宣城市| 伊宁市| 宕昌县| 古交市| 无为县| 合水县| 高阳县| 临夏县| 平潭县| 阿图什市| 闽侯县| 永登县| 长沙县| 临汾市| 秦安县| 博爱县|