国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

Yii緩存之片段緩存

2020-03-22 19:16:15
字體:
來源:轉載
供稿:網友
  • 我們網站在進行訪問的時候,有一些信息在相對一段時間之內是穩定,我們就把這樣的信息放入緩存里邊,這樣用戶每次來訪問就是訪問緩存的信息,對于大負載量的網站,可以明顯提高網站的性能。


    YII本身緩存類型:

    緩存分類:

    片段緩存 一個頁面劃分為幾個區域,這幾個區域相對比較獨立,設計緩存的時候,可以為每個區域獨立開發制作緩存

    頁面緩存 :對整個頁面進行緩存

    動態緩存

    數據緩存

    使用片段緩存步奏:

    1. 在程序里邊設置緩存

                            <form name="compareForm" action="compare.php" method="post" onsubmit="return compareGoods(this);">                            <div html' target='_blank'>class="clearfix goodsBox" style="border: medium none; padding: 11px 0pt 10px 5px;">                                <!--片段緩存 實現-->                                <?php                                /*if($this->beginCache('緩存名稱')){                                 * duration 設置過期時間                                 * varyByParam 緩存變化                                 * dependency 緩存依賴                                 */                                if($this->beginCache('goods',array(                                    'duration'=>3600,                                    'varyByParam' => array('page'),                                    'dependency' =>array(                                        'class'=>'system.caching.dependencies.CDbCacheDependency',                                        'sql'=>'select sum(goods_price) from {{goods}}',                                    )                                ))){                                ?>                                <?php                                foreach($goods_infos as $_v){                                ?>                                <div class="goodsItem">                                    <a href="./index.php?r=goods/detail&id=<?php echo $_v->goods_id ?>" target="_blank"><img src="<?php echo $_v->goods_big_img; ?>" alt="<?php echo $_v->goods_name ?>" class="goodsimg"></a><br />                                    <p><a href="#" title="諾基亞N85"><?php echo $_v->goods_name ?></a></p>                                    <font class="market_s">¥<?php echo $_v->goods_price ?>元</font><br />                                    <font class="shop_s">¥<?php echo $_v->goods_price ?>元</font><br />                                    <a href="#"><img src="<?php echo IMG_URL; ?>goumai.gif"></a>                                     <a href="#"><img src="<?php echo IMG_URL; ?>shoucang.gif"></a>                                </div>                                <?php                                }                                ?>                                <?php $this -> endCache();} ?>                                                                                            </div>                        </form>


    2. 在主配置文件main.php里邊配置緩存組件cache(在這個地方決定使用哪種緩存) 我們的緩存是文件緩存,緩存的信息在目錄runtime存放


    設置緩存文件的過期時間

    Duration ()

    我們為緩存文件設置過期時間,在沒有過期的時候系統都會使用緩存文件,如果已經過期,那么系統要重新生成緩存文件。

    緩存變化:

    我們的商品列表有實現片段緩存,那么在訪問其他其它頁碼信息的時候也是訪問這個緩存頁面,因為,每頁信息的路由都是一樣的(goods/category),那么系統會誤認為當前系統訪問的頁面是一個頁面。當時頁面的page參數是不一樣的。

    因此我們需要根據參數的變化生成不同的緩存文件。


    根據頁碼不同,生成不同緩存文件:

    鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

  • 發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 明溪县| 安达市| 盐亭县| 中江县| 柳林县| 灌南县| 扎兰屯市| 秦安县| 日照市| 阿拉善盟| 东台市| 威宁| 运城市| 新田县| 沁水县| 满城县| 扎兰屯市| 阿勒泰市| 大足县| 南通市| 荥经县| 漳平市| 河间市| 安平县| 东辽县| 琼结县| 周至县| 佛学| 承德市| 二手房| 望都县| 长武县| 五莲县| 通化市| 贵阳市| 义乌市| 南平市| 中西区| 揭阳市| 江北区| 灵武市|