午夜视频免费看_日韩三级电影网站_国产精品久久一级_亚洲一级在线播放_人妻体内射精一区二区三区_91夜夜揉人人捏人人添红杏_91福利在线导航_国产又粗又猛又黄又爽无遮挡_欧美日韩一区在线播放_中文字幕一区二区三区四区不卡 _日日夜夜精品视频免费观看_欧美韩日一区二区三区

主頁(yè) > 知識(shí)庫(kù) > PHP之深入學(xué)習(xí)Yii2緩存Cache組件詳細(xì)講解

PHP之深入學(xué)習(xí)Yii2緩存Cache組件詳細(xì)講解

熱門標(biāo)簽:天津電銷外呼系統(tǒng)違法嗎 上海400客服電話怎么申請(qǐng) 手機(jī)外呼系統(tǒng)什么原理 400電話個(gè)人能不能辦理 滄州電銷外呼系統(tǒng)價(jià)格 合肥ai電銷機(jī)器人費(fèi)用 溫州外呼系統(tǒng)招商 凱立德地鐵站地圖標(biāo)注 銀行信貸電話機(jī)器人

什么是緩存組件Cache

緩存是提升 Web 應(yīng)用性能簡(jiǎn)便有效的方式。 通過(guò)將相對(duì)靜態(tài)的數(shù)據(jù)存儲(chǔ)到緩存并在收到請(qǐng)求時(shí)取回緩存, 應(yīng)用程序便節(jié)省了每次重新生成這些數(shù)據(jù)所需的時(shí)間。

定義緩存組件

Yii2的緩存是通過(guò)組件Component實(shí)現(xiàn)的,在項(xiàng)目的配置文件中,配置components->cache實(shí)現(xiàn)對(duì)緩存組件的定義。

項(xiàng)目配置文件的路徑為config/web.php。

頁(yè)面緩存PageCache

作為網(wǎng)站來(lái)講,Yii2的頁(yè)面緩存非常便捷地將已經(jīng)渲染完全的網(wǎng)頁(yè)結(jié)果保存起來(lái),并在一個(gè)緩存周期內(nèi)不需要再次處理頁(yè)面內(nèi)部的控制器動(dòng)作邏輯。

配置頁(yè)面緩存

頁(yè)面緩存的配置方式為,在控制器層Controller中配置行為behaviors,通過(guò)調(diào)用過(guò)濾器filters的方式,在進(jìn)入具體頁(yè)面路徑action的之前,對(duì)當(dāng)前key進(jìn)行計(jì)算,并判斷緩存是否啟用enabled緩存有效期duration。

基礎(chǔ)配置代碼如下所示

        return [
            'pageCache' => [
                'class' => 'yii\filters\PageCache',
                'only' => ['index'],
                'variations' => [
                    '/',
                    Yii::$app->request->isAjax,
                ],
                'enabled'=>true,
                'duration' => Yii::$app->params['pageCacheDuration'],
            ],
        ];

過(guò)濾器是Yii2中的一個(gè)概念,他可以在控制器初始化的時(shí)候加載并執(zhí)行,我們可以用這個(gè)特點(diǎn)去做一些對(duì)控制器的數(shù)據(jù)的限制,比如控制緩存、用戶權(quán)限控制。

這里我們將行為名稱定義為pageCache,顯然名字不重要,因?yàn)橛械陌咐?,因?yàn)椴煌捻?yè)面緩存規(guī)則不一樣,我會(huì)定義兩個(gè)頁(yè)面緩存的行為。

其中only為過(guò)濾器調(diào)用action的參數(shù),用于限制哪些路徑是啟用action的。

頁(yè)面緩存PageCache是緩存組件Cache的一種應(yīng)用

頁(yè)面緩存的根本邏輯為

  1. 配置緩存組件的實(shí)現(xiàn)比如文件緩存yii\caching\FileCache
  2. 頁(yè)面緩存封裝一層Cache組件,再去調(diào)用存取邏輯

我們可以通過(guò)查看頁(yè)面緩存源碼vendor/yiisoft/yii2/filters/PageCache.php,我們可以在文件的第162行發(fā)現(xiàn),這里調(diào)用的cache,就是對(duì)于緩存的實(shí)現(xiàn)。

$this->cache = Instance::ensure($this->cache, 'yii\caching\CacheInterface');

自定義頁(yè)面緩存過(guò)濾器

為什么我們需要自定義緩存組件呢,我歸納原因存在以下幾種

  • 緩存判斷邏輯過(guò)于簡(jiǎn)單或復(fù)雜,不如自己重寫痛快地多
  • 緩存key生成方式不滿足業(yè)務(wù)需求

那么如何自定義呢?我個(gè)人推薦最簡(jiǎn)單粗暴的方式,繼承。

use yii\filters\PageCache;

class PageCacheCtInfo extends PageCache
{
	這里是內(nèi)部邏輯,不需要重寫的方法可以不寫。
	public $checkUser = true; //可以自定義變量
}

調(diào)用方式也是跟默認(rèn)的頁(yè)面緩存一樣,只要換上對(duì)應(yīng)的類即可。

            'pageCacheInfo' => [
                'class' => 'common\components\PageCacheCtInfo',
                'only' => ['info'],
                'enabled'=>Yii::$app->params['pageCacheEnabled'],
                'variations' => [
                    'ct/'.Yii::$app->request->pathInfo,
                    Yii::$app->request->isAjax
                ],
                'duration' => Yii::$app->params['pageCacheInfo'],
                'checkUser' = false,
            ],

頁(yè)面緩存key的計(jì)算

根據(jù)上一個(gè)步驟,我們可以重寫計(jì)算key的方式,那么之前的key計(jì)算方式是什么樣的呢?

文件位置vendor/yiisoft/yii2/filters/PageCache.php。

    /**
     * @return array the key used to cache response properties.
     * @since 2.0.3
     */
    protected function calculateCacheKey()
    {
        $key = [__CLASS__];
        if ($this->varyByRoute) {
            $key[] = Yii::$app->requestedRoute;
        }
        return array_merge($key, (array)$this->variations);
    }

這里的緩存key是一個(gè)數(shù)組,數(shù)組內(nèi)的元素依次是

  • 當(dāng)前類名
  • varyByRoute 一般為true
  • variations 驗(yàn)證,這個(gè)也是配置中獲取的,根據(jù)上面的配置,則是頁(yè)面路徑和是否為ajax

如果是項(xiàng)目的首頁(yè),緩存的key則為

['yii\filters\PageCache','','/‘,0]

如果是個(gè)詳情頁(yè)面,key為

['yii\filters\PageCach', 'xxx/info','xxx/xxx/3xxxx74.html',0 ]

那么,這個(gè)key到底有什么用,為什么要單獨(dú)拿出來(lái)說(shuō)呢?

因?yàn)槲覀冃枰獑为?dú)刪除某個(gè)頁(yè)面緩存。

主動(dòng)清理過(guò)期緩存

根據(jù)源碼vendor/yiisoft/yii2/caching/FileCache.php

    /**
     * Stores a value identified by a key in cache.
     * This is the implementation of the method declared in the parent class.
     *
     * @param string $key the key identifying the value to be cached
     * @param string $value the value to be cached. Other types (If you have disabled [[serializer]]) unable to get is
     * correct in [[getValue()]].
     * @param int $duration the number of seconds in which the cached value will expire. 0 means never expire.
     * @return bool true if the value is successfully stored into cache, false otherwise
     */
    protected function setValue($key, $value, $duration)
    {
        $this->gc();
        $cacheFile = $this->getCacheFile($key);
        if ($this->directoryLevel > 0) {
            @FileHelper::createDirectory(dirname($cacheFile), $this->dirMode, true);
        }
        // If ownership differs the touch call will fail, so we try to
        // rebuild the file from scratch by deleting it first
        // https://github.com/yiisoft/yii2/pull/16120
        if (is_file($cacheFile)  function_exists('posix_geteuid')  fileowner($cacheFile) !== posix_geteuid()) {
            @unlink($cacheFile);
        }
        if (@file_put_contents($cacheFile, $value, LOCK_EX) !== false) {
            if ($this->fileMode !== null) {
                @chmod($cacheFile, $this->fileMode);
            }
            if ($duration = 0) {
                $duration = 31536000; // 1 year
            }

            return @touch($cacheFile, $duration + time());
        }

        $error = error_get_last();
        Yii::warning("Unable to write cache file '{$cacheFile}': {$error['message']}", __METHOD__);
        return false;
    }

在設(shè)置緩存之前會(huì)主動(dòng)調(diào)用清理緩存的方法gc()

    /**
     * Removes expired cache files.
     * @param bool $force whether to enforce the garbage collection regardless of [[gcProbability]].
     * Defaults to false, meaning the actual deletion happens with the probability as specified by [[gcProbability]].
     * @param bool $expiredOnly whether to removed expired cache files only.
     * If false, all cache files under [[cachePath]] will be removed.
     */
    public function gc($force = false, $expiredOnly = true)
    {
        if ($force || mt_rand(0, 1000000)  $this->gcProbability) {
            $this->gcRecursive($this->cachePath, $expiredOnly);
        }
    }

這里問(wèn)題就出現(xiàn)了,$gcProbability的默認(rèn)值是10,也就是說(shuō),只有0.001%的概率會(huì)在設(shè)置緩存的同時(shí)清理過(guò)期緩存。

這不就跟沒(méi)有一樣!

所以對(duì)于緩存來(lái)說(shuō),需要我們主動(dòng)定期清理過(guò)期緩存,不然對(duì)應(yīng)的存儲(chǔ)空間就會(huì)被占滿。

Yii::$app->cache->gc(true);

優(yōu)化緩存配置

組件的cache在項(xiàng)目的配置文件中定義

'components' => ['cache' => [
    'class' => 'yii\caching\FileCache',
],],

這里的自由度就出現(xiàn)了,現(xiàn)在這個(gè)配置,是文件緩存,也就是不管是數(shù)據(jù)緩存還是頁(yè)面緩存,都是保存在文件里的

根據(jù)源碼 public $cachePath = '@runtime/cache';

緩存的文件是放在runtime/cache文件夾的

那么問(wèn)題就出現(xiàn)了,磁盤的性能是有瓶頸的,文件讀寫會(huì)影響緩存性能。

目前可選的緩存有

  • yii\caching\ApcCache,APC擴(kuò)展
  • yii\caching\DbCache,數(shù)據(jù)庫(kù)緩存
  • yii\caching\DummyCache,假的緩存,就是現(xiàn)在沒(méi)條件上緩存先把坑占上
  • yii\caching\FileCache,文件緩存
  • yii\caching\MemCache,使用 PHP memcache 和 memcached 擴(kuò)展
  • yii\redis\Cache,redis
  • yii\caching\WinCache,使用 PHP WinCache 擴(kuò)展
  • yii\caching\XCache,使用 PHP XCache擴(kuò)展
  • yii\caching\ZendDataCache,使用Zend Data Cache

總結(jié)

我在本文中,通過(guò)漸進(jìn)的方式,講了如何使用Yii2的緩存組件,對(duì)于一般的使用者來(lái)講,已經(jīng)涵蓋了超過(guò)九成的坑。

如果你正在學(xué)習(xí)PHP,希望你收藏這篇文章,這會(huì)對(duì)你以后有所幫助。

到此這篇關(guān)于PHP之深入學(xué)習(xí)Yii2緩存Cache組件詳細(xì)講解的文章就介紹到這了,更多相關(guān)PHP之深入學(xué)習(xí)Yii2緩存Cache組件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Android基于SoftReference緩存圖片的方法
  • Java jvm中Code Cache案例詳解
  • Java reservedcodecachesize虛擬機(jī)參數(shù)案例詳解
  • 解析springboot整合谷歌開(kāi)源緩存框架Guava Cache原理
  • 解決@Cacheable在同一個(gè)類中方法調(diào)用不起作用的問(wèn)題
  • java中Memcached的使用實(shí)例(包括與Spring整合)
  • PHP解決高并發(fā)問(wèn)題(opcache)
  • Java SoftReference類案例詳解

標(biāo)簽:溫州 白城 酒泉 金華 七臺(tái)河 赤峰 洛陽(yáng) 怒江

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP之深入學(xué)習(xí)Yii2緩存Cache組件詳細(xì)講解》,本文關(guān)鍵詞  PHP,之,深入,學(xué)習(xí),Yii2,緩存,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP之深入學(xué)習(xí)Yii2緩存Cache組件詳細(xì)講解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于PHP之深入學(xué)習(xí)Yii2緩存Cache組件詳細(xì)講解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产91免费看片| aaa人片在线| 欧美丝袜第一区| 97久久国产亚洲精品超碰热| 国产麻豆精品theporn| 国产精品盗摄久久久| 欧美一区二区三区久久久| 色偷偷亚洲男人天堂| 日韩一区二区三区四区在线| 日韩欧美国产午夜精品| 懂色av粉嫩av蜜乳av| 欧美一区二区三区喷汁尤物| 无码国产精品久久一区免费| 最新国产精品久久精品| 国产玉足脚交久久欧美| 欧美高清在线视频| 鲁一鲁一鲁一鲁一澡| 亚洲一区二区3| 免费成人午夜视频| 欧美日韩国产页| 一区二区三区四区影院| 欧美一区二区不卡视频| 国产黄a三级三级| 日韩女优毛片在线| 精品人妻在线播放| 午夜精品福利视频| www.xxxx国产| 国产欧美日韩亚洲| 国产白丝网站精品污在线入口| 欧美一区二区三区在线观看 | 国产美女精品视频| 午夜18视频在线观看| 青娱乐一区二区| 国产精品不卡在线观看| 老熟妇仑乱视频一区二区| 欧美视频中文在线看| 黄页网站在线看| av在线这里只有精品| 成人小视频在线看| 91成人免费在线| 久久久久性色av无码一区二区| 97av在线影院| 成人性生交大片免费看中文| 男女视频一区二区三区| 日韩欧美国产1| 中文字幕免费高清在线观看| 国产成人av在线播放| 成人免费观看av| 日本手机在线视频| 在线视频一区二区三区| 国产又黄又爽又色| 国产精品丝袜一区二区三区| 久久久综合激的五月天| 91九色蝌蚪porny| 亚洲免费高清视频| 亚洲人在线观看视频| 亚洲 高清 成人 动漫| 亚洲国内精品视频| 亚洲精品一区二区口爆| av片在线免费| 精品国产在天天线2019| 国产肥老妇视频| av影院在线播放| 日韩精品中文字幕在线| 日韩av电影天堂| 国产无遮挡猛进猛出免费软件| 精品国产一区二区在线| 国产在线精品免费av| 亚洲精品鲁一鲁一区二区三区 | 国产精品美女久久| 国产精品丝袜一区| 亚洲熟女少妇一区二区| 97人人澡人人爽| 欧美午夜视频一区二区| 国产成人精品777777| 亚洲国产精品久久久久婷婷老年| 欧美哺乳videos| 黑人巨大精品欧美一区| 韩国无码一区二区三区精品| 91沈先生播放一区二区| 欧美最猛性xxxxx直播| 国产又粗又猛视频| 黄大色黄女片18第一次| 久久久久久久亚洲精品| 国产精品天天看| 香蕉免费毛片视频| 日韩精品极品视频在线观看免费| 亚洲成在人线av| 国产suv精品一区二区883| 欧美爱爱免费视频| 欧美另类videosbestsex日本| 亚洲一区www| 久久综合资源网| 在线免费一级片| 亚洲日本黄色片| 99国产高清| 69久久夜色精品国产69蝌蚪网| 国产毛片在线视频| 少妇被狂c下部羞羞漫画| 久久久久久国产精品mv| 亚洲美女动态图120秒| av不卡免费电影| 无码久久精品国产亚洲av影片| 97超碰国产精品| 国产精品视频午夜| 欧美精品一区二区久久婷婷| 国产一区二区久久| 亚洲激情视频一区| av免费网站观看| 成人影片在线播放| 亚洲国产又黄又爽女人高潮的| 成人免费毛片a| 亚洲综合欧美在线| 九色一区二区| 96精品视频在线| 亚洲国产精品女人久久久| 国产亚洲精品7777| 久久狠狠婷婷| 中文字幕av资源一区| 亚洲桃色在线一区| 亚洲欧洲一区二区三区| 成人欧美一区二区三区在线播放| 亚洲一区二区三区中文字幕在线| 亚洲日本在线观看| 精品日韩美女的视频高清| 色乱码一区二区三区88| 在线精品视频小说1| 亚洲免费在线观看| 在线亚洲高清视频| 欧美日韩免费观看一区二区三区| 亚洲国产精品成人va在线观看| 日韩电影中文字幕在线| 亚洲精品v天堂中文字幕| 亚洲第一精品电影| 欧美精品在线观看91| 这里精品视频免费| 97久久精品人人爽人人爽蜜臀| 国产主播一区二区三区| 男女羞羞免费视频| 人妻 日韩 欧美 综合 制服| 国产三级三级三级看三级| 成人免费看黄网站| 国产suv精品一区二区| 欧美另类高清videos| 91精品黄色片免费大全| 91精品福利视频| 亚洲成av人**亚洲成av**| 国产精品素人一区二区| 久久免费黄色| 国产精品女人久久久| 97精品在线播放| 欧美日韩生活片| 污软件在线观看| 日本一级片免费| 国产suv一区二区三区| 91无套直看片红桃在线观看| youjizz亚洲女人| 你懂得视频在线观看| 中文字幕无码日韩专区免费| 久久免费小视频| 波多野结衣喷潮| 人妻在线日韩免费视频| 国产sm调教视频| 欧美久久久久久久久久久久| 日韩欧美亚洲一区二区三区| 91av在线免费视频| 国产人妖在线播放| 日韩精品电影在线观看| 蜜臀av一级做a爰片久久| 午夜成人免费影院| 蜜臀av免费在线观看| 国产综合久久久久久鬼色| 日韩国产欧美在线播放| 成a人片国产精品| 久久精品免费在线观看| 国产午夜精品久久久久久免费视| 波多野结衣视频一区| 国产区在线观看成人精品| 国产亚洲精品bt天堂精选| 中文字幕高清一区| 欧美优质美女网站| 亚洲乱码av中文一区二区| 最近2019中文字幕第三页视频 | 欧美日韩激情四射| 99999精品视频| xxx在线播放| 青青草手机在线观看| 啦啦啦免费高清视频在线观看| 亚洲精品一区二区三区区别| 波多野结衣一区二区三区| 国产精品国产三级国产aⅴ无密码| 亚洲欧洲另类国产综合| 欧美一区二区三区视频在线| 97精品久久久久中文字幕| 91video| 国内老熟妇对白xxxxhd| 免费观看成人鲁鲁鲁鲁鲁视频| 久久成人免费网站| 亚洲制服丝袜一区| 精品久久久久久久久久久院品网 | 欧美精品成人久久| 久久久久久久久久综合| 97成人超碰视| 日韩精品在线观看一区| 狼狼综合久久久久综合网| 久久一级免费视频| 亚洲日本一区二区三区| 国产91精品在线播放| 国产老熟女伦老熟妇露脸| www.久久精品| 国产精品综合久久久| 在线观看亚洲天堂| 国产视频一区在线| 欧美视频第三页| 一区二区久久久久| 日韩av新片网| 亚洲 欧美 激情 小说 另类| 欧美精品久久天天躁| 国产一区二区三区精彩视频| 久久久久久自在自线| 欧美成人福利视频| av在线播放天堂| 久久午夜激情| 911国产网站尤物在线观看| 亚洲欧美日韩中文字幕在线观看| 久久se这里有精品| 日韩成人xxxx| 不卡的在线视频| 成人丝袜高跟foot| 57pao精品| 日韩一区二区三区四区视频| 五月天激情综合| 国产一二三四五区| 97伦理在线四区| 欧美国产日韩a欧美在线观看| 人人妻人人澡人人爽| 国产精品久久久久久久久借妻| 91免费版在线| 97中文字幕在线观看| 欧美一级片免费看| 亚洲精品成人无码熟妇在线| 婷婷一区二区三区| 中文字幕一区二区久久人妻网站| 国产精品福利小视频| 国产久一一精品| 神宫寺奈绪一区二区三区| 久操手机在线视频| 亚洲国产精品成人av| 内射一区二区三区| 美女撒尿一区二区三区| 精品一二线国产| 国产精品久久久久久av福利软件 | 在线观看欧美成人| 亚洲最大成人在线视频| 男女激情免费视频| 日韩在线视频免费观看高清中文| 久久综合成人精品亚洲另类欧美| 91精品国产自产| 91精品视频免费观看| 中文字幕一区在线| 国产又粗又猛大又黄又爽| 日韩福利在线播放| 日本老熟俱乐部h0930| 成人欧美一区二区三区在线| 国产成人精品亚洲777人妖| 性欧美videossex精品| 中文字幕一区二区三区在线观看| 国产综合中文字幕| 成人欧美一区二区三区白人| 中文字幕亚洲精品一区| 日本精品一区二区三区视频| 国产成人啪午夜精品网站男同| 日韩五码在线观看| 欧美一区二区在线视频| 高潮毛片又色又爽免费 | 欧美人与性囗牲恔配| 日韩中文字幕麻豆| 亚洲摸摸操操av| 日本护士做爰视频| 这里只有精品在线播放| 污污视频在线免费看| 精品成在人线av无码免费看| 欧美日韩精品在线观看| 日韩欧美综合视频| 日韩中文字幕久久| 久久久久国产精品一区三寸| 亚洲成人午夜在线| 欧美一区二区三区四区久久| 热久久免费视频| 日韩精品电影一区二区三区| 欧美理论电影在线观看| 国产精品自拍在线| 黑人性生活视频| 97国产suv精品一区二区62| 成人自拍小视频| 欧美中日韩免费视频| 日韩av在线播放资源| 日日夜夜精品视频天天综合网| 精品国产免费久久久久久尖叫| 亚洲欧美激情一区| 亚洲国产精品嫩草影院| 国产在线不卡一区| 久久久国产高清| 99色精品视频| 国产精品久久久久久久久久ktv| 中文字幕一区二区三区精华液| a v视频在线观看| 无码免费一区二区三区免费播放| 在线成人小视频| 亚洲精品国产精| 久久久久久久久久久久久国产精品| 久久国产精品网站| 日韩国产成人精品| 国内外免费激情视频| 精品久久国产字幕高潮| 不卡一卡二卡三乱码免费网站| 97视频免费在线| 最近日本中文字幕| 欧美成人精品xxx| 成人少妇影院yyyy| 久久久91视频| 在线免费观看成人网| 亚洲欧美日韩久久精品| 久久久久亚洲AV| 在线一区亚洲| 欧美激情国产精品| 欧美日韩aaaaaa| 亚洲精品ww久久久久久p站| 男人操女人的视频在线观看欧美 | 日韩欧美精品一区二区三区经典 | 亚洲色图在线播放| 波多野结衣视频在线观看| 男女视频在线看| 久久久久国产一区二区三区| 亚洲一区二区欧美激情| 亚洲免费一级片| 亚洲最大免费视频| 日本一级淫片演员| 精品国产在天天线2019| 国产 欧美 精品| 国产一级免费大片| 国产日韩在线观看av| 欧美色图一区二区三区| 日韩成人一级大片| 丰满的亚洲女人毛茸茸| 亚洲一二三区精品| 中文字幕亚洲欧美日韩2019| 中文字幕一区二区不卡| 少妇一级淫片日本| 宅男噜噜噜66国产免费观看| 亚洲free嫩bbb| 国产亚洲精品久久久久久牛牛| 7777精品伊人久久久大香线蕉最新版 | 欧美黑人xxxx| 亚洲国产日韩欧美在线动漫| 欧美日韩国产综合草草| 国产精品传媒入口麻豆| 亚洲乱熟女一区二区| 在线丝袜欧美日韩制服| 亚洲人精品午夜在线观看| 亚洲一区二区欧美| 国产一区二区三区四区五区入口| 国产精品7777777| 欧美第一页浮力影院| 97伦理在线四区| 日韩毛片在线观看| 综合亚洲深深色噜噜狠狠网站| 久久久青草婷婷精品综合日韩| 性生交生活影碟片| 91精品国产乱码久久久久| 朝桐光av在线| 亚洲精品无码国产| 亚洲自拍偷拍在线| 456国产精品| 亚洲天堂网站在线观看视频| 国产精品久久久久久久久搜平片| 亚洲黄网在线观看| 成人免费视频国产免费观看| 免费日本黄色网址| 午夜一区二区三区| 亚洲一区二区三区四区中文| 成人福利免费观看| 97免费高清电视剧观看| 国产精品久久一区二区三区| 日韩黄色影视| 久久资源av| aa成人免费视频| 国产自产女人91一区在线观看| 91黄色8090| 亚洲国产91精品在线观看| 欧美精品三级在线观看| 成人动漫av在线| 国产激情视频一区二区在线观看 | 亚洲最大成人免费视频| 精品亚洲国产视频| 亚洲精品欧美二区三区中文字幕| 久久久亚洲精品石原莉奈| 国产欧美综合在线观看第十页| 天天操天天干天天爱| 久久久久成人片免费观看蜜芽| 国产精品理论在线| 97人妻精品一区二区三区免| 手机精品视频在线| 中国丰满人妻videoshd| 国产精品无av码在线观看| 色综合91久久精品中文字幕 | 亚洲精品午夜视频| 国产成人在线免费观看视频| 国产精品欧美激情在线| 久久99久国产精品黄毛片色诱|