日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Redis实战:第五章-使用Redis构建支持程序

發布時間:2023/12/20 数据库 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Redis实战:第五章-使用Redis构建支持程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本章主要講解redis的使用案例,相對于以往的技術,redis在這些領域將大大簡化或者提高程序的便利和穩定。比如日志記錄,相對于以往的文件記錄方式將更加靈活,便于數據操作,


  • 日志記錄
  • 以往的日志記錄采用本地文件存儲的方式,這種方式有一種弊端,由于是文本存儲,各個服務器之間很難協調,很難對多個數據文件進行聚合,導致之后的數據分析,將顯得很不方便,相對而言,由于redis數據庫可以在不同的服務器之間通信,加上自帶數據處理函數,所以將更加方便。
    對不同的數據分析,不同的日志有不同的好處,為了方便管理或者處理,需要對相應的日志做分類處理。比如對于一個網站而言,日志是很多的,如果大量記錄是不現實的,但是,很多情況下,比如我們服務器突然出現問題,或者說現在我們需要立刻查看最近的操作的數據情況,這是,我們就可以使用最新的日志,這些日志只會記錄最近發生的響應,而不會記錄很久之前的數據情況,這樣就便于我們查錯,或者查看最近的操作情況。

    • 最新日志:分別記錄最近的debug\info\warning\error\critical等日志情況,便于查看(這里使用的是列表存儲,方便添加和刪除日志)
    • 常見日志:常見日志即我們認為重要的日志,比如用戶的操作,加入購物車,購買等信息。這些都是很重要的日志信息,可用于數據挖掘。但是文章中并沒有給出這個例子,而是,對不同的日志信息進行排序,對每個動作進行打分,從而只保存經常操作的那些動作,即表明這些操作是最重要的,有很高的商業價值。(同樣是列表)

    • 計數器和數據統計
    • 計數器是什么?這里的計數器并不是電子電路里面的時鐘計數器,而是一種數據記錄,比如用戶的登陸次數,百度上某個醫療廣告的點擊量,整個百度網頁每個渲染頁面的點擊量等等,這些都是很重要的價值信息。能夠從中發掘大量的商業價值。
      數據統計。在統計學中,有幾個重要的數據衡量指標,分別是最大值、最小值、平均值、數量、總分數、標準差等等;比如對一個網站進行優化,我么你需要記錄網站各個頁面的響應時間,這些數據有利于我們有正對性的進行優化。

    • 本行計數器案例主要模擬,分別在1秒、5秒、一分鐘、一小時等,網站的點擊量,由于需要進行排序,所以使用的是有序表和哈希集結合

    • 數據統計主要是模擬網頁的加載時間

    • IP地址等excel本地數據查詢

      我們經常會使用搜索,但是這里搜索并不是百度搜索,而是有現成的數據。比如我們一個存儲數據的excel表,亦或是文本等等。例如,有時候我們會查詢某個ip所對應的網址,但是這個數據很大,如果存儲在一般的關系型數據庫,查詢將會有點慢,因此,這時候就可以使用redis數據庫,大大加快查詢速度。

    • 服務配置信息動態更改

      開發一個應用會存在很多配置文件,只寫配置文件并不是一成不變,以往的人工配置,會出現,一旦一個配置文件發生改變,就需要人工取重新配置,這樣大大降低了效率。因此,我們這里考慮使用程序自動化配置,即將配置信息保存在redis中,將其寫入到程序中作為守護線程,每當配置文件發生改變都會自動進行配置

    • 文中的樣例為:redis配置redis的連接配置,會將redis的連接信息保存在redis中,自動檢查新的配置文件,然后更新配置到程序中

    詳細代碼:

    import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import org.apache.commons.csv.CSVFormat; import org.apache.commons.csv.CSVParser; import org.apache.commons.csv.CSVRecord; import org.javatuples.Pair; import redis.clients.jedis.Jedis; import redis.clients.jedis.Pipeline; import redis.clients.jedis.Transaction; import redis.clients.jedis.Tuple; import redis.clients.jedis.ZParams;import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.text.Collator; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; import java.util.UUID;/*** @author: ZouTai* @date: 2018/7/6* @description:* @create: 2018-07-06 15:23*/ public class Chapter05 {public static final String INFO = "info";public static final SimpleDateFormat TIMESTAMP =new SimpleDateFormat("EEE MMM dd HH:00:00 YYYY");public static final SimpleDateFormat ISO_FORMAT =new SimpleDateFormat("yyyy-MM-dd'T'HH:00:00");public static final Collator COLLATOR = Collator.getInstance();private static final int[] PRECISION = new int[]{1, 5, 60, 300, 3600, 18000, 86400};public static void main(String[] args) throws InterruptedException {new Chapter05().run();}private void run() throws InterruptedException {Jedis conn = new Jedis("localhost");conn.select(15);// 測試1:redis記錄日志 // testLogRecent(conn); // testLogCommon(conn);// 測試2:計數器和統計數據 // testCounters(conn); // testStats(conn); // testAccessTime(conn);// 測試3:查找ip所在的城市及其詳細信息 // testIpLookup(conn);// 測試4:服務發現與配置 // testIsUnderMaintenance(conn);testConfig(conn);}private void testConfig(Jedis conn) throws InterruptedException {System.out.println("首先,創建一個配置文件map:");Map<String, Object> config = new HashMap<String, Object>();config.put("db", 15);// 添加到redis中setConfig(conn, "redis", "test", config);Jedis conn2 = redisConnection("test");System.out.println("新的連接是否存在:" + (conn2.info() != null));}private static final Map<String, Jedis> REDIS_CONNECTIONS = new HashMap<String, Jedis>();private static final Map<String, Map<String, Object>> CONFIGS =new HashMap<String, Map<String, Object>>();private static final Map<String, Long> CHECKED = new HashMap<String, Long>();private Jedis redisConnection(String component) {Jedis configConn = REDIS_CONNECTIONS.get("config");if (configConn == null) {configConn = new Jedis("localhost");configConn.select(15);REDIS_CONNECTIONS.put("config", configConn);}String key = "config:redis:" + component;Map<String, Object> oldConfig = CONFIGS.get(key);Map<String, Object> newConfig = getConfig(configConn, "redis", component);// 判斷配置文件是否相等,不相等,更改當前配置文件if (!newConfig.equals(oldConfig)) {Jedis conn = new Jedis("localhost");conn.select(((Double) newConfig.get("db")).intValue());REDIS_CONNECTIONS.put(key, conn);}return REDIS_CONNECTIONS.get(key);}/*** 從redis獲取新的配置文件,與當前程序中的配置文件CONFIGS對比*/@SuppressWarnings("unchecked")private Map<String, Object> getConfig(Jedis conn, String type, String component) {String key = "config:" + type + ":" + component;long wait = 1000;if (CHECKED.get(key) == null || CHECKED.get(key) < System.currentTimeMillis() - wait) {CHECKED.put(key, System.currentTimeMillis());String value = conn.get(key);Map<String, Object> config = null;if (value != null) {Gson gson = new Gson();config = (Map<String, Object>) gson.fromJson(value, new TypeToken<Map<String, Object>>() {}.getType());} else {config = new HashMap<String, Object>();}CONFIGS.put(key, config);}return CONFIGS.get(key);}private void setConfig(Jedis conn, String type, String component, Map<String, Object> config) {Gson gson = new Gson();conn.set("config:" + type + ":" + component, gson.toJson(config));}private void testIsUnderMaintenance(Jedis conn) throws InterruptedException {boolean flag = false;flag = isUnderMaintenance(conn);System.out.println("是否在維護:" + flag);conn.set("is-under-maintenance", "yes");flag = isUnderMaintenance(conn);System.out.println("改變后,是否在維護:" + flag);Thread.sleep(1000);flag = isUnderMaintenance(conn);System.out.println("停留1秒鐘,是否在維護:" + flag);conn.del("is-under-maintenance");Thread.sleep(1000);flag = isUnderMaintenance(conn);System.out.println("清除后,是否在維護:" + flag);}private long lastChecked;private boolean underMaintenance;private boolean isUnderMaintenance(Jedis conn) {if (lastChecked < System.currentTimeMillis() - 1000) {String flag = conn.get("is-under-maintenance");underMaintenance = "yes".equals(flag);}return underMaintenance;}private void testIpLookup(Jedis conn) {String cwd = System.getProperty("user.dir");File blocks = new File(cwd + "/GeoLiteCity-Blocks.csv");File locations = new File(cwd + "/GeoLiteCity-Location.csv");if (!blocks.exists()) {System.out.println("文件不存在:" + blocks);}if (!locations.exists()) {System.out.println("文件不存在:" + locations);}System.out.println("將IP數據載入到redis:"); // importIpsToRedis(conn, blocks);long ipSum = conn.zcard("ip2cityId:");System.out.println("IP數量為:" + ipSum);System.out.println("將城市數據載入redis:"); // importCitiesToRedis(conn, locations);long citySum = conn.hlen("cityId2City:");System.out.println("城市數量為:" + citySum);System.out.println("隨機查找ip");for (int i = 0; i < 5; i++) {String ip = randomOctet(255) + "."+ randomOctet(256) + "."+ randomOctet(256) + "."+ randomOctet(256);String cityMessage = Arrays.toString(findCityByIp(conn, ip));System.out.println("所在城市信息為:");System.out.println(cityMessage);}}private void importCitiesToRedis(Jedis conn, File file) {FileReader reader = null;Gson gson = new Gson();try {reader = new FileReader(file);CSVParser parser = new CSVParser(reader, CSVFormat.DEFAULT);for (CSVRecord record : parser) {if (record.size() < 4 || !Character.isDigit(record.get(0).charAt(0))) {continue;}String cityId = record.get(0);String country = record.get(1);String region = record.get(2);String city = record.get(3);String postalCode = record.get(4);String latitude = record.get(5);String longitude = record.get(6);String metroCode = record.get(7);String areaCode = record.get(8);String json = gson.toJson(new String[]{country, region, city, postalCode, latitude, longitude, metroCode, areaCode});conn.hset("cityId2City:", cityId, json);}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {try {reader.close();} catch (IOException e) {e.printStackTrace();}}}private String[] findCityByIp(Jedis conn, String ipAddress) {long score = ipToScore(ipAddress);Set<String> rangs = conn.zrevrangeByScore("ip2cityId:", score, 0, 0, 1);if (rangs.size() == 0) {return null;}String cityId = rangs.iterator().next();cityId = cityId.substring(0, cityId.indexOf("_"));return new Gson().fromJson(conn.hget("cityId2City:", cityId), String[].class);}private String randomOctet(int max) {return String.valueOf((int) (Math.random() * max));}private void importIpsToRedis(Jedis conn, File file) {FileReader fileReader = null;try {int number = 0;fileReader = new FileReader(file);CSVParser parser = new CSVParser(fileReader, CSVFormat.DEFAULT);for (CSVRecord csvRecord : parser) {String startIp = csvRecord.get(0);if (startIp.toLowerCase().indexOf('i') != -1) {continue;}long score = 0;if (startIp.indexOf('.') != -1) {score = ipToScore(startIp);} else {score = Long.parseLong(startIp, 10);}System.out.println(number);String cityIp = csvRecord.get(2) + "_" + number;number++;conn.zadd("ip2cityId:", score, cityIp);}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {try {fileReader.close();} catch (IOException e) {e.printStackTrace();}}}private long ipToScore(String ipAddress) {long score = 0;// "."需要轉義for (String str : ipAddress.split("\\.")) {score = score * 256 + Integer.parseInt(str, 10);}return score;}/*** 記錄程序執行時長** @param conn*/private void testAccessTime(Jedis conn) throws InterruptedException {AccessTimer timer = new AccessTimer(conn);for (int i = 0; i < 5; i++) {timer.setStart(System.currentTimeMillis());Thread.sleep((long) (Math.random() * 4000 + 1));timer.stop("request-" + i);}System.out.println("輸出所有的分數,只緩存最多的100個:");Set<Tuple> stats = conn.zrangeWithScores("slowest:AccessTime", 0, -1);for (Tuple tuple : stats) {System.out.println(tuple.getElement() + " -- " + tuple.getScore());}}private void testStats(Jedis conn) {List<Object> rs = null;System.out.println("寫入數據:");for (int i = 0; i < 5; i++) {int value = (int) (Math.random() * 11 + 5);rs = updateState(conn, "context", "type", value);}HashMap<String, Double> stats = getStats(conn, "context", "type");System.out.println("打印數據報表:");System.out.println(stats);}private HashMap<String, Double> getStats(Jedis conn, String context, String type) {String keys = "stats:" + context + ":" + type;Set<Tuple> datas = conn.zrangeWithScores(keys, 0, -1);HashMap<String, Double> stats = new HashMap<String, Double>();for (Tuple tuple : datas) {stats.put(tuple.getElement(), tuple.getScore());}stats.put("average", stats.get("sum") / stats.get("count"));// 標準差的公式需要自行推導double numerator = stats.get("sumsq") - Math.pow(stats.get("sum"), 2) / stats.get("count");double count = stats.get("count");stats.put("stddev", Math.pow(numerator / (count > 1 ? count - 1 : 1), .5));return stats;}private List<Object> updateState(Jedis conn, String context, String type, long value) {String destination = "stats:" + context + ":" + type;String startKey = destination + ":start";int timeout = 5000;long end = System.currentTimeMillis() + timeout;while (System.currentTimeMillis() < end) {conn.watch(startKey);long now = System.currentTimeMillis();String hourstart = ISO_FORMAT.format(new Date());String existing = conn.get(startKey);Transaction trans = conn.multi();if (existing != null && COLLATOR.compare(existing, now) < 0) {trans.rename(destination, destination + ":last");trans.rename(startKey, destination + ":plast");trans.set(startKey, hourstart);}String tkey1 = UUID.randomUUID().toString();String tkey2 = UUID.randomUUID().toString();trans.zadd(tkey1, value, "min");trans.zadd(tkey1, value, "max");trans.zunionstore(destination, new ZParams().aggregate(ZParams.Aggregate.MIN), destination, tkey1);trans.zunionstore(destination, new ZParams().aggregate(ZParams.Aggregate.MAX), destination, tkey2);trans.del(tkey1, tkey2);trans.zincrby(destination, 1, "count");trans.zincrby(destination, value, "sum");trans.zincrby(destination, value * value, "sumsq");List<Object> results = trans.exec();if (results == null) {continue;}return results.subList(results.size() - 3, results.size());}return null;}private void testCounters(Jedis conn) throws InterruptedException {conn.del("common:test:info");long now = System.currentTimeMillis() / 1000;for (int i = 0; i < 10; i++) {int count = (int) (Math.random() * 5) + 1; // 隨機計數加量大小updateCounter(conn, "test", count, now + i);}System.out.println("測試1秒鐘的:");ArrayList<Pair<Integer, Integer>> counter = getCounter(conn, "test", 1);for (Pair<Integer, Integer> count : counter) {System.out.println(" " + count);}assert counter.size() >= 10;System.out.println("測試5秒鐘的:");counter = getCounter(conn, "test", 5);for (Pair<Integer, Integer> count : counter) {System.out.println(" " + count);}assert counter.size() >= 2;CleanCountersThread thread = new CleanCountersThread(0, 2 * 86400);thread.start();Thread.sleep(10000);thread.quit();thread.interrupt();counter = getCounter(conn, "test", 86400);System.out.println("Did we clean out all of the counters? " + (counter.size() == 0));assert counter.size() == 0;}private ArrayList<Pair<Integer, Integer>> getCounter(Jedis conn, String name, int precision) {String hash = String.valueOf(precision) + ":" + name;Map<String, String> datas = conn.hgetAll("count:" + hash);ArrayList<Pair<Integer, Integer>> results = new ArrayList<Pair<Integer, Integer>>();for (Map.Entry<String, String> entry : datas.entrySet()) {results.add(new Pair<Integer, Integer>(Integer.parseInt(entry.getKey()),Integer.parseInt(entry.getValue())));}Collections.sort(results); // 之所有組裝,是為了進行排序,將舊的數據放在前面(按時間)return results;}private void updateCounter(Jedis conn, String name, int count, long now) {Transaction trans = conn.multi();for (int prec : PRECISION) {// 計數器的開始時間(有多個)long pnow = (now / prec) * prec;String hash = String.valueOf(prec) + ":" + name;trans.zadd("known:", 0, hash); // 有序表-記錄分數trans.hincrBy("count:" + hash, String.valueOf(pnow), count); // 哈希表記錄每個日志信息:(起始時間-計數次數)}trans.exec();}/*** 測試1.2* 記錄重要日志,并篩選** @param conn*/private void testLogCommon(Jedis conn) {conn.del("common:test:info");System.out.println("添加測試日志");for (int count = 1; count < 6; count++) {for (int i = 0; i < count; i++) {logCommon(conn, "test", "message-" + count);}}Set<Tuple> commonsets = conn.zrevrangeWithScores("common:test:info", 0, -1);for (Tuple tuple : commonsets) {System.out.println(tuple.getElement() + " : " + tuple.getScore());}assert commonsets.size() >= 5 : "日志數量不夠,出錯";}private void logCommon(Jedis conn, String name, String message) {logCommon(conn, name, message, INFO, 5000);}private void logCommon(Jedis conn, String name, String message, String severity, int timeout) {String commonDest = "common:" + name + ":" + severity;String startKey = commonDest + ":start";long end = System.currentTimeMillis() + timeout;while (System.currentTimeMillis() < end) {conn.watch(startKey);String existing = conn.get(startKey);Transaction trans = conn.multi(); // 創建事務String hourStart = ISO_FORMAT.format(new Date());/*** if用于判斷,當過了一個小時時,將數據進行持久化存儲。即程序只會記錄最近一個小時之內的日志,很久以前的將刪除* 更確切的說:“start”記錄當前一個小時的,“last”記錄上一個小時的(完整的一個小時)* commonDest用于保存日志分數值* startKey用于保存日志最后存儲的時間(按所在小時記錄)*/if (existing != null && COLLATOR.compare(existing, hourStart) < 0) {trans.rename(commonDest, commonDest + ":last");trans.rename(startKey, commonDest + ":pstart");trans.set(startKey, hourStart);}trans.zincrby(commonDest, 1, message); // 添加日志,加分// 同步到最近的日志,減少客戶端服務器交互:因為如果這里不處理,返回給客戶端,客戶端又要請求服務器保存。// 多了一次往返String recentDest = "recent:" + name + ':' + severity;trans.lpush(recentDest, TIMESTAMP.format(new Date()) + ' ' + message);trans.ltrim(recentDest, 0, 99);List<Object> results = trans.exec();if (results == null) {continue;}return;}}/*** 測試1.1* 記錄登錄日志** @param conn*/private void testLogRecent(Jedis conn) {conn.del("recent:test:info");for (int i = 0; i < 5; i++) {logRecent(conn, "test", "this message is : " + i);System.out.println("\n");}}private void logRecent(Jedis conn, String name, String message) {logRecent(conn, name, message, INFO);List<String> recentLogs = conn.lrange("recent:test:info", 0, -1);System.out.println("當前所有的登陸日志有:");for (String log : recentLogs) {System.out.println(log);}assert recentLogs.size() >= 5 : "日志數量不夠,出錯";}private void logRecent(Jedis conn, String name, String message, String severity) {String destination = "recent:" + name + ":" + severity;Pipeline pipe = conn.pipelined();pipe.lpush(destination, TIMESTAMP.format(new Date()) + " " + message);pipe.ltrim(destination, 0, 99); // 截取信息,只保留前100條pipe.sync(); // 同步管道數據,獲取所有的響應值}private class CleanCountersThread extends Thread {private Jedis conn;private int sampleCount = 100;private boolean quit;private long timeOffset; // used to mimic a time in the future.public CleanCountersThread(int sampleCount, int timeOffset) {this.conn = new Jedis("localhost");this.conn.select(15);this.sampleCount = sampleCount;this.timeOffset = timeOffset;}public void quit() {quit = true;}@Overridepublic void run() {int passes = 0; // 清理的次數while (!quit) {long start = System.currentTimeMillis();int index = 0; // 記錄表下標[1,5,60...86400]while (index < conn.zcard("known:")) {Set<String> oneSet = conn.zrange("known:", index, index);index++;// 處理了一個// 如果表中無數據,則返回if (oneSet.size() == 0) {break;}String onehash = oneSet.iterator().next();int prec = Integer.parseInt(onehash.substring(0, onehash.indexOf(':')));int numPrec = (int) Math.floor(prec / 60);if (numPrec == 0) {numPrec = 1;}// 對更新在60秒之內的,為防止清理多次,即只清理一次,需要計數判斷// 此時numPrec==1,下列計算將不等于0,不再進行刪除if ((passes % numPrec) != 0) {continue;}String hkey = "count:" + onehash;ArrayList<String> keyLists = new ArrayList<String>(conn.hkeys(hkey));Collections.sort(keyLists);String cutoff = String.valueOf((System.currentTimeMillis() + timeOffset) / 1000 - sampleCount * prec);int delNum = bisectRight(keyLists, cutoff);// 刪除數據System.out.println(hkey.toString() + "刪除數量為:" + delNum);if (delNum != 0) {conn.hdel(hkey, keyLists.subList(0, delNum).toArray(new String[0]));// 如果刪除的數據剛好等于數據的總數,則表明表已經清空,需要同時刪除有序表if (delNum == keyLists.size()) {conn.watch(hkey);if (conn.hlen(hkey) == 0) {Transaction trans = conn.multi();trans.zrem("known:", onehash);trans.exec();index--;// 直接刪除了,需要處理index}} else {conn.unwatch(); // 不為空時,解除監控}}}// 清理一次+1passes++;// 使程序60秒執行一次// 程序持續時間long duration = Math.min(System.currentTimeMillis() + timeOffset - start + 1000, 60000);// 多余的時間停留一下try {sleep(Math.max(60000 - duration, 1000));} catch (InterruptedException e) {Thread.currentThread().interrupt();}}}private int bisectRight(ArrayList<String> keyLists, String cutoff) {int index = Collections.binarySearch(keyLists, cutoff);return index > 0 ? index + 1 : Math.abs(index) - 1;}}private class AccessTimer {private Jedis conn;private long start;public AccessTimer(Jedis conn) {this.conn = conn;}public void setStart(long start) {this.start = start;}/*** 記錄停留時間-即類似執行時間*/public void stop(String context) {long delta = System.currentTimeMillis() - start;List<Object> stats = updateState(conn, context, "AccessTime", delta / 1000);double average = (Double) stats.get(1) / (Double) stats.get(0);Transaction trans = conn.multi();trans.zadd("slowest:AccessTime", average, context);trans.zremrangeByRank("slowest:AccessTime", 0, -101);trans.exec();}} }

    總結

    以上是生活随笔為你收集整理的Redis实战:第五章-使用Redis构建支持程序的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    日日干精品| 亚洲另类视频在线 | 97视频在线观看网址 | 亚洲日韩欧美一区二区在线 | 99精品免费久久久久久日本 | 九色精品在线 | 91亚洲欧美激情 | 亚洲一区二区三区在线看 | 日韩精品视频免费看 | 国产91电影在线观看 | 波多野结衣一区二区三区中文字幕 | 亚洲电影第一页av | 91系列在线 | 激情大尺度视频 | 91精品国产入口 | 黄色一级在线视频 | 91视频高清免费 | 国产在线播放观看 | 在线 你懂 | 日韩xxxxxxxxx | 亚洲精品美女久久 | 99热在线国产精品 | 久久综合给合久久狠狠色 | 麻豆视频免费入口 | 波多野结衣小视频 | av在线看网站 | 午夜av免费在线观看 | 久久久一本精品99久久精品66 | 久久久久亚洲最大xxxx | 国产成人精品一区二区在线观看 | 日本女人b | 午夜婷婷网 | 国产尤物在线视频 | 在线小视频 | 精品美女在线视频 | www.福利| 国产色女人 | 色综合天天综合网国产成人网 | 最新动作电影 | 国产短视频在线播放 | 国内精品久久久久久久久 | 成人在线观看av | 中文字幕一区二区三区精华液 | 美女视频黄免费 | 国产精品美女久久久久久久网站 | 日本精品一区二区三区在线播放视频 | 美女视频一区 | 999精品 | 久久天| 天天操天天射天天插 | 玖玖视频网 | 亚洲精品国久久99热 | 成人影片在线免费观看 | 免费看黄色大全 | 欧美在线观看视频一区二区 | 黄色免费大片 | 99久久精品网 | 国产小视频免费在线网址 | 婷婷色中文网 | 亚洲一区 影院 | 久久99国产精品免费 | 午夜精品一区二区三区免费视频 | 日日操狠狠干 | 亚洲精品免费观看视频 | 超碰在线99 | 六月色丁香 | 久久成人资源 | 人人插人人草 | av国产网站 | 韩国精品福利一区二区三区 | 在线黄网站| 91精品欧美一区二区三区 | 中文字幕无吗 | 欧美日韩综合在线观看 | 天天搞天天干 | 成人网在线免费视频 | 欧美日韩伦理一区 | 亚洲最大在线视频 | 亚洲三级在线免费观看 | 美女黄网久久 | 久爱精品在线 | 亚州中文av| 在线亚洲日本 | 99久久精品国产一区二区三区 | 亚洲黄色一级大片 | 国产一区在线观看免费 | 国产午夜免费视频 | 精品一区久久 | 婷婷在线播放 | 亚洲欧美精品在线 | 久久草在线视频国产 | 激情综合网五月 | 国产中文视 | 欧美午夜一区二区福利视频 | a级黄色片视频 | 97精品在线视频 | 五月激情电影 | 国产高清无线码2021 | 欧美污在线观看 | 成人免费视频网站 | 久久久久久久久久久久久久av | 免费观看完整版无人区 | 国产精品久久久久久妇 | 亚洲国产精品日韩 | 欧美色插 | 色在线观看网站 | 人人干人人艹 | 国产91勾搭技师精品 | 久久人人爽人人爽人人片av免费 | 国产精品一区二区在线 | 九九在线免费视频 | 亚洲精品乱码久久久久久蜜桃不爽 | 久久综合中文色婷婷 | 99久久精品国 | 黄色片网站免费 | 91丨九色丨国产女 | 超碰人人做 | 干干日日| 亚洲综合色播 | 黄色av一区| 日本精品视频在线播放 | 中文字幕 国产专区 | 日韩精品免费在线观看视频 | 久久久久亚洲精品 | 欧洲一区二区在线观看 | 91精品国产成人www | 丁香六月综合网 | 国产在线播放一区二区三区 | 久久成人毛片 | 成人中文字幕+乱码+中文字幕 | 久久99精品久久久久久 | 福利视频午夜 | 午夜性生活片 | 亚州人成在线播放 | 日本中文字幕一二区观 | 日韩videos| 亚洲综合情 | 色综合天天在线 | 欧美久久久久久久久中文字幕 | 国产亚洲欧美在线视频 | 91爱爱电影 | av网站有哪些 | 久久精品久久精品久久精品 | 亚洲第一区在线观看 | 狠狠狠综合 | 日韩色av色资源 | 免费亚洲精品视频 | 粉嫩av一区二区三区四区 | 日韩三级.com | 视频国产一区二区三区 | 中文字幕91 | 在线色亚洲 | 免费在线观看av | 天天射天天操天天 | 99爱国产精品 | 国产中文视频 | 91超碰在线播放 | 欧美成人一区二区 | 国产精品高清在线观看 | 亚洲视频久久 | 91精品国产综合久久婷婷香蕉 | 国产精品一区二区免费 | 亚洲黄色影院 | 久久久久久久久久毛片 | 18做爰免费视频网站 | 国产成人精品久久二区二区 | 久久综合99| 探花视频免费观看高清视频 | 九九免费观看视频 | 在线免费观看黄色av | 国产亚洲视频在线 | 黄色aa久久| 九九热免费精品视频 | 国产精品久久久久久久久久久久午 | 日本三级在线观看中文字 | 色偷偷av男人天堂 | 国产男女免费完整视频 | 国产香蕉视频在线观看 | 五月天欧美精品 | 婷婷久月 | 狠狠狠狠狠狠狠狠 | 亚洲aⅴ免费在线观看 | 久精品视频免费观看2 | 久久九九视频 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 免费观看91视频大全 | 国产精品久久久久久久久岛 | 天天操天天色天天 | 亚洲黄色成人av | 九九99视频 | 免费韩国av| 国产日本在线观看 | www.av免费观看 | 免费在线观看av网站 | 高清视频一区二区三区 | 黄网站大全 | 男女拍拍免费视频 | 丁香六月婷婷开心婷婷网 | 国产免费午夜 | 国产成人专区 | av高清一区| 欧美激情视频免费看 | 国产亚洲va综合人人澡精品 | 日韩在线视频观看免费 | 国产精品系列在线观看 | 亚洲天堂网在线视频观看 | 日本黄色免费电影网站 | 国产成人精品亚洲a | 日韩精品中文字幕久久臀 | 久久久久久久久久久高潮一区二区 | 国产 中文 日韩 欧美 | 国产精品久久久久影视 | 91在线视频观看免费 | 亚洲综合成人在线 | 高清一区二区三区 | 中文字幕你懂的 | 天天干com| av九九| 久草在线观看视频免费 | 在线免费亚洲 | 天天干天天色2020 | 五月黄色 | 激情五月婷婷综合 | 亚洲 欧洲 国产 日本 综合 | 成人av影视在线 | 五月天开心 | 国产精品手机在线观看 | 天天干天天射天天爽 | 天天色天天操综合网 | 日日干视频 | 国产成人高清av | 欧美二区视频 | 日韩剧情 | 久草电影在线 | 久久久久久免费视频 | 在线a人片免费观看视频 | 六月丁香六月婷婷 | 免费能看的黄色片 | 婷婷丁香七月 | 欧美福利网站 | av在线网站大全 | 三级视频日韩 | 日日日干 | 国产成人精品区 | 久久看片| 国产精品com | 国产中文字幕视频在线 | 国产一区二区三精品久久久无广告 | 欧美黑人巨大xxxxx | 亚洲视频免费 | 国产精品丝袜在线 | 精品一区二区三区久久久 | 日韩专区在线 | 一区二区三区在线观看免费 | 91av电影网 | 中文字幕在线观看第二页 | 探花视频免费观看 | 三级视频国产 | 国产成人一区三区 | www.com黄色| 中文字幕在线免费观看 | 国产成人精品不卡 | 婷婷综合激情 | 中文字幕在线观看视频一区二区三区 | 日本久久综合视频 | 三三级黄色片之日韩 | 精品在线观看一区二区三区 | 国产手机在线观看 | 国内偷拍精品视频 | 岛国av在线不卡 | 日韩美女黄色片 | 亚洲激情视频 | 中文字幕在线观看av | 天堂在线视频中文网 | 天天草天天操 | 亚洲午夜久久久久久久久电影网 | 黄色av免费 | www国产亚洲精品久久麻豆 | 91成人免费看片 | 午夜 在线 | 最新日韩在线 | 五月婷婷丁香在线观看 | 日韩电影在线观看中文字幕 | 欧美成人性战久久 | 色婷婷丁香| 曰本免费av| 狠狠色噜噜狠狠狠狠 | 色播五月激情五月 | 婷婷丁香六月 | 成人黄色大片在线观看 | 亚洲国产成人在线观看 | 日韩欧美电影 | 中文字幕日韩伦理 | 日韩成人一级大片 | 天天在线操 | 色网址99| 精品91视频 | 国产精品麻豆91 | 日韩久久影院 | 国产精品一区二区三区在线播放 | 天天综合视频在线观看 | 五月婷婷激情综合网 | 久久久久免费观看 | 国产精品成 | 99色在线观看视频 | 久久久久久久久久久久久久免费看 | 久久国产精品免费一区 | 久久精美视频 | 欧美一级激情 | 99久热在线精品 | 日本久久久亚洲精品 | 国产高清在线永久 | 天天干夜夜操视频 | 婷婷免费视频 | 日韩高清一二区 | 高清免费在线视频 | 中文字幕在线观看免费高清完整版 | 欧美日韩视频一区二区三区 | 国产精品亚州 | 成人h动漫在线看 | 九九热av| 91看片看淫黄大片 | 色www免费视频 | 国产粉嫩在线观看 | 五月婷婷在线视频观看 | 久久伊人操 | 免费观看的黄色片 | 久久久精品网站 | 黄色的网站免费看 | 日韩av免费观看网站 | 超碰在线人人草 | 国产精品18久久久久久vr | 探花视频免费在线观看 | 91九色在线视频 | 日韩欧美aaa | 中文字幕丝袜制服 | 亚洲一区欧美精品 | 麻豆视频免费在线播放 | 精品视频在线免费观看 | 欧美精品久久久久久久久免 | 91丨九色丨高潮 | 亚洲欧美经典 | 狠狠色丁香婷婷综合久小说久 | 中文字幕久久亚洲 | 一区二区影视 | 插久久| 精品一区二区三区四区在线 | av福利在线导航 | 国产精品资源 | 成年人在线观看 | 久久久精品综合 | 色婷婷综合久久久久 | 在线观看第一页 | 日日综合 | 69久久久久久久 | 不卡av在线免费观看 | 丝袜精品视频 | 国产区精品区 | 国产精品理论片在线播放 | 国产日韩在线视频 | 国产日韩在线看 | 日韩精品久久久久久久电影竹菊 | 午夜视频在线观看一区 | 一区二区三区在线播放 | 摸bbb搡bbb搡bbbb | 国产精品乱码一区二三区 | 一区二区三区 亚洲 | 韩日精品视频 | 午夜精品视频福利 | 亚洲黄色精品 | 久久久久国产精品免费 | 久久免费视屏 | 91精品亚洲影视在线观看 | 在线观看完整版免费 | 色综合久久五月天 | 一本一本久久a久久精品牛牛影视 | 久久av黄色| 久久久久伊人 | 欧美日韩精品在线免费观看 | 日韩网站视频 | 美女网站一区 | 日韩天堂网 | 亚洲精品美女久久 | 91福利小视频 | 欧美日韩国产综合一区二区 | 久久伦理网 | 日韩精品在线视频 | 欧洲成人av| 国产一区网址 | 欧美有色| 69国产盗摄一区二区三区五区 | 午夜影院一级 | 麻豆国产电影 | 精品国产一区二区三区男人吃奶 | 99精品黄色片免费大全 | 久草视频在线新免费 | 久久精品美女 | 亚洲国产精品激情在线观看 | 伊人狠狠操 | 久久久久久久久久久久久久免费看 | 国产精品成人一区 | 欧美一区日韩精品 | 国产一区二三区好的 | 在线亚洲成人 | 三级在线视频播放 | 天堂av观看| 色偷偷88888欧美精品久久久 | 久久伊人精品一区二区三区 | 久草久热 | 国产一级二级视频 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 亚洲 欧美 精品 | 国产精品一区二区久久国产 | 日韩av电影免费观看 | 国产精品女同一区二区三区久久夜 | 91av综合| 久久夜色精品国产欧美乱 | 免费三级黄色片 | 精品视频免费 | www.色就是色 | 国内精品视频在线 | 一区二区三区日韩视频在线观看 | www.色五月.com| 亚洲欧美日韩精品久久奇米一区 | 国产一区在线精品 | 精品欧美日韩 | 色噜噜日韩精品欧美一区二区 | 97国产情侣爱久久免费观看 | av成人黄色| 日韩a在线播放 | 国产一级免费在线观看 | 性色av免费看 | 亚州精品国产 | 色婷婷免费视频 | 免费在线黄色av | 久久精品一区二区三区中文字幕 | 热久久这里只有精品 | 国产精品欧美久久久久无广告 | 国产日韩视频在线 | 最近最新最好看中文视频 | 国产色网 | 免费人做人爱www的视 | 国产在线精品一区二区 | 国产精品videoxxxx | 国产一区高清在线观看 | www.日日日.com | 一级黄色在线免费观看 | 久久综合色影院 | 午夜av日韩 | 国产精品久久久av | 欧美成人久久 | 一区 二区 精品 | 日韩精品中文字幕久久臀 | 国产剧情av在线播放 | 亚洲电影图片小说 | 黄网站色欧美视频 | 日韩免费一二三区 | 婷婷深爱网 | 精品国产成人av在线免 | 麻花天美星空视频 | 国产精品69久久久久 | 香蕉国产91 | 五月婷婷综合久久 | 一二三久久久 | 国产精品一区二区你懂的 | 97操碰| 久久不见久久见免费影院 | 婷婷丁香六月天 | 在线国产精品视频 | av一区在线 | 在线免费色视频 | 精品久久久久久久久久久院品网 | 久久中文字幕视频 | 欧美久久久久久久久久久久 | 青青草国产免费 | 亚洲激情综合网 | 国产在线色 | 一区二区三区四区五区六区 | 精品中文字幕在线 | 成年人免费在线观看网站 | 国产对白av| av蜜桃在线 | 97夜夜澡人人爽人人免费 | 91久久国产露脸精品国产闺蜜 | 亚洲欧美日本一区二区三区 | 久久精品首页 | 波多野结依在线观看 | 中文字幕日韩电影 | 国产字幕在线看 | 久久免费的精品国产v∧ | 日本韩国中文字幕 | 五月婷婷国产 | 永久免费视频国产 | 成人国产精品 | 精品国产一区二区三区久久影院 | adn—256中文在线观看 | 久久久精品欧美一区二区免费 | 亚洲精品三级 | 懂色av一区二区在线播放 | 国产专区日韩专区 | 久久综合久久综合久久综合 | 五月婷婷六月丁香在线观看 | 九九九热精品 | 少妇自拍av | 精品国产理论 | 欧美日韩在线电影 | 91看片看淫黄大片 | 国产超碰在线 | 中文字幕国产精品 | 成人一级在线观看 | 国产麻豆精品久久一二三 | 精品国产_亚洲人成在线 | 五月黄色 | 男女男视频| 91一区二区三区在线观看 | 欧美日本不卡 | 久久永久免费 | 国产日产在线观看 | 精品免费在线视频 | 人人爽人人爽人人片av免 | 色欧美综合| 久久中文欧美 | 国产专区一 | 国产九色视频在线观看 | 激情视频一区二区 | 久久66热这里只有精品 | 成人av免费电影 | 中文字幕久久亚洲 | 久久视频网 | 日韩成人黄色 | 国产99久久久国产精品免费二区 | 99久久精品免费看国产四区 | 亚洲国产精品一区二区久久,亚洲午夜 | 欧美天堂视频在线 | 精品视频国产一区 | 最近的中文字幕大全免费版 | 免费特级黄色片 | 免费成人在线电影 | 久精品视频免费观看2 | 国产精品毛片久久蜜 | 91探花在线视频 | 91九色国产在线 | www.伊人网 | 欧美高清视频不卡网 | 91日韩精品视频 | 亚洲国产成人精品久久 | www.色婷婷| 九九热免费观看 | 日韩毛片在线免费观看 | 国产网红在线观看 | 91成品人影院 | 在线观看视频精品 | 丝袜美腿一区 | 中文字幕在线播放视频 | 欧美午夜久久 | 国产日韩欧美在线一区 | 在线国产视频一区 | 日韩理论视频 | 国产91精品久久久久 | 欧美ⅹxxxxxx | 狠狠操欧美 | 国产精品成人一区 | 免费观看的黄色片 | 精品久久久久久久久久岛国gif | 中文字幕精品视频 | 成年人视频免费在线 | 成人h视频在线播放 | 中文久久精品 | 婷婷丁香五 | 国产成人一区二区三区免费看 | 亚洲三级av | 欧美动漫一区二区三区 | 天天天天综合 | 婷婷在线看 | 91高清在线看 | 免费三级a| 最新黄色av网址 | 97视频免费在线 | 亚洲少妇天堂 | 黄色小说免费观看 | av丝袜制服| 超薄丝袜一二三区 | 日韩av手机在线观看 | 国产香蕉97碰碰碰视频在线观看 | av免费线看 | 天天草天天干天天射 | 麻豆免费视频观看 | 高潮久久久久久 | 91九色视频 | 久久久久免费网站 | 99免费在线观看 | 一区二区三高清 | 中文区中文字幕免费看 | 在线观看日韩中文字幕 | 中文在线字幕免 | 天天操天天综合网 | 国内外成人在线视频 | 插插插色综合 | 91精品国产自产91精品 | 亚洲一区 影院 | 日韩在线免费电影 | 亚洲妇女av | 国产精品18久久久久久vr | 午夜av一区二区三区 | 国产视频 亚洲精品 | 国产一区二区综合 | 久久99精品国产99久久6尤 | 99久久精品免费看国产麻豆 | 国产精品久久久久婷婷二区次 | 成人av电影免费 | 在线视频专区 | 天天天干天天射天天天操 | 97超碰在线久草超碰在线观看 | 国产不卡精品 | 久久av观看| 天天操天天干天天玩 | 97超碰人人澡 | 最新日韩中文字幕 | 国产手机视频在线观看 | 97超碰香蕉| 久久一区二区免费视频 | 日韩av电影国产 | av成人免费在线观看 | 黄污视频网站大全 | 欧美一级看片 | 亚洲欧洲日韩 | 人人看97 | 欧美日韩国语 | 免费视频区 | 激情网婷婷 | 狠狠久久伊人 | 超碰97在线资源站 | 欧美a视频在线观看 | 成人免费观看完整版电影 | 欧美国产精品一区二区 | 超碰在线个人 | 久久久久国产a免费观看rela | 欧美日韩免费一区二区 | 可以免费观看的av片 | 久久一区二区三区日韩 | 国产一区二区高清 | 国产精品剧情在线亚洲 | 日韩三级在线观看 | 国产精品一区专区欧美日韩 | 精品免费观看视频 | 国产视频九色蝌蚪 | 天天天色综合a | 91成人精品一区在线播放69 | 国产一级免费在线 | 久免费视频 | 欧美日韩视频在线观看免费 | 国产精品福利在线 | 久久综合五月 | 又大又硬又黄又爽视频在线观看 | 国产精品久久久久久久久软件 | 91精品一区二区三区蜜臀 | 成年人免费在线观看网站 | 日韩视频一 | 亚洲黄色小说网 | 在线播放第一页 | 亚洲欧美va | 中文字幕在线观看免费高清完整版 | av看片网 | 久久人人爽人人爽人人片av免费 | 四虎影视精品 | 亚洲91精品在线观看 | 欧美a在线看 | 日韩在线视频看看 | 亚洲精品一区二区三区高潮 | 一区二区三区 中文字幕 | 欧美色婷婷| 奇米网777 | 久久99精品热在线观看 | 狠狠狠色 | 亚洲欧美日韩一区二区三区在线观看 | 亚洲激情在线 | 国产精品国内免费一区二区三区 | 成年人视频在线免费播放 | 精品自拍sae8—视频 | 在线日韩亚洲 | 亚洲成a人片77777kkkk1在线观看 | 在线欧美国产 | 成人 国产 在线 | 日韩二级毛片 | 亚洲精选视频在线 | 国产日女人 | 一区二区三区四区影院 | 欧美亚洲免费在线一区 | 手机在线永久免费观看av片 | 久久国产精品二国产精品中国洋人 | 婷色| 中文字幕一区二区三区久久 | 日韩免费播放 | 狠狠干狠狠艹 | 97视频免费在线观看 | 国产在线精品一区二区三区 | 欧美十八 | 九九九热精品免费视频观看 | 91精彩视频在线观看 | 人人看人人草 | 91视频 - v11av | 久久婷婷综合激情 | 美女一级毛片视频 | 日韩中文字幕免费在线观看 | 香蕉视频18 | 国产一级久久 | 亚洲欧美日韩国产一区二区三区 | 亚洲欧美国产精品 | 久草视频视频在线播放 | a黄色大片 | 欧美日韩视频观看 | 国内精品久久久久国产 | 韩国av免费看 | 天天看天天干天天操 | 99久热在线精品视频 | 丁香婷婷在线 | 久草网免费 | 欧洲精品亚洲精品 | 天天摸夜夜添 | 青草视频在线播放 | 国产精品成人自产拍在线观看 | 久久久国产网站 | www.狠狠操.com| avav片| 干干夜夜 | 免费日韩高清 | 97色国产 | 毛片.com| 久久精选 | 天天撸夜夜操 | 高清av中文字幕 | 国产精品自产拍在线观看网站 | 久草在线视频网站 | 久久成人午夜视频 | 日本精品视频网站 | 亚洲国产中文字幕在线观看 | 深爱婷婷久久综合 | 国内精品一区二区 | 国产精品1区2区3区在线观看 | 亚洲国产高清视频 | 色多多视频在线 | 国内精品久久久久久中文字幕 | 婷色在线| 国产精品中文字幕av | 久久看片网 | 456成人精品影院 | 久久高视频 | 成人a v视频 | 日韩精品久久久久久中文字幕8 | 一本一本久久a久久精品综合 | 综合色播| 免费大片黄在线 | 在线观看视频一区二区三区 | 国产区欧美 | 香蕉精品视频在线观看 | www.97视频| 久久精品国产精品亚洲精品 | 黄色毛片视频 | 日韩电影精品一区 | 超碰在线最新网址 | 激情综合站 | 在线影院中文字幕 | 国产在线一区二区 | 超碰97公开 | 97自拍超碰 | 婷婷av在线| 免费av网址在线观看 | 久久免费黄色大片 | 成人毛片网 | 一区二区三区影院 | 久久不卡国产精品一区二区 | 久草在线视频精品 | 一区中文字幕电影 | 久久久精品网 | 天天操夜夜拍 | 亚洲乱码久久久 | 久久精品一区二区三区视频 | 日韩欧美综合在线视频 | 97在线视频网站 | 中文字幕一区二区三区四区 | 久久亚洲视频 | 日本爱爱片 | 久草综合在线观看 | 蜜臀av性久久久久av蜜臀妖精 | 三级av免费 | 一级一片免费视频 | 欧美小视频在线 | 亚洲精品视频一 | 中文字幕丝袜制服 | 最新日本中文字幕 | 亚洲三级影院 | 久久综合之合合综合久久 | 五月婷婷丁香 | 欧美做受高潮电影o | 国产精品免费观看视频 | 狠狠干中文字幕 | 91成人在线观看高潮 | 91正在播放| 国产精品18久久久久久vr | 成年人视频在线免费观看 | 97精品免费视频 | 欧美另类调教 | 久久久综合香蕉尹人综合网 | 一区二区三区在线看 | 久久大香线蕉app | 国产精品成人久久久久 | 久久久国产精品电影 | 三级黄色免费 | 日本久久久久久科技有限公司 | 国产一二区在线观看 | 亚洲视频久久久久 | 午夜性生活| 亚洲综合在线播放 | 欧美日韩在线精品一区二区 | 久久久www成人免费精品张筱雨 | 日日操夜 | 国产高清在线一区 | 亚洲国内精品视频 | 日韩在线免费播放 | 综合色在线观看 | 日本精品一区二区 | 国产一级高清 | 久久久久久久久久久精 | 奇米网在线观看 | 精品麻豆入口免费 | 亚洲激情婷婷 | 黄色小说视频在线 | 91精品影视 | 国产在线精品一区二区 | 91女子私密保健养生少妇 | 色婷婷在线观看视频 | 91亚洲欧美| 丁香影院在线 | 中文字幕一区三区 | 国产精品黄色 | 精品99999| 91精品久久久久久久久 | 国产精品美女毛片真酒店 | av在线免费观看不卡 | 久久香蕉国产 | 天天干天天射天天爽 | 亚洲一区二区视频在线播放 | 久久五月天色综合 | 91资源在线播放 | 久久久久国产a免费观看rela | 天天操婷婷 | 亚洲精品播放 | 精品久久1 | 国产精品成人自产拍在线观看 | 欧美日韩在线免费视频 | 综合色站导航 | 亚洲精品一区二区三区高潮 | 久久综合精品国产一区二区三区 | 日韩一区二区三区高清在线观看 | 97超碰在线久草超碰在线观看 | 99999精品| www.av在线播放 | 最新av电影网站 | 久久久久久久久久久久久久电影 | 我要看黄色一级片 | 超碰人人舔| 免费不卡中文字幕视频 | 日韩精品久久久久久久电影99爱 | 免费进去里的视频 | 精品国产乱码一区二区三区在线 | 99久久电影 | 狠狠色丁香婷婷综合久小说久 | 日韩最新在线 | 精品黄色片 | 国产 一区二区三区 在线 | 欧美亚洲国产精品久久高清浪潮 | 另类五月激情 | 久久久久 免费视频 | av电影一区| 国产精品二区在线观看 | 91久久人澡人人添人人爽欧美 | 中午字幕在线观看 | 97热久久免费频精品99 | 99久久国产免费免费 | 久久伊人国产精品 | 五月婷婷在线播放 | 96av麻豆蜜桃一区二区 | 国产亚洲精品女人久久久久久 | 日本最新一区二区三区 | 中文字幕av有码 | 午夜av在线电影 | 人人要人人澡人人爽人人dvd | 91免费视频国产 | 日韩丝袜 | 999在线精品 | 九九久久久久久久久激情 | 国产伦精品一区二区三区免费 | 国产精品免费在线 | 99 国产精品 | 视频在线亚洲 | 国产日韩中文字幕在线 | 久久精品免费播放 | 色婷婷电影网 | 99这里都是精品 | 国产亚洲精品久久久久久网站 | 免费看一及片 | 色www永久免费 | 在线观看 国产 | 丁香免费视频 | 国产精品久久久久免费 | 国产精品123 | 黄色一二级片 | 国产亚洲成av片在线观看 | 国产高清在线精品 | 午夜性色 | 日韩久久精品一区二区三区下载 | 国产欧美久久久精品影院 | 国产免费观看久久 | 天天碰天天操 | 日韩精品2区 | 九七人人干 | 亚洲人成在线观看 | av黄色一级片 | 欧美一级片播放 | 蜜桃久久久 | 亚洲精品18日本一区app | 91在线免费观看国产 | 成人在线一区二区 | avav99| 久久三级视频 | 国产在线观看 | 中文字幕欧美三区 | 五月婷婷视频在线 | 国产韩国日本高清视频 | 人人插人人草 | av免费在线看网站 | 91热在线| av九九九| 日韩精品一区二区在线观看 | 国产一区在线视频观看 | 亚洲第一久久久 | zzijzzij亚洲成熟少妇 | 色大片免费看 | 99热最新地址 | 夜夜高潮夜夜爽国产伦精品 | 国产一区在线免费观看 | 久久激情五月婷婷 | 美女免费黄网站 | 日韩欧美大片免费观看 | 波多野结衣亚洲一区二区 | 色在线观看网站 | 91精品视屏 | 在线国产视频观看 | 久操视频在线免费看 | 黄色大全免费网站 | 九九热av | 日韩二三区 | 国产又粗又猛又黄又爽 | 在线视频 影院 | 美女在线免费视频 | 精品久久久一区二区 | 久久一级电影 | 国产精品99久久久久的智能播放 | 国产精品免费视频久久久 | 国产系列在线观看 | 天天av天天| 国产69久久久| 中文字幕在线观看完整 | 日日夜夜操av | 天天干,天天干 | 欧美日韩国产综合网 | 色综合久 | 国产美女在线观看 | 日日爽| 又黄又爽又刺激视频 | 久久久www成人免费毛片 | 最新av在线播放 | aaa免费毛片 | 亚洲欧美日韩国产精品一区午夜 | 久久综合九色欧美综合狠狠 | 四季av综合网站 | 欧美国产在线看 | 色婷婷播放 | 国产视频 久久久 | 久久深夜 | 精品国模一区二区三区 | 456成人精品影院 | 亚洲精区二区三区四区麻豆 | 欧美日韩一二三四区 | 最新中文字幕在线播放 | 六月丁香激情综合色啪小说 | 色九九影院 | 手机av资源| 久久精品在线 | 亚洲精品乱码久久久久 | 亚洲毛片视频 | 99视屏 | 国产亚洲欧美在线视频 | 伊人午夜视频 | 日韩a在线 | 97夜夜澡人人爽人人免费 | 亚洲婷婷综合色高清在线 | 亚洲日本激情 |