精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

阿里開源的多級緩存框架,非常不錯!

開發 前端
JetCache 就像 “江湖中的新秀”,憑借強大的功能和易用性,在緩存領域嶄露頭角。它不僅提升了系統性能,還降低了開發成本,讓程序員們從繁瑣的緩存管理中解脫出來。?

兄弟們,在互聯網的世界里,數據就像武俠小說里的 “秘籍”,誰能更快拿到手,誰就能在江湖中立足。想象一下,用戶點擊一個商品詳情頁,服務器要從數據庫里查數據,這就像在藏經閣里找一本武功秘籍,翻箱倒柜半天才能找到。要是每次都這么干,服務器不累癱才怪!這時候,緩存就像 “武功速成班”,把常用的數據先存起來,下次直接拿出來用,速度颼颼的!

但是,單級緩存就像 “獨臂大俠”,總有力不從心的時候。比如,Redis 雖然快,但網絡延遲還是有點高,而且流量一大,它就像被圍攻的大俠,招架不住。這時候,多級緩存就登場了,它就像 “組合技”,把本地緩存、分布式緩存、數據庫層層疊起來,讓數據訪問快到飛起!

阿里開源的JetCache,就是這個 “組合技” 的集大成者。它就像一把 “倚天屠龍刀”,在緩存江湖中掀起了一陣風暴。JetCache 支持本地緩存和分布式緩存的組合使用,還能自動刷新緩存、處理數據一致性問題,簡直就是程序員的 “神器”!

一、JetCache 的 “三板斧”

(一)多級緩存的 “千層餅”

JetCache 的多級緩存就像一個 “千層餅”,層層疊疊,各有分工。最上面一層是本地緩存,比如 Caffeine,它就像你家里的 “小冰箱”,放著你最常喝的飲料,伸手就能拿到。中間一層是分布式緩存,比如 Redis,它就像超市的 “大冰柜”,能放很多東西,但需要跑一趟超市才能拿到。最下面一層是數據庫,就像飲料的 “生產工廠”,實在找不到了,才去工廠里拿。

當你要取數據的時候,JetCache 會先去 “小冰箱” 里找,如果找到了,直接拿出來用,速度快到飛起!如果沒找到,再去 “大冰柜” 里找,如果還沒找到,才去 “生產工廠” 里查。這樣一來,大部分請求都被 “小冰箱” 和 “大冰柜” 攔下了,“生產工廠” 的壓力就小多了。

(二)注解驅動的 “懶人模式”

JetCache 的注解就像 “懶人遙控器”,讓你不用寫一堆代碼就能搞定緩存。比如,@Cached 注解,就像給方法貼了個 “緩存標簽”,下次調用這個方法的時候,直接從緩存里拿結果,不用再執行方法里的代碼。@CacheUpdate 注解就像 “緩存更新器”,修改數據的時候,自動更新緩存。@CacheInvalidate 注解就像 “緩存清潔工”,刪除數據的時候,自動清理緩存。

舉個栗子:

@RestController
@RequestMapping("/index")
public class IndexController {
    @Autowired
    IndexService indexService;
    @GetMapping("/get")
    @Cached(name = "userCache", key = "#userId")
    public User getUserById(long userId) {
        return indexService.getUserById(userId);
    }
}

這段代碼里,@Cached 注解告訴 JetCache,調用 getUserById 方法時,把結果存到名為 “userCache” 的緩存里,key 是 userId。下次再調用這個方法,直接從緩存里拿,不用再去數據庫查了!

(三)數據一致性的 “金鐘罩”

多級緩存雖然厲害,但數據一致性的問題就像 “江湖中的暗器”,防不勝防。比如,數據庫里的數據改了,緩存里的數據沒及時更新,用戶就會看到 “過期” 的數據。這時候,JetCache 的 “金鐘罩” 就派上用場了!

JetCache 支持多種數據一致性策略,比如延遲雙刪和MQ 通知。延遲雙刪就像 “先斬后奏”,先刪除緩存,再更新數據庫,然后過一會兒再刪除一次緩存,確保緩存里的數據是最新的。MQ 通知就像 “傳信鴿”,數據更新后,發個消息給其他服務器,讓它們也更新緩存。

舉個栗子:

@PostMapping("/update")
public String updateUser(User user) {
    // 先刪除緩存
    cache.invalidate(user.getId());
    // 更新數據庫
    indexService.updateUser(user);
    // 延遲一段時間再刪除緩存
    try {
        Thread.sleep(100);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
    cache.invalidate(user.getId());
    return "success";
}

這段代碼里,先刪除緩存,再更新數據庫,然后延遲 100 毫秒再刪除一次緩存。這樣就能保證在數據庫更新期間,其他請求不會拿到舊數據。

二、JetCache 的 “實戰攻略”

(一)本地緩存 + Redis 的 “黃金組合”

本地緩存和 Redis 的組合就像 “雙截棍”,剛柔并濟。本地緩存處理高頻訪問的數據,Redis 處理低頻訪問的數據,數據庫作為 “后盾”。這樣一來,大部分請求都被本地緩存和 Redis 攔下了,數據庫的壓力大大降低。

配置本地緩存和 Redis 也很簡單,只需要在 pom.xml 里加幾個依賴,再在 application.properties 里配置一下就可以了。比如:

<dependency>
    <groupId>com.github.ben-manes.caffeine</groupId>
    <artifactId>caffeine</artifactId>
    <version>3.1.6</version>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
# 本地緩存配置
jetcache.local.enabled=true
jetcache.local.type=caffeine
jetcache.local.size=1000
jetcache.local.timeToLiveInSeconds=60
# Redis配置
jetcache.redis.host=localhost
jetcache.redis.port=6379
jetcache.redis.password=
jetcache.redis.database=0
jetcache.redis.timeToLiveInSeconds=300

這樣配置之后,JetCache 就會自動幫你管理本地緩存和 Redis 了。

(二)緩存預熱的 “糧草先行”

緩存預熱就像 “打仗前的糧草準備”,把常用的數據提前加載到緩存里,避免用戶訪問時 “餓肚子”。JetCache 支持通過定時任務或者啟動時加載數據到緩存里。

比如,在 Spring Boot 里,可以用 @Scheduled 注解寫一個定時任務,每天凌晨加載熱門商品數據到緩存里:

@Component
public class CachePreloader {
    @Autowired
    private ProductService productService;
    @Scheduled(cron = "0 0 2 * * ?") // 每天凌晨2點執行
    public void preloadHotProducts() {
        List<Product> hotProducts = productService.getHotProducts();
        for (Product product : hotProducts) {
            productCache.put(product.getId(), product);
        }
    }
}

這樣,用戶早上訪問商品詳情頁時,數據已經在緩存里了,速度杠杠的!

(三)監控指標的 “千里眼”

監控指標就像 “千里眼”,讓你隨時掌握緩存的狀態。JetCache 提供了豐富的監控指標,比如命中率、內存占用率、網絡延遲等。可以用 Prometheus 和 Grafana 把這些指標可視化,隨時查看緩存的運行情況。

比如,在 Spring Boot 里,可以加一個依賴:

<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-core</artifactId>
</dependency>

然后在配置文件里開啟監控:

management.metrics.export.prometheus.enabled=true
management.endpoints.web.exposure.include=*

這樣,就可以通過 Prometheus 采集指標,用 Grafana 展示出來了。

三、JetCache 的 “江湖地位”

(一)與其他框架的 “華山論劍”

JetCache 和其他緩存框架相比,就像 “獨孤九劍” 對 “辟邪劍法”,各有千秋。比如,和 Spring Cache 相比,JetCache 支持多級緩存、自動刷新、數據一致性等高級功能,而 Spring Cache 功能相對簡單。和 Caffeine 相比,JetCache 支持分布式緩存,而 Caffeine 只能做本地緩存。和 Redis 相比,JetCache 提供了更友好的注解和配置,讓緩存使用起來更簡單。

舉個栗子:

如果只用 Spring Cache,要實現多級緩存,得自己寫一堆代碼,而用 JetCache,只需要在注解里配置一下就可以了。

// Spring Cache實現多級緩存
@Cacheable(value = "userCache", key = "#userId", sync = true)
public User getUserById(long userId) {
    User user = redisTemplate.opsForValue().get("user:" + userId);
    if (user == null) {
        user = userDao.getUserById(userId);
        redisTemplate.opsForValue().set("user:" + userId, user);
    }
    return user;
}
// JetCache實現多級緩存
@Cached(name = "userCache", key = "#userId", localCacheType = CaffeineCache.class)
public User getUserById(long userId) {
    return userDao.getUserById(userId);
}

JetCache 的代碼明顯更簡潔,而且自動處理了本地緩存和 Redis 的同步。

(二)實際應用的 “生死時速”

JetCache 在實際應用中的表現就像 “高鐵”,速度快到飛起!比如,某電商平臺用 JetCache 后,商品詳情頁的響應時間從 200 毫秒降到了 50 毫秒,數據庫的 QPS 從 1 萬降到了 1 千,大大提升了用戶體驗和系統穩定性。

再比如,某社交平臺用 JetCache 緩存用戶的 Feed 流數據,用戶滑動頁面時,數據瞬間加載出來,就像在本地瀏覽一樣流暢。

四、JetCache 的 “注意事項”

(一)緩存穿透的 “幽靈攻擊”

緩存穿透就像 “幽靈訪問”,請求的數據在緩存和數據庫里都不存在,每次都要穿透到數據庫。這時候,可以用布隆過濾器來攔截這些 “幽靈請求”。布隆過濾器就像 “門神”,能快速判斷數據是否存在,不存在的直接攔截,不讓它穿透到數據庫。

比如,在 JetCache 里集成布隆過濾器:

@Autowired
private BloomFilter bloomFilter;
@Cached(name = "userCache", key = "#userId", unless = "#result == null")
public User getUserById(long userId) {
    if (!bloomFilter.mightContain(userId)) {
        return null;
    }
    return userDao.getUserById(userId);
}

這樣,不存在的用戶 ID 就會被布隆過濾器攔截,避免穿透到數據庫。

(二)緩存雪崩的 “雪山崩塌”

緩存雪崩就像 “雪山崩塌”,大量緩存同時過期,請求瞬間壓到數據庫。這時候,可以給緩存設置隨機過期時間,避免同時過期。比如,原本設置過期時間為 5 分鐘,可以改成 4-6 分鐘之間的隨機值。

在 JetCache 里,可以這樣配置:

jetcache.redis.timeToLiveInSeconds=300 jetcache.redis.randomTtlFactor=0.2

randomTtlFactor 設置為 0.2,過期時間就是 300*(1±0.2) 秒,即 240-360 秒之間的隨機值。

(三)內存泄漏的 “無底洞”

內存泄漏就像 “無底洞”,緩存數據一直占用內存,導致 JVM 內存溢出。這時候,要合理設置緩存的大小和過期時間,及時清理無效數據。比如,本地緩存用 Caffeine 時,可以設置 maximumSize 和 expireAfterAccess:

jetcache.local.size=1000 jetcache.local.expireAfterAccessInSeconds=60

這樣,本地緩存最多存 1000 條數據,60 秒內沒有訪問的就會被淘汰。

五、總結

JetCache 就像 “江湖中的新秀”,憑借強大的功能和易用性,在緩存領域嶄露頭角。它不僅提升了系統性能,還降低了開發成本,讓程序員們從繁瑣的緩存管理中解脫出來。

責任編輯:武曉燕 來源: 石杉的架構筆記
相關推薦

2018-10-15 16:23:24

Android 源碼開源

2024-09-19 09:30:39

緩存框架抽象

2022-06-13 10:23:34

Helios緩存服務端

2022-07-05 07:59:00

VSCode開源項目

2022-01-10 16:25:18

GitHub語言開源

2025-09-26 09:31:16

2025-09-01 08:28:41

2019-03-01 08:57:47

iOScoobjc協程

2023-09-17 23:16:46

緩存數據庫

2024-02-20 14:10:55

系統緩存冗余

2023-05-05 18:38:33

多級緩存Caffeine開發

2025-03-27 04:10:00

2019-09-26 14:56:18

GitHub 技術開源

2015-11-16 15:20:30

微軟開源Linux

2022-12-06 17:18:42

2022-12-06 17:22:45

2015-02-11 09:30:19

Swift1.2

2015-02-11 09:54:17

Swift

2012-12-17 14:54:55

算法緩存Java

2023-01-31 16:35:34

JavaScript測試框架
點贊
收藏

51CTO技術棧公眾號

日韩大片免费在线观看| 日本免费色视频| 四虎精品在线| 日韩精品久久久久久久电影99爱| 在线观看免费一区| 欧美一区二区三区在线播放 | 亚洲成人aaa| 欧美精品色婷婷五月综合| 亚洲人午夜射精精品日韩| 久久精品免费| www国产精品视频| 欧美一区二区三区影院| 九色porny丨入口在线| 国产午夜一区二区三区| 成人两性免费视频| 久久免费黄色网址| 久久最新网址| 欧美一区二区三区视频在线| 国产v片免费观看| av在线电影观看| 国产精品1024| 欧美在线免费看| 日本 欧美 国产| 欧美天堂影院| 欧美一区2区视频在线观看| 免费无码毛片一区二三区| 国产在线观看黄| 秋霞电影网一区二区| 九九久久精品一区| 加勒比综合在线| 榴莲视频成人app| 色噜噜久久综合| www.黄色网址.com| 六月婷婷综合网| 蜜臀av一区二区| 97欧美精品一区二区三区| 国产三级aaa| 天堂综合网久久| 日韩欧美一区中文| 爱情岛论坛成人| 麻豆电影在线播放| 久久这里都是精品| 成人妇女淫片aaaa视频| 欧美国产成人精品一区二区三区| 影音先锋日韩精品| 亚洲香蕉伊综合在人在线视看| 欧美日韩一区二区区| 国产精品99| 偷偷要91色婷婷| 国产日韩欧美大片| 91网在线播放| 99国产精品久久久久久久久久| 91久久精品视频| 欧美激情一区二区三区免费观看| 在线欧美视频| 久久97久久97精品免视看| 林心如三级全黄裸体| 一道在线中文一区二区三区| 亚洲精品久久久一区二区三区| 国产免费中文字幕| 女厕盗摄一区二区三区| 亚洲福利一二三区| 久久久久久久香蕉| 黄色免费在线观看| 国产精品的网站| 好吊色欧美一区二区三区| 国产xxxxxx| 国产精品亚洲视频| 51精品国产人成在线观看| 国产精品久久久久久久免费看| 三级精品在线观看| 55夜色66夜色国产精品视频| 日韩特级黄色片| 欧美日本三区| 欧美精品国产精品日韩精品| 欧美激情精品久久| 欧美成人日韩| 久久91亚洲精品中文字幕奶水| 久久国产精品国语对白| 久久精品影视| 欧美国产精品va在线观看| 91porn在线视频| 欧美精品综合| 久久噜噜噜精品国产亚洲综合| 国产无遮挡免费视频| 亚洲黄网站黄| 欧美在线日韩在线| 欧美成人精品网站| 久久精品一本| 国产精品自在线| 国产精品伊人久久| 国产一区二区三区蝌蚪| 3d动漫精品啪啪一区二区三区免费| 国产色视频在线| 国产91精品入口| 欧美色欧美亚洲另类七区| 国产盗摄在线观看| 精品久久久久久久久久| 中文字幕第100页| 88久久精品| 在线观看国产精品淫| 欧美日韩三级在线观看| 蜜桃久久av| 99国产超薄肉色丝袜交足的后果| 视频国产在线观看| **性色生活片久久毛片| 91av资源网| 麻豆精品在线| 中文精品99久久国产香蕉| 久久精品美女视频| 美女免费视频一区二区| 九九九久久久| 青草视频在线免费直播 | 无码播放一区二区三区| 青青青国产精品| 日韩精品极品在线观看| 91久久国产综合| 久久综合影视| 久久99九九| 七七成人影院| 欧美情侣在线播放| 精品少妇人妻一区二区黑料社区| 国产在线日韩| 成人国产亚洲精品a区天堂华泰| 香蕉av一区二区三区| 亚洲蜜臀av乱码久久精品 | 欧美亚洲二区| 亚洲午夜未删减在线观看 | 欧美日韩精品免费| 无遮挡aaaaa大片免费看| 欧美激情无毛| 97人摸人人澡人人人超一碰| 在线观看免费黄视频| 日本韩国欧美在线| 亚洲自拍偷拍一区二区| 一区二区高清| 精品乱码一区| 美女的胸无遮挡在线观看| 日韩精品一区二区三区蜜臀 | 欧美小视频在线观看| 最新版天堂资源在线| 欧美精品自拍| 国产精品香蕉视屏| 欧美亚洲系列| 精品国内二区三区| 精品午夜福利视频| 成人在线视频一区| 男人天堂手机在线视频| 伊人久久大香线蕉av超碰| 欧美老女人xx| 黄色av免费观看| 亚洲成人免费视频| 欧美日韩人妻精品一区在线| 欧美特黄a级高清免费大片a级| 91九色在线观看| 蜜桃传媒在线观看免费进入| 精品欧美一区二区久久 | 日本乱人伦一区| 自拍偷拍视频亚洲| 蜜芽一区二区三区| 一区二区不卡在线观看| 亚洲综合资源| 欧美裸体xxxx极品少妇| 亚洲av少妇一区二区在线观看| 亚洲一区在线视频观看| 插我舔内射18免费视频| 亚洲欧美日本日韩| 日韩精品伦理第一区| 人人精品久久| 久久99精品久久久久久青青91 | 国产精品久久久久久久久免费高清| 一区二区三区亚洲| 国产视频aaa| 亚洲成人精品一区| 欧洲女同同性吃奶| 免费观看30秒视频久久| 日本一二三区视频在线| 林ゆな中文字幕一区二区| 国产99视频在线观看| 999国产在线视频| 日韩精品中文字幕在线一区| 亚洲另类欧美日韩| 国产精品欧美久久久久无广告| 日韩在线一区视频| 亚洲第一在线| 五码日韩精品一区二区三区视频| 久久国产精品美女| 青草青草久热精品视频在线网站| 色开心亚洲综合| 精品国产凹凸成av人网站| 男人天堂视频网| 一区二区三区在线视频免费| www.色天使| 国产黑丝在线一区二区三区| 国产xxxxx在线观看| 综合激情视频| 日本一区二区不卡高清更新| 亚洲三级av| 国产精品va在线播放| 羞羞视频在线免费国产| 亚洲欧美成人精品| 国产ts人妖调教重口男| 91成人在线免费观看| 成人免费视频网站入口::| 久久夜色精品一区| 日本亚洲一区二区三区| 日韩经典中文字幕一区| 欧美视频在线观看视频| 欧美中文一区二区| 国产综合动作在线观看| 95精品视频| 国产精品精品一区二区三区午夜版| 七七久久电影网| 色婷婷**av毛片一区| 亚欧洲精品视频| 日韩一区二区在线观看视频播放| 色老头一区二区| 亚洲午夜激情av| 杨钰莹一级淫片aaaaaa播放| 国产日韩在线不卡| 在线观看亚洲免费视频| 激情综合色综合久久| www.日日操| 日韩一级在线| www.xxx麻豆| 偷拍欧美精品| 亚洲制服欧美久久| 综合综合综合综合综合网| 狠狠爱一区二区三区| 一区二区三区四区视频免费观看 | 这里视频有精品| 国产综合色香蕉精品| 日本一区二区三区视频在线| 7777kkkk成人观看| 136福利第一导航国产在线| 久久久精品久久久久| 午夜伦理在线| 深夜福利一区二区| 69久久久久| 在线成人免费网站| а天堂8中文最新版在线官网| 日韩精品在线影院| 五月婷在线视频| 日韩精品在线观看网站| 视频污在线观看| 日韩电影视频免费| 姝姝窝人体www聚色窝| 亚洲第一av网站| 四虎永久在线观看| 日韩精品视频在线观看免费| 色av男人的天堂免费在线| 亚洲国产欧美日韩精品| 亚洲区小说区图片区| 精品五月天久久| 国产爆初菊在线观看免费视频网站| 亚洲丝袜av一区| 在线观看免费网站黄| 理论片在线不卡免费观看| huan性巨大欧美| 久久免费国产视频| 日韩精品极品| 国产精品精品久久久久久| 亚洲精品三区| 不卡视频一区二区三区| 国产精品香蕉| 欧美一级日本a级v片| 久久资源中文字幕| 黄色一级片av| 一本色道88久久加勒比精品| 无遮挡又爽又刺激的视频| 蜜臀av性久久久久av蜜臀妖精| 国产欧美一区二| 成人av网站在线观看| 美女被到爽高潮视频| 亚洲欧美视频一区| 国产在线拍揄自揄拍| 色94色欧美sute亚洲线路一ni| 6—12呦国产精品| 欧美成人福利视频| 日本a一级在线免费播放| 日韩中文字幕在线精品| 七七成人影院| 国产精品久久久久久久久免费| 蜜桃精品视频| 欧美乱偷一区二区三区在线| 999久久久91| 毛片在线视频播放| 美女性感视频久久| 国产成人精品无码片区在线| 欧美国产1区2区| 日本亚洲欧美在线| 欧美日韩亚洲不卡| 黄色av网址在线| 中文字幕亚洲欧美一区二区三区| 色黄网站在线观看| 国产成人精品久久| 日韩综合一区二区三区| 日韩伦理一区二区三区av在线| 欧美色图首页| 在线黄色免费观看| 91香蕉国产在线观看软件| 欧美大片xxxx| 91久久一区二区| 成人精品在线播放| 日韩在线观看网站| 亚洲欧美小说色综合小说一区| 97伦理在线四区| 成人激情诱惑| 黄www在线观看| 国产成人免费视频精品含羞草妖精| 色欲狠狠躁天天躁无码中文字幕| 亚洲午夜成aⅴ人片| 一炮成瘾1v1高h| 亚洲欧美中文日韩在线| 国产不卡123| 97超级在线观看免费高清完整版电视剧| 亚洲妇女av| 青青草国产免费| 国产精品一区久久久久| 国产精品久久久久久成人| 高跟丝袜欧美一区| 丰满大乳国产精品| 久久久精品一区二区三区| 丁香久久综合| 婷婷精品国产一区二区三区日韩| 久久久久99| 中文字幕日韩三级片| 亚洲一卡二卡三卡四卡| 99久久免费国产精精品| xvideos成人免费中文版| 日韩欧美一区二区三区在线观看| 久久亚洲高清| 亚洲欧美日本日韩| 欧美 变态 另类 人妖| 亚洲成国产人片在线观看| 亚洲第一视频在线播放| 免费不卡在线观看av| 高清一区二区| 妞干网这里只有精品| 国产一区二区三区久久悠悠色av| av最新在线观看| 欧美日韩二区三区| 三区四区电影在线观看| 国产欧美日韩中文字幕| 视频在线不卡免费观看| 日韩欧美国产片| 成人欧美一区二区三区小说 | 亚洲成年人在线播放| 久草在线视频资源| 国产精品国产三级欧美二区| 亚洲人成久久| 中文在线永久免费观看| 狠狠久久亚洲欧美专区| 日av在线播放| 国产精品福利在线观看| 日韩成人综合| 在线一区二区不卡| 一区二区三区不卡视频在线观看| 亚洲精品久久久久avwww潮水 | 欧美magnet| 日本免费一区二区三区| 蜜桃av噜噜一区二区三区小说| 日本美女黄色一级片| 欧美一区二区三区性视频| 日本天码aⅴ片在线电影网站| 国产中文一区二区| 久久婷婷亚洲| 特黄一区二区三区| 精品欧美久久久| 在线一区av| 一区二区冒白浆视频| 国产精品91xxx| 在线观看黄网站| 中文字幕在线观看亚洲| 91精品亚洲一区在线观看| av女优在线播放| 久久久久久久综合| 96日本xxxxxⅹxxx17| 久久久久久com| 国产aⅴ精品一区二区三区久久| www.超碰97.com| 亚洲国产精品嫩草影院| 国产高清一级毛片在线不卡| 成人在线精品视频| 国产视频欧美| 97在线观看视频免费| 亚洲国产精品久久精品怡红院| 日韩免费小视频| 国产免费一区二区视频| 久久精品视频在线免费观看 | 国产91对白在线观看九色| 69成人免费视频| 蜜月aⅴ免费一区二区三区| 日韩伦理一区二区三区| 亚洲一区日韩精品| 精品久久久久久久久久ntr影视| 婷婷免费在线视频| 久久国产精品 国产精品| 黄色精品一二区| 国产成人精品777777|