国产无遮挡裸体免费直播视频,久久精品国产蜜臀av,动漫在线视频一区二区,欧亚日韩一区二区三区,久艹在线 免费视频,国产精品美女网站免费,正在播放 97超级视频在线观看,斗破苍穹年番在线观看免费,51最新乱码中文字幕

Redis的9種數(shù)據(jù)類型用法解讀

 更新時(shí)間:2023年02月16日 11:17:10   作者:@航空母艦  
這篇文章主要介紹了Redis的9種數(shù)據(jù)類型用法及說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

在具體描述這幾種數(shù)據(jù)類型之前,我們先通過一張圖了解下 Redis 內(nèi)部內(nèi)存管理中是如何描述這些不同數(shù)據(jù)類型的:


首先Redis內(nèi)部使用一個(gè)redisObject對象來表示所有的key和value,redisObject最主要的信息如上圖所示:type代表一個(gè)value對象具體是何種數(shù)據(jù)類型,encoding是不同數(shù)據(jù)類型在redis內(nèi)部的存儲方式,

比如:type=string代表value存儲的是一個(gè)普通字符串,那么對應(yīng)的encoding可以是raw或者是int,如果是int則代表實(shí)際redis內(nèi)部是按數(shù)值型類存儲和表示這個(gè)字符串的,當(dāng)然前提是這個(gè)字符串本身可以用數(shù)值表示,比如:"123" "456"這樣的字符串。

這需要特殊說明一下vm字段,只有打開了Redis的虛擬內(nèi)存功能,此字段才會真正的分配內(nèi)存,該功能默認(rèn)是關(guān)閉狀態(tài)的,該功能會在后面具體描述。

通過上圖我們可以發(fā)現(xiàn)Redis使用redisObject來表示所有的key/value數(shù)據(jù)是比較浪費(fèi)內(nèi)存的,當(dāng)然這些內(nèi)存管理成本的付出主要也是為了給Redis不同數(shù)據(jù)類型提供一個(gè)統(tǒng)一的管理接口,實(shí)際作者也提供了多種方法幫助我們盡量節(jié)省內(nèi)存使用,我們隨后會具體討論。

redis支持豐富的數(shù)據(jù)類型

不同的場景使用合適的數(shù)據(jù)類型可以有效的優(yōu)化內(nèi)存數(shù)據(jù)的存放空間:

  • string:最基本的數(shù)據(jù)類型,二進(jìn)制安全的字符串,最大512M。
  • list:按照添加順序保持順序的字符串列表。
  • set:無序的字符串集合,不存在重復(fù)的元素。
  • sorted set:已排序的字符串集合。
  • hash:key-value對的一種集合。
  • bitmap:更細(xì)化的一種操作,以bit為單位。
  • hyperloglog:基于概率的數(shù)據(jù)結(jié)構(gòu)。 # 2.8.9新增
  • Geo:地理位置信息儲存起來, 并對這些信息進(jìn)行操作   # 3.2新增
  • 流(Stream)# 5.0新增

String 字符串

常用命令:

setnx,set,get,decr,incr,mget 等。

應(yīng)用場景

字符串是最常用的數(shù)據(jù)類型,他能夠存儲任何類型的字符串,當(dāng)然也包括二進(jìn)制、JSON化的對象、甚至是Base64編碼之后的圖片。

在Redis中一個(gè)字符串最大的容量為512MB,可以說是無所不能了。redis的key和string類型value限制均為512MB。

雖然Key的大小上限為512M,但是一般建議key的大小不要超過1KB,這樣既可以節(jié)約存儲空間,又有利于Redis進(jìn)行檢索

  • 緩存,熱點(diǎn)數(shù)據(jù)
  • 分布式session
  • 分布式鎖
  • INCR計(jì)數(shù)器
  • 文章的閱讀量,微博點(diǎn)贊數(shù),允許一定的延遲,先寫入 Redis 再定時(shí)同步到數(shù)據(jù)庫
  • 全局ID
  • INT 類型,INCRBY,利用原子性
  • INCR 限流
  • 以訪問者的 IP 和其他信息作為 key,訪問一次增加一次計(jì)數(shù),超過次數(shù)則返回 false。
  • setbit 位操作

內(nèi)部編碼

  • int:8 個(gè)字節(jié)的長整型(long,2^63-1)
  • embstr:小于等于44個(gè)字節(jié)的字符串,embstr格式的SDS(Simple Dynamic String)
  • raw:SDS大于 44 個(gè)字節(jié)的字符串

接下來就是ebmstr和raw兩種內(nèi)部編碼的長度界限,請看下面的源碼

#define OBJ_ENCODING_EMBSTR_SIZE_LIMIT 44
robj *createStringObject(const char *ptr, size_t len) {
    if (len <= OBJ_ENCODING_EMBSTR_SIZE_LIMIT)
        return createEmbeddedStringObject(ptr,len);
    else
        return createRawStringObject(ptr,len);
}

通過下圖可以直觀感受一下字符串類型和哈希類型的區(qū)別:


redis 為什么要自己寫一個(gè)SDS的數(shù)據(jù)類型,主要是為了解決C語言 char[] 的四個(gè)問題

  • 字符數(shù)組必須先給目標(biāo)變量分配足夠的空間,否則可能會溢出
  • 查詢字符數(shù)組長度 時(shí)間復(fù)雜度O(n)
  • 長度變化,需要重新分配內(nèi)存
  • 通過從字符串開始到結(jié)尾碰到的第一個(gè)\0來標(biāo)記字符串的結(jié)束,因此不能保存圖片、音頻、視頻、壓縮文件等二進(jìn)制(bytes)保存的內(nèi)容,二進(jìn)制不安全

redis SDS

  • 不用擔(dān)心內(nèi)存溢出問題,如果需要會對 SDS 進(jìn)行擴(kuò)容
  • 因?yàn)槎x了 len 屬性,查詢數(shù)組長度時(shí)間復(fù)雜度O(1) 固定長度
  • 空間預(yù)分配,惰性空間釋放
  • 根據(jù)長度 len來判斷是結(jié)束,而不是 \0

為什么要有embstr編碼呢?他比raw的優(yōu)勢在哪里?

embstr編碼將創(chuàng)建字符串對象所需的空間分配的次數(shù)從raw編碼的兩次降低為一次。

因?yàn)閑mstr編碼字符串的素有對象保持在一塊連續(xù)的內(nèi)存里面,所以那個(gè)編碼的字符串對象比起raw編碼的字符串對象能更好的利用緩存。

并且釋放embstr編碼的字符串對象只需要調(diào)用一次內(nèi)存釋放函數(shù),而釋放raw編碼對象的字符串對象需要調(diào)用兩次內(nèi)存釋放函數(shù),如圖所示,左邊emstr編碼,右邊是raw編碼:

Hash 哈希表

常用命令:

hget,hsetnx,hset,hvals,hgetall,hmset,hmget 等。

redis> HSET phone myphone nokia-1110
(integer) 1
 
redis> HEXISTS phone myphone
(integer) 1
 
redis> HSET people jack "Jack Sparrow"
(integer) 1
 
redis> HSET people gump "Forrest Gump"
(integer) 1
 
redis> HGETALL people
1) "jack"          # 域
2) "Jack Sparrow"  # 值
3) "gump"
4) "Forrest Gump"

應(yīng)用場景

我們簡單舉個(gè)實(shí)例來描述下 Hash 的應(yīng)用場景,比如我們要存儲一個(gè)用戶信息對象數(shù)據(jù),包含以下信息:用戶 ID 為查找的 key,存儲的 value 用戶對象包含姓名,年齡,生日等信息,如果用普通的 key/value 結(jié)構(gòu)來存儲,主要有以下2種存儲方式:



第一種方式將用戶 ID 作為查找 key,把其他信息封裝成一個(gè)對象以序列化的方式存儲,這種方式的缺點(diǎn)是,增加了序列化/反序列化的開銷,并且在需要修改其中一項(xiàng)信息時(shí),需要把整個(gè)對象取回,并且修改操作需要對并發(fā)進(jìn)行保護(hù),引入CAS等復(fù)雜問題。


第二種方法是這個(gè)用戶信息對象有多少成員就存成多少個(gè) key-value 對兒,用用戶 ID +對應(yīng)屬性的名稱作為唯一標(biāo)識來取得對應(yīng)屬性的值,雖然省去了序列化開銷和并發(fā)問題,但是用戶 ID 為重復(fù)存儲,如果存在大量這樣的數(shù)據(jù),內(nèi)存浪費(fèi)還是非??捎^的。

那么 Redis 提供的 Hash 很好的解決了這個(gè)問題,Redis 的 Hash 實(shí)際是內(nèi)部存儲的 Value 為一個(gè) HashMap,并提供了直接存取這個(gè) Map 成員的接口,如下圖:


也就是說,Key 仍然是用戶 ID,value 是一個(gè) Map,這個(gè) Map 的 key 是成員的屬性名,value 是屬性值,這樣對數(shù)據(jù)的修改和存取都可以直接通過其內(nèi)部 Map 的 Key(Redis 里稱內(nèi)部 Map 的 key 為 field),也就是通過 key(用戶 ID) + field(屬性標(biāo)簽)就可以操作對應(yīng)屬性數(shù)據(jù)了,既不需要重復(fù)存儲數(shù)據(jù),也不會帶來序列化和并發(fā)修改控制的問題。很好的解決了問題。

這里同時(shí)需要注意,Redis 提供了接口(hgetall)可以直接取到全部的屬性數(shù)據(jù),但是如果內(nèi)部 Map 的成員很多,那么涉及到遍歷整個(gè)內(nèi)部 Map 的操作,由于 Redis 單線程模型的緣故,這個(gè)遍歷操作可能會比較耗時(shí),而另其它客戶端的請求完全不響應(yīng),這點(diǎn)需要格外注意。

 購物車

內(nèi)部編碼     

  • ziplist(壓縮列表):當(dāng)哈希類型中元素個(gè)數(shù)小于 hash-max-ziplist-entries 配置(默認(rèn) 512 個(gè)),同時(shí)所有值都小于 hash-max-ziplist-value 配置(默認(rèn) 64 字節(jié))時(shí),Redis 會使用 ziplist 作為哈希的內(nèi)部實(shí)現(xiàn)。
  • hashtable(哈希表):當(dāng)上述條件不滿足時(shí),Redis 則會采用 hashtable 作為哈希的內(nèi)部實(shí)現(xiàn)。

下面我們通過以下命令來演示一下 ziplist 和 hashtable 這兩種內(nèi)部編碼。


當(dāng) field 個(gè)數(shù)比較少并且 value 也不是很大時(shí)候 Redis 哈希類型的內(nèi)部編碼為 ziplist:



當(dāng) value 中的字節(jié)數(shù)大于 64 字節(jié)時(shí)(可以通過 hash-max-ziplist-value 設(shè)置),內(nèi)部編碼會由 ziplist 變成 hashtable。



當(dāng) field 個(gè)數(shù)超過 512(可以通過 hash-max-ziplist-entries 參數(shù)設(shè)置),內(nèi)部編碼也會由 ziplist 變成 hashtable

List 列表

常用命令:

lpush,rpush,lpop,rpop,lrange等。

127.0.0.1:6379> lpush list one   # 將一個(gè)值或者多個(gè)值,插入到列表的頭部(左)(integer) 1
127.0.0.1:6379> lpush list two
(integer) 2
127.0.0.1:6379> lpush list three 
(integer) 3
127.0.0.1:6379> lrange list 0 -1   # 查看全部元素
1) "three"
2) "two"
3) "one"
127.0.0.1:6379> lrange list 0 1    # 通過區(qū)間獲取值
1) "three"
2) "two"
127.0.0.1:6379> rpush list right   # 將一個(gè)值或者多個(gè)值,插入到列表的尾部(右)(integer) 4
127.0.0.1:6379> lrange list 0 -1
1) "three"
2) "two"
3) "one"
4) "right"
127.0.0.1:6379>

列表(list)用來存儲多個(gè)有序的字符串,每個(gè)字符串稱為元素;一個(gè)列表可以存儲2^32-1個(gè)元素。Redis中的列表支持兩端插入和彈出,并可以獲得指定位置(或范圍)的元素,可以充當(dāng)數(shù)組、隊(duì)列、棧等

應(yīng)用場景

比如 twitter 的關(guān)注列表,粉絲列表等都可以用 Redis 的 list 結(jié)構(gòu)來實(shí)現(xiàn),可以利用lrange命令,做基于Redis的分頁功能,性能極佳,用戶體驗(yàn)好。

消息隊(duì)列

列表類型可以使用 rpush 實(shí)現(xiàn)先進(jìn)先出的功能,同時(shí)又可以使用 lpop 輕松的彈出(查詢并刪除)第一個(gè)元素,所以列表類型可以用來實(shí)現(xiàn)消息隊(duì)列

發(fā)紅包的場景

在發(fā)紅包的場景中,假設(shè)發(fā)一個(gè)10元,10個(gè)紅包,需要保證搶紅包的人不會多搶到,也不會少搶到

下面我們通過下圖來看一下 Redis 中列表類型的插入和彈出操作:



下面我們看一下 Redis 中列表類型的獲取與刪除操作:



Redis 列表類型的特點(diǎn)如下:

  • 列表中所有的元素都是有序的,所以它們是可以通過索引獲取的lindex 命令。并且在 Redis 中列表類型的索引是從 0 開始的。
  • 列表中的元素是可以重復(fù)的,也就是說在 Redis 列表類型中,可以保存同名元素

內(nèi)部編碼

  • ziplist(壓縮列表):當(dāng)列表中元素個(gè)數(shù)小于 512(默認(rèn))個(gè),并且列表中每個(gè)元素的值都小于 64(默認(rèn))個(gè)字節(jié)時(shí),Redis 會選擇用 ziplist 來作為列表的內(nèi)部實(shí)現(xiàn)以減少內(nèi)存的使用。當(dāng)然上述默認(rèn)值也可以通過相關(guān)參數(shù)修改:list-max-ziplist-entried(元素個(gè)數(shù))、list-max-ziplist-value(元素值)。
  • linkedlist(鏈表):當(dāng)列表類型無法滿足 ziplist 條件時(shí),Redis 會選擇用 linkedlist 作為列表的內(nèi)部實(shí)現(xiàn)。

Set 集合

常用命令:

sadd,spop,smembers,sunion,scard,sscan,sismember等。

# 初始化
sadd poker T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 TJ TQ TK X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 XJ XQ XK M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 MJ MQ MK F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 FJ FQ FK XW DW
 
# 數(shù)量
scard poker
 
# 復(fù)用撲克牌
sunionstore pokernew poker
 
# 成員
smembers poker
 
# 是否包含
sismember poker T1
 
# 隨機(jī)讀取
spop poker
 
# 設(shè)置
sadd user1tag tagID1 tagID2 tagID3
sadd user2tag tagID2 tagID3
sadd user3tag tagID2 tagID4 tagID5
 
# 獲取共同擁有的tag(交集)
sinter user1tag user2tag user3tag
 
# 獲取擁有的所有tag(并集)
sunion user1tag user2tag user3tag
 
# 獲取兩個(gè)之間的區(qū)別(差集)
sdiff user2tag user3tag

應(yīng)用場景

Redis set 對外提供的功能與 list 類似是一個(gè)列表的功能,特殊之處在于 set 是可以自動排重的,當(dāng)你需要存儲一個(gè)列表數(shù)據(jù),又不希望出現(xiàn)重復(fù)數(shù)據(jù)時(shí),set 是一個(gè)很好的選擇,并且 set 提供了判斷某個(gè)成員是否在一個(gè) set 集合內(nèi)的重要接口,這個(gè)也是 list 所不能提供的。

1知乎點(diǎn)贊數(shù)

2京東的商品篩選

127.0.0.1:6379> sadd brand:apple iPhone11
(integer) 1
127.0.0.1:6379> sadd brand:ios iPhone11
(integer) 1
127.0.0.1:6379> sadd screensize:6.0-6.24 iPhone11
(integer) 1
127.0.0.1:6379> sadd memorysize:256GB iPhone11
(integer) 1
127.0.0.1:6379> sinter brand:apple brand:ios screensize:6.0-6.24 memorysize:256GB
1) "iPhone11"

篩選商品,蘋果,IOS,屏幕6.0-6.24,內(nèi)存大小256G

sinter brand:apple brand:ios screensize:6.0-6.24 memorysize:256GB

3.存儲社交關(guān)系

用戶(編號user001)關(guān)注

sadd focus:user001 user003

sadd focus:user002 user003 user004

相互關(guān)注

sadd focus:user001 user002

sadd focus:user002 user001

#判斷用戶2是否關(guān)注了用戶1
127.0.0.1:6379> SISMEMBER focus:user002 user001
(integer) 1

我關(guān)注得到人也關(guān)注了他(共同關(guān)注) 

#獲取關(guān)注的交集
127.0.0.1:6379> sinter focus:user001 focus:user002
1) "user003"

可能認(rèn)識的人

#將所有的人存放到allusers集合
127.0.0.1:6379> SUNIONSTORE alluser:user001 focus:user001 focus:user002
(integer) 4
127.0.0.1:6379> SDIFF alluser:user001 focus:user001
1) "user004"
2) "user001"
#剔除掉自己
127.0.0.1:6379> SREM alluser:user001 user001
(integer) 1
127.0.0.1:6379> SDIFF alluser:user001 focus:user001
1) "user004"

實(shí)現(xiàn)方式:

set 的內(nèi)部實(shí)現(xiàn)是一個(gè) value 永遠(yuǎn)為 null 的 HashMap,實(shí)際就是通過計(jì)算 hash 的方式來快速排重的,這也是 set 能提供判斷一個(gè)成員是否在集合內(nèi)的原因。

Redis 中的集合類型,也就是 set。在 Redis 中 set 也是可以保存多個(gè)字符串的,經(jīng)常有人會分不清 list 與 set,下面我們重點(diǎn)介紹一下它們之間的不同:

  • set 中的元素是不可以重復(fù)的,而 list 是可以保存重復(fù)元素的。
  • set 中的元素是無序的,而 list 中的元素是有序的。
  • set 中的元素不能通過索引下標(biāo)獲取元素,而 list 中的元素則可以通過索引下標(biāo)獲取元素。
  • 除此之外 set 還支持更高級的功能,例如多個(gè) set 取交集、并集、差集等

為什么 Redis 要提供 sinterstore、sunionstore、sdiffstore 命令來將集合的交集、并集、差集的結(jié)果保存起來呢?這是因?yàn)?Redis 在進(jìn)行上述比較時(shí),會比較耗費(fèi)時(shí)間,所以為了提高性能可以將交集、并集、差集的結(jié)果提前保存起來,這樣在需要使用時(shí),可以直接通過 smembers 命令獲取。

內(nèi)部編碼    

  • intset(整數(shù)集合):當(dāng)集合中的元素都是整數(shù),并且集合中的元素個(gè)數(shù)小于set-max-intset-entries 參數(shù)時(shí),默認(rèn)512,Redis 會選用 intset 作為底層內(nèi)部實(shí)現(xiàn)。   
  • hashtable(哈希表):當(dāng)上述條件不滿足時(shí),Redis 會采用 hashtable 作為底層實(shí)現(xiàn)。

Sorted set 有序集合

常用命令:

zadd,zrange,zrem,zcard,zscore,zcount,zlexcount等

redis> ZRANGE salary 0 -1 WITHSCORES    # 測試數(shù)據(jù)
1) "tom"
2) "2000"
3) "peter"
4) "3500"
5) "jack"
6) "5000"
 
redis> ZSCORE salary peter              # 注意返回值是字符串
"3500"
 
redis> ZCOUNT salary 2000 5000          # 計(jì)算薪水在 2000-5000 之間的人數(shù)
(integer) 3
 
# rank:key 100: 分?jǐn)?shù) u1: ID
# 初始化 時(shí)間復(fù)雜度: O(log(N))
zadd rank 100 u1
zadd rank 200 u2
zadd rank 300 u3
zadd rank 400 u4
zadd rank 500 u5
 
# 數(shù)量
zcard rank
 
# 內(nèi)容(正序、倒序)時(shí)間復(fù)雜度: O(log(N)+M)
zrange rank 0 -1
zrange rank 0 -1 withscores
 
zrevrange rank 0 -1 withscores
zrevrange rank 0 -2 withscores
zrevrange rank 0 -1
 
# 獲取用戶分?jǐn)?shù)(不存在返回空) 時(shí)間復(fù)雜度: O(1)
zscore rank u1
 
# 修改分?jǐn)?shù)
zadd rank 800 u3
 
# 修改分?jǐn)?shù)(累加:新增或減少,返回修改后的分?jǐn)?shù))
zincrby rank 100 u3
zincrby rank -100 u3
 
# 查詢分?jǐn)?shù)范圍內(nèi)容(正序、倒序)
zrangebyscore rank (200 800 withscores
zrevrangebyscore rank (200 800 withscores
 
# 移除元素
zrem rank u3

下面先看一下列表、集合、有序集合三種數(shù)據(jù)類型之間的區(qū)別:

內(nèi)部編碼 

  • ziplist(壓縮列表):當(dāng)有序集合的元素個(gè)數(shù)小于 128 個(gè)(默認(rèn)設(shè)置),同時(shí)每個(gè)元素的值都小于 64 字節(jié)(默認(rèn)設(shè)置),Redis 會采用 ziplist 作為有序集合的內(nèi)部實(shí)現(xiàn)。
  • skiplist(跳躍表):當(dāng)上述條件不滿足時(shí),Redis 會采用 skiplist 作為內(nèi)部編碼。

備注:上述中的默認(rèn)值,也可以通過以下參數(shù)設(shè)置:zset-max-ziplist-entries 和 zset-max-ziplist-value。

應(yīng)用場景

Redis sorted set 的使用場景與 set 類似,區(qū)別是 set 不是自動有序的,而 sorted set 可以通過用戶額外提供一個(gè)優(yōu)先級(score)的參數(shù)來為成員排序,并且是插入有序的,即自動排序。

當(dāng)你需要一個(gè)有序的并且不重復(fù)的集合列表,那么可以選擇 sorted set 數(shù)據(jù)結(jié)構(gòu),比如 twitter 的 public timeline 可以以發(fā)表時(shí)間作為 score 來存儲,這樣獲取時(shí)就是自動按時(shí)間排好序的。點(diǎn)擊數(shù)做出排行榜。

1.商品的評價(jià)標(biāo)簽,可以記錄商品的標(biāo)簽,統(tǒng)計(jì)標(biāo)簽次數(shù),增加標(biāo)簽次數(shù),按標(biāo)簽的分值進(jìn)行排序

#添加商品(編號i5001)的標(biāo)簽tag和對應(yīng)標(biāo)簽的評價(jià)次數(shù)
127.0.0.1:6379> zadd goods_tag:i5001 442 tag1 265 tag2 264 tag3
(integer) 3
#不帶分?jǐn)?shù)
127.0.0.1:6379> zrange goods_tag:i5001 0 -1
1) "tag3"
2) "tag2"
3) "tag1"
#帶分?jǐn)?shù)
127.0.0.1:6379> zrange goods_tag:i5001 0 -1 withscores
1) "tag3"
2) "264"
3) "tag2"
4) "265"
5) "tag1"
6) "442"

2.百度搜索熱點(diǎn)

#維護(hù)2020年1月21號的熱點(diǎn)新聞
127.0.0.1:6379> zadd hotspot:20200121 520 pot1 263 pot2 244 pot3
(integer) 3
127.0.0.1:6379> zrange hotspot:20200121 0 -1 withscores
1) "pot3"
2) "244"
3) "pot2"
4) "263"
5) "pot1"
6) "520"
#增加點(diǎn)擊次數(shù)
127.0.0.1:6379> ZINCRBY hotspot 1 pot1
"521"

3.反spam系統(tǒng)

作為一個(gè)電商網(wǎng)站被各種spam攻擊是少不免(垃圾評論、發(fā)布垃圾商品、廣告、刷自家商品排名等)針對這些spam制定一系列anti-spam規(guī)則,其中有些規(guī)則可以利用redis做實(shí)時(shí)分析
譬如:1分鐘評論不得超過2次、5分鐘評論少于5次等

#獲取5秒內(nèi)操作記錄
$res = $redis->zRangeByScore('user:1000:comment', time() - 5, time());
#判斷5秒內(nèi)不能評論
if (!$res) {
    $redis->zAdd('user:1000:comment', time(), '評論內(nèi)容');
} else {
    echo '5秒之內(nèi)不能評論';
}
 
#5秒內(nèi)評論不得超過2次
if($redis->zRangeByScore('user:1000:comment',time()-5 ,time())==1)
echo '5秒之內(nèi)不能評論2次';
 
#5秒內(nèi)評論不得少于2次
if(count($redis->zRangeByScore('user:1000:comment',time()-5 ,time()))<2)
echo '5秒之內(nèi)不能評論2次';

BitMap 位圖

在應(yīng)用場景中,有一些數(shù)據(jù)只有兩個(gè)屬性,比如是否是學(xué)生,是否是黨員等等,對于這些數(shù)據(jù),最節(jié)約內(nèi)存的方式就是用bit去記錄,以是否是學(xué)生為例,1代表是學(xué)生,0代表不是學(xué)生。那么1000110就代表7個(gè)人中3個(gè)是學(xué)生,這就是BitMaps的存儲需求。

Bitmaps是一個(gè)可以對位進(jìn)行操作的字符串,我們可以把Bitmaps想象成是一串二進(jìn)制數(shù)字,每個(gè)位置只存儲0和1。下標(biāo)是Bitmaps的偏移量。

BitMap 就是通過一個(gè) bit 位來表示某個(gè)元素對應(yīng)的值或者狀態(tài), 其中的 key 就是對應(yīng)元素本身,實(shí)際上底層也是通過對字符串的操作來實(shí)現(xiàn)。Redis從2.2.0版本開始新增了setbit,getbit,bitcount等幾個(gè)bitmap相關(guān)命令。

雖然是新命令,但是并沒有新增新的數(shù)據(jù)類型,因?yàn)?code>setbit等命令只不過是在set上的擴(kuò)展。

使用場景一:用戶簽到

很多網(wǎng)站都提供了簽到功能(這里不考慮數(shù)據(jù)落地事宜),并且需要展示最近一個(gè)月的簽到情況

<?php
$redis = new Redis();
$redis->connect('127.0.0.1');
 
//用戶uid
$uid = 1;
 
//記錄有uid的key
$cacheKey = sprintf("sign_%d", $uid);
 
//開始有簽到功能的日期
$startDate = '2017-01-01';
 
//今天的日期
$todayDate = '2017-01-21';
 
//計(jì)算offset
$startTime = strtotime($startDate);
$todayTime = strtotime($todayDate);
$offset = floor(($todayTime - $startTime) / 86400);
 
echo "今天是第{$offset}天" . PHP_EOL;
 
//簽到
//一年一個(gè)用戶會占用多少空間呢?大約365/8=45.625個(gè)字節(jié),好小,有木有被驚呆?
$redis->setBit($cacheKey, $offset, 1);
 
//查詢簽到情況
$bitStatus = $redis->getBit($cacheKey, $offset);
echo 1 == $bitStatus ? '今天已經(jīng)簽到啦' : '還沒有簽到呢';
echo PHP_EOL;
 
//計(jì)算總簽到次數(shù)
echo $redis->bitCount($cacheKey) . PHP_EOL;
 
/**
 * 計(jì)算某段時(shí)間內(nèi)的簽到次數(shù)
 * 很不幸啊,bitCount雖然提供了start和end參數(shù),但是這個(gè)說的是字符串的位置,而不是對應(yīng)"位"的位置
 * 幸運(yùn)的是我們可以通過get命令將value取出來,自己解析。并且這個(gè)value不會太大,上面計(jì)算過一年一個(gè)用戶只需要45個(gè)字節(jié)
 * 給我們的網(wǎng)站定一個(gè)小目標(biāo),運(yùn)行30年,那么一共需要1.31KB(就問你屌不屌?)
 */
//這是個(gè)錯(cuò)誤的計(jì)算方式
echo $redis->bitCount($cacheKey, 0, 20) . PHP_EOL;

使用場景二:統(tǒng)計(jì)活躍用戶

使用時(shí)間作為cacheKey,然后用戶ID為offset,如果當(dāng)日活躍過就設(shè)置為1

那么我該如果計(jì)算某幾天/月/年的活躍用戶呢(暫且約定,統(tǒng)計(jì)時(shí)間內(nèi)只有有一天在線就稱為活躍),有請下一個(gè)redis的命令

命令 BITOP operation destkey key [key ...]

說明:對一個(gè)或多個(gè)保存二進(jìn)制位的字符串 key 進(jìn)行位元操作,并將結(jié)果保存到 destkey 上。

說明:BITOP 命令支持 AND 、 OR 、 NOT 、 XOR 這四種操作中的任意一種參數(shù)

bitop and destKey key1 key2....  //交
bitop or destKey key1 key2....   //并
bitop not destKey key1 key2....  //非
bitop xor destKey key1 key2....  //異或
<?php
//日期對應(yīng)的活躍用戶
$data = array(
    '2017-01-10' => array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),?
    '2017-01-11' => array(1, 2, 3, 4, 5, 6, 7, 8),?
    '2017-01-12' => array(1, 2, 3, 4, 5, 6),?
    '2017-01-13' => array(1, 2, 3, 4),
    '2017-01-14' => array(1, 2)?
);
//批量設(shè)置活躍狀態(tài)?
foreach ($data as $date => $uids) {
    $cacheKey = sprintf("stat_%s", $date);
    foreach ($uids as $uid) {
        $redis->setBit($cacheKey, $uid, 1);
    }
}
$redis->bitOp('AND', 'stat', 'stat_2017-01-10', 'stat_2017-01-11', 'stat_2017-01-12') . PHP_EOL;
//總活躍用戶:6?
echo "總活躍用戶:" . $redis->bitCount('stat') . PHP_EOL;
 
$redis->bitOp('AND', 'stat1', 'stat_2017-01-10', 'stat_2017-01-11', 'stat_2017-01-14') . PHP_EOL;
?
//總活躍用戶:2?
echo "總活躍用戶:" . $redis->bitCount('stat1') . PHP_EOL;
 
$redis->bitOp('AND', 'stat2', 'stat_2017-01-10', 'stat_2017-01-11') . PHP_EOL; //總活躍用戶:8?
echo "總活躍用戶:" . $redis->bitCount('stat2') . PHP_EOL;

使用場景三:用戶在線狀態(tài)

前段時(shí)間開發(fā)一個(gè)項(xiàng)目,對方給我提供了一個(gè)查詢當(dāng)前用戶是否在線的接口。不了解對方是怎么做的,自己考慮了一下,使用bitmap是一個(gè)節(jié)約空間效率又高的一種方法,只需要一個(gè)key,然后用戶ID為offset,如果在線就設(shè)置為1,不在線就設(shè)置為0,和上面的場景一樣,5000W用戶只需要6MB的空間。

<?php
//批量設(shè)置在線狀態(tài)
$uids = range(1, 500000);
foreach ($uids as $uid) {
    $redis->setBit('online', $uid, $uid % 2);
}
//一個(gè)一個(gè)獲取狀態(tài)
$uids = range(1, 500000);
$startTime = microtime(true);
foreach ($uids as $uid) {
    echo $redis->getBit('online', $uid) . PHP_EOL;
}
$endTime = microtime(true);
 
//在我的電腦上,獲取50W個(gè)用戶的狀態(tài)需要25秒?
echo "total:" . ($endTime - $startTime) . "s";

內(nèi)部編碼

這個(gè)就是Redis實(shí)現(xiàn)的BloomFilter,BloomFilter非常簡單,如下圖所示,假設(shè)已經(jīng)有3個(gè)元素a、b和c,分別通過3個(gè)hash算法h1()、h2()和h2()計(jì)算然后對一個(gè)bit進(jìn)行賦值,接下來假設(shè)需要判斷d是否已經(jīng)存在,那么也需要使用3個(gè)hash算法h1()、h2()和h2()對d進(jìn)行計(jì)算,然后得到3個(gè)bit的值,恰好這3個(gè)bit的值為1,這就能夠說明:d可能存在集合中。再判斷e,由于h1(e)算出來的bit之前的值是0,那么說明:e一定不存在集合中:

需要說明的是,bitmap并不是一種真實(shí)的數(shù)據(jù)結(jié)構(gòu),它本質(zhì)上是String數(shù)據(jù)結(jié)構(gòu),只不過操作的粒度變成了位,即bit。因?yàn)镾tring類型最大長度為512MB,所以bitmap最多可以存儲2^32個(gè)bit。 

HyperLogLog 基數(shù)統(tǒng)計(jì)

HyperLogLog算法時(shí)一種非常巧妙的近似統(tǒng)計(jì)大量去重元素?cái)?shù)量的算法,它內(nèi)部維護(hù)了16384個(gè)桶來記錄各自桶的元素?cái)?shù)量,當(dāng)一個(gè)元素過來,它會散列到其中一個(gè)桶。

當(dāng)元素到來時(shí),通過 hash 算法將這個(gè)元素分派到其中的一個(gè)小集合存儲,同樣的元素總是會散列到同樣的小集合。這樣總的計(jì)數(shù)就是所有小集合大小的總和。

使用這種方式精確計(jì)數(shù)除了可以增加元素外,還可以減少元素

一個(gè)HyperLogLog實(shí)際占用的空間大約是 13684 * 6bit / 8 = 12k 字節(jié)。但是在計(jì)數(shù)比較小的時(shí)候,大多數(shù)桶的計(jì)數(shù)值都是零。如果 12k 字節(jié)里面太多的字節(jié)都是零,那么這個(gè)空間是可以適當(dāng)節(jié)約一下的。Redis 在計(jì)數(shù)值比較小的情況下采用了稀疏存儲,稀疏存儲的空間占用遠(yuǎn)遠(yuǎn)小于 12k 字節(jié)。相對于稀疏存儲的就是密集存儲,密集存儲會恒定占用 12k 字節(jié)。

內(nèi)部編碼

HyperLogLog 整體的內(nèi)部結(jié)構(gòu)就是 HLL 對象頭 加上 16384 個(gè)桶的計(jì)數(shù)值位圖。它在 Redis 的內(nèi)部結(jié)構(gòu)表現(xiàn)就是一個(gè)字符串位圖。你可以把 HyperLogLog 對象當(dāng)成普通的字符串來進(jìn)行處理。

應(yīng)用場景

Redis 的基數(shù)統(tǒng)計(jì),這個(gè)結(jié)構(gòu)可以非常省內(nèi)存的去統(tǒng)計(jì)各種計(jì)數(shù),比如注冊 IP 數(shù)、每日訪問 IP 數(shù)、頁面實(shí)時(shí)UV)、在線用戶數(shù)等。但是它也有局限性,就是只能統(tǒng)計(jì)數(shù)量,而沒辦法去知道具體的內(nèi)容是什么。當(dāng)然用集合也可以解決這個(gè)問題。但是一個(gè)大型的網(wǎng)站,每天 IP 比如有 100 萬,粗算一個(gè) IP 消耗 15 字節(jié),那么 100 萬個(gè) IP 就是 15M。而 HyperLogLog 在 Redis 中每個(gè)鍵占用的內(nèi)容都是 12K,理論存儲近似接近 2^64 個(gè)值,不管存儲的內(nèi)容是什么,它一個(gè)基于基數(shù)估算的算法,只能比較準(zhǔn)確的估算出基數(shù),可以使用少量固定的內(nèi)存去存儲并識別集合中的唯一元素。而且這個(gè)估算的基數(shù)并不一定準(zhǔn)確,是一個(gè)帶有 0.81% 標(biāo)準(zhǔn)錯(cuò)誤的近似值。

HyperLogLog 主要的應(yīng)用場景就是進(jìn)行基數(shù)統(tǒng)計(jì)。這個(gè)問題的應(yīng)用場景其實(shí)是十分廣泛的。例如:對于 Google 主頁面而言,同一個(gè)賬戶可能會訪問 Google 主頁面多次。于是,在諸多的訪問流水中,如何計(jì)算出 Google 主頁面每天被多少個(gè)不同的賬戶訪問過就是一個(gè)重要的問題。那么對于 Google 這種訪問量巨大的網(wǎng)頁而言,其實(shí)統(tǒng)計(jì)出有十億 的訪問量或者十億零十萬的訪問量其實(shí)是沒有太多的區(qū)別的,因此,在這種業(yè)務(wù)場景下,為了節(jié)省成本,其實(shí)可以只計(jì)算出一個(gè)大概的值,而沒有必要計(jì)算出精準(zhǔn)的值

這個(gè)數(shù)據(jù)結(jié)構(gòu)的命令有三個(gè):PFADD、PFCOUNT、PFMERGE

redis> PFADD databases "Redis" "MongoDB" "MySQL"
(integer) 1
 
redis> PFADD databases "Redis"  # Redis 已經(jīng)存在,不必對估計(jì)數(shù)量進(jìn)行更新
(integer) 0
 
redis> PFCOUNT databases
(integer) 3

Geo 地理位置

Redis 的 GEO 特性在 Redis 3.2 版本中推出, 這個(gè)功能可以將用戶給定的地理位置信息儲存起來, 并對這些信息進(jìn)行操作。

GEO的數(shù)據(jù)結(jié)構(gòu)總共有六個(gè)命令:geoadd、geopos、geodist、georadius、georadiusbymember、gethash,GEO使用的是國際通用坐標(biāo)系WGS-84。

  • 1.GEOADD:添加地理位置
  • 2.GEOPOS:查詢地理位置(經(jīng)緯度),返回?cái)?shù)組
  • 3.GEODIST:計(jì)算兩位位置間的距離
  • 4.GEORADIUS:以給定的經(jīng)緯度為中心, 返回鍵包含的位置元素當(dāng)中, 與中心的距離不超過給定最大距離的所有位置元素。
  • 5.GEORADIUSBYMEMBER:以給定的地理位置為中心, 返回鍵包含的位置元素當(dāng)中, 與中心的距離不超過給定最大距離的所有位置元素。
127.0.0.1:6379> geoadd kcityGeo 116.405285 39.904989 "beijing"
(integer) 1
127.0.0.1:6379> geoadd kcityGeo 121.472644 31.231706 "shanghai"
(integer) 1 
127.0.0.1:6379> geodist kcityGeo beijing shanghai km
"1067.5980"
127.0.0.1:6379> geopos kcityGeo beijing
1) 1) "116.40528291463851929"
   2) "39.9049884229125027"
127.0.0.1:6379> geohash kcityGeo beijing
1) "wx4g0b7xrt0"
127.0.0.1:6379> georadiusbymember kcityGeo beijing 1200 km withdist withcoord asc count 5
1) 1) "beijing"
   2) "0.0000"
   3) 1) "116.40528291463851929"
      2) "39.9049884229125027"
2) 1) "shanghai"
   2) "1067.5980"
   3) 1) "121.47264629602432251"
      2) "31.23170490709807012"

內(nèi)部編碼

但是,需要說明的是,Geo本身不是一種數(shù)據(jù)結(jié)構(gòu),它本質(zhì)上還是借助于Sorted Set(ZSET),并且使用GeoHash技術(shù)進(jìn)行填充。Redis中將經(jīng)緯度使用52位的整數(shù)進(jìn)行編碼,放進(jìn)zset中,score就是GeoHash的52位整數(shù)值。在使用Redis進(jìn)行Geo查詢時(shí),其內(nèi)部對應(yīng)的操作其實(shí)就是zset(skiplist)的操作。通過zset的score進(jìn)行排序就可以得到坐標(biāo)附近的其它元素,通過將score還原成坐標(biāo)值就可以得到元素的原始坐標(biāo)。

總之,Redis中處理這些地理位置坐標(biāo)點(diǎn)的思想是:二維平面坐標(biāo)點(diǎn) --> 一維整數(shù)編碼值 --> zset(score為編碼值) --> zrangebyrank(獲取score相近的元素)、zrangebyscore --> 通過score(整數(shù)編碼值)反解坐標(biāo)點(diǎn) --> 附近點(diǎn)的地理位置坐標(biāo)。

應(yīng)用場景

比如現(xiàn)在比較火的直播業(yè)務(wù),我們需要檢索附近的主播,那么GEO就可以很好的實(shí)現(xiàn)這個(gè)功能。

  • 一是主播開播的時(shí)候?qū)懭胫鞑d的經(jīng)緯度
  • 二是主播關(guān)播的時(shí)候刪除主播Id元素,這樣就維護(hù)了一個(gè)具有位置信息的在線主播集合提供給線上檢索

Streams 流

這是Redis5.0引入的全新數(shù)據(jù)結(jié)構(gòu),用一句話概括Streams就是Redis實(shí)現(xiàn)的內(nèi)存版kafka。支持多播的可持久化的消息隊(duì)列,用于實(shí)現(xiàn)發(fā)布訂閱功能,借鑒了 kafka 的設(shè)計(jì)。

Redis Stream的結(jié)構(gòu)有一個(gè)消息鏈表,將所有加入的消息都串起來,每個(gè)消息都有一個(gè)唯一的ID和對應(yīng)的內(nèi)容。消息是持久化的,Redis重啟后,內(nèi)容還在。

每個(gè)Stream都有唯一的名稱,它就是Redis的key,在我們首次使用xadd指令追加消息時(shí)自動創(chuàng)建。

每個(gè)Stream都可以掛多個(gè)消費(fèi)組,每個(gè)消費(fèi)組會有個(gè)游標(biāo)last_delivered_id在Stream數(shù)組之上往前移動,表示當(dāng)前消費(fèi)組已經(jīng)消費(fèi)到哪條消息了。每個(gè)消費(fèi)組都有一個(gè)Stream內(nèi)唯一的名稱,消費(fèi)組不會自動創(chuàng)建,它需要單獨(dú)的指令xgroup create進(jìn)行創(chuàng)建,需要指定從Stream的某個(gè)消息ID開始消費(fèi),這個(gè)ID用來初始化last_delivered_id變量。

每個(gè)消費(fèi)組(Consumer Group)的狀態(tài)都是獨(dú)立的,相互不受影響。也就是說同一份Stream內(nèi)部的消息會被每個(gè)消費(fèi)組都消費(fèi)到。

同一個(gè)消費(fèi)組(Consumer Group)可以掛接多個(gè)消費(fèi)者(Consumer),這些消費(fèi)者之間是競爭關(guān)系,任意一個(gè)消費(fèi)者讀取了消息都會使游標(biāo)last_delivered_id往前移動。每個(gè)消費(fèi)者者有一個(gè)組內(nèi)唯一名稱。

消費(fèi)者(Consumer)內(nèi)部會有個(gè)狀態(tài)變量pending_ids,它記錄了當(dāng)前已經(jīng)被客戶端讀取的消息,但是還沒有ack。如果客戶端沒有ack,這個(gè)變量里面的消息ID會越來越多,一旦某個(gè)消息被ack,它就開始減少。這個(gè)pending_ids變量在Redis官方被稱之為PEL,也就是Pending Entries List,這是一個(gè)很核心的數(shù)據(jù)結(jié)構(gòu),它用來確??蛻舳酥辽傧M(fèi)了消息一次,而不會在網(wǎng)絡(luò)傳輸?shù)闹型緛G失了沒處理。

  • 消息ID:消息ID的形式是timestampInMillis-sequence,例如1527846880572-5,它表示當(dāng)前的消息在毫米時(shí)間戳1527846880572時(shí)產(chǎn)生,并且是該毫秒內(nèi)產(chǎn)生的第5條消息。消息ID可以由服務(wù)器自動生成,也可以由客戶端自己指定,但是形式必須是整數(shù)-整數(shù),而且必須是后面加入的消息的ID要大于前面的消息ID。
  • 消息內(nèi)容:消息內(nèi)容就是鍵值對,形如hash結(jié)構(gòu)的鍵值對,這沒什么特別之處。
127.0.0.1:6379> XADD mystream * field1 value1 field2 value2 field3 value3
"1588491680862-0"
127.0.0.1:6379> XADD mystream * username lisi age 18
"1588491854070-0"
127.0.0.1:6379> xlen mystream
(integer) 2
127.0.0.1:6379> XADD mystream * username lisi age 18
"1588491861215-0"
127.0.0.1:6379> xrange mystream - + 
1) 1) "1588491680862-0"
   2) 1) "field1"
      2) "value1"
      3) "field2"
      4) "value2"
      5) "field3"
      6) "value3"
2) 1) "1588491854070-0"
   2) 1) "username"
      2) "lisi"
      3) "age"
      4) "18"
3) 1) "1588491861215-0"
   2) 1) "username"
      2) "lisi"
      3) "age"
      4) "18"
127.0.0.1:6379> xdel mystream 1588491854070-0 
(integer) 1
127.0.0.1:6379> xrange mystream - + 
1) 1) "1588491680862-0"
   2) 1) "field1"
      2) "value1"
      3) "field2"
      4) "value2"
      5) "field3"
      6) "value3"
2) 1) "1588491861215-0"
   2) 1) "username"
      2) "lisi"
      3) "age"
      4) "18"
127.0.0.1:6379> xlen mystream
(integer) 2

內(nèi)部編碼

streams底層的數(shù)據(jù)結(jié)構(gòu)是radix tree:Radix Tree(基數(shù)樹) 事實(shí)上就幾乎相同是傳統(tǒng)的二叉樹。僅僅是在尋找方式上,以一個(gè)unsigned int類型數(shù)為例,利用這個(gè)數(shù)的每個(gè)比特位作為樹節(jié)點(diǎn)的推斷。

能夠這樣說,比方一個(gè)數(shù)10001010101010110101010,那么依照Radix 樹的插入就是在根節(jié)點(diǎn),假設(shè)遇到0,就指向左節(jié)點(diǎn),假設(shè)遇到1就指向右節(jié)點(diǎn),在插入過程中構(gòu)造樹節(jié)點(diǎn),在刪除過程中刪除樹節(jié)點(diǎn)。如下是一個(gè)保存了7個(gè)單詞的Radix Tree:

應(yīng)用場景總結(jié)

實(shí)際上,所謂的應(yīng)用場景,其實(shí)就是合理的利用Redis本身的數(shù)據(jù)結(jié)構(gòu)的特性來完成相關(guān)業(yè)務(wù)功能


常用內(nèi)存優(yōu)化手段與參數(shù)

通過我們上面的一些實(shí)現(xiàn)上的分析可以看出 redis 實(shí)際上的內(nèi)存管理成本非常高,即占用了過多的內(nèi)存,作者對這點(diǎn)也非常清楚,所以提供了一系列的參數(shù)和手段來控制和節(jié)省內(nèi)存,我們分別來討論下。

首先最重要的一點(diǎn)是不要開啟 Redis 的 VM 選項(xiàng),即虛擬內(nèi)存功能,這個(gè)本來是作為 Redis 存儲超出物理內(nèi)存數(shù)據(jù)的一種數(shù)據(jù)在內(nèi)存與磁盤換入換出的一個(gè)持久化策略,但是其內(nèi)存管理成本也非常的高,并且我們后續(xù)會分析此種持久化策略并不成熟,所以要關(guān)閉 VM 功能,請檢查你的 redis.conf 文件中 vm-enabled 為 no。

 其次最好設(shè)置下 redis.conf 中的 maxmemory 選項(xiàng),該選項(xiàng)是告訴 Redis 當(dāng)使用了多少物理內(nèi)存后就開始拒絕后續(xù)的寫入請求,該參數(shù)能很好的保護(hù)好你的 Redis 不會因?yàn)槭褂昧诉^多的物理內(nèi)存而導(dǎo)致 swap,最終嚴(yán)重影響性能甚至崩潰。

 另外 Redis 為不同數(shù)據(jù)類型分別提供了一組參數(shù)來控制內(nèi)存使用,我們在前面詳細(xì)分析過 Redis Hash 是 value 內(nèi)部為一個(gè) HashMap,如果該 Map 的成員數(shù)比較少,則會采用類似一維線性的緊湊格式來存儲該 Map,即省去了大量指針的內(nèi)存開銷,這個(gè)參數(shù)控制對應(yīng)在 redis.conf 配置文件中下面2項(xiàng):

hash-max-ziplist-entries 64
hash-max-zipmap-value    512

含義是當(dāng) value 這個(gè) Map 內(nèi)部不超過多少個(gè)成員時(shí)會采用線性緊湊格式存儲,默認(rèn)是64,即 value 內(nèi)部有64個(gè)以下的成員就是使用線性緊湊存儲,超過該值自動轉(zhuǎn)成真正的 HashMap。

hash-max-zipmap-value 含義是當(dāng) value 這個(gè) Map 內(nèi)部的每個(gè)成員值長度不超過多少字節(jié)就會采用線性緊湊存儲來節(jié)省空間。

以上2個(gè)條件任意一個(gè)條件超過設(shè)置值都會轉(zhuǎn)換成真正的 HashMap,也就不會再節(jié)省內(nèi)存了,那么這個(gè)值是不是設(shè)置的越大越好呢,答案當(dāng)然是否定的,HashMap 的優(yōu)勢就是查找和操作的時(shí)間復(fù)雜度都是 O(1) 的,而放棄 Hash 采用一維存儲則是 O(n) 的時(shí)間復(fù)雜度,如果成員數(shù)量很少,則影響不大,否則會嚴(yán)重影響性能,所以要權(quán)衡好這個(gè)值的設(shè)置,總體上還是最根本的時(shí)間成本和空間成本上的權(quán)衡。

同樣類似的參數(shù)還有

list-max-ziplist-entries 512  

說明:list 數(shù)據(jù)類型多少節(jié)點(diǎn)以下會采用去指針的緊湊存儲格式。

list-max-ziplist-value   64 

說明:list 數(shù)據(jù)類型節(jié)點(diǎn)值大小小于多少字節(jié)會采用緊湊存儲格式。

set-max-intset-entries 512

說明:set 數(shù)據(jù)類型內(nèi)部數(shù)據(jù)如果全部是數(shù)值型,且包含多少節(jié)點(diǎn)以下會采用緊湊格式存儲。

最后想說的是 Redis 內(nèi)部實(shí)現(xiàn)沒有對內(nèi)存分配方面做過多的優(yōu)化,在一定程度上會存在內(nèi)存碎片,不過大多數(shù)情況下這個(gè)不會成為 Redis 的性能瓶 頸,不過如果在 Redis 內(nèi)部存儲的大部分?jǐn)?shù)據(jù)是數(shù)值型的話,Redis 內(nèi)部采用了一個(gè) shared integer 的方式來省去分配內(nèi)存的開銷,即在系統(tǒng)啟動時(shí)先分配一個(gè)從 1~n 那么多個(gè)數(shù)值對象放在一個(gè)池子中,如果存儲的數(shù)據(jù)恰好是這個(gè)數(shù)值范圍內(nèi)的數(shù)據(jù),則直接從池子里取出該對象,并且通過引用計(jì)數(shù)的方式來共享,這樣在系統(tǒng)存儲了大量數(shù)值下,也能一定程度上節(jié)省內(nèi)存并且提高性能,這個(gè)參數(shù)值 n 的設(shè)置需要修改源代碼中的一行宏定義 REDIS_SHARED_INTEGERS,該值 默認(rèn)是 10000,可以根據(jù)自己的需要進(jìn)行修改,修改后重新編譯就可以了。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Redis分布式鎖如何實(shí)現(xiàn)續(xù)期

    Redis分布式鎖如何實(shí)現(xiàn)續(xù)期

    這篇文章主要介紹了Redis分布式鎖如何實(shí)現(xiàn)續(xù)期的操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Redis 刪除策略的三種實(shí)現(xiàn)

    Redis 刪除策略的三種實(shí)現(xiàn)

    本文主要介紹了Redis 刪除策略的三種實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • redis中l(wèi)ua腳本使用教程

    redis中l(wèi)ua腳本使用教程

    在使用redis的過程中,發(fā)現(xiàn)有些時(shí)候需要原子性去操作redis命令,而redis的lua腳本正好可以實(shí)現(xiàn)這一功能。這篇文章主要介紹了redis中l(wèi)ua腳本的簡單使用,需要的朋友可以參考下
    2021-10-10
  • redis哨兵常用命令和監(jiān)控示例詳解

    redis哨兵常用命令和監(jiān)控示例詳解

    哨兵模式是一種特殊的模式,首先Redis提供了哨兵的命令,哨兵是一個(gè)獨(dú)立的進(jìn)程,作為進(jìn)程,它會獨(dú)立運(yùn)行,接下來通過本文給大家講解redis哨兵常用命令和監(jiān)控知識,感興趣的朋友一起學(xué)習(xí)吧
    2021-05-05
  • 關(guān)于Redis的內(nèi)存淘汰策略詳解

    關(guān)于Redis的內(nèi)存淘汰策略詳解

    當(dāng)內(nèi)存空間使用達(dá)到限制時(shí),Redis 會根據(jù)配置策略來選擇不同處理方式,要么返回 errors,要么按照不同的策略算法來清除一些舊數(shù)據(jù),達(dá)到回收內(nèi)存的目的,這就是 Redis 的內(nèi)存淘汰,有些文章中,內(nèi)存淘汰也叫緩存回收,需要的朋友可以參考下
    2023-05-05
  • redis+lua實(shí)現(xiàn)分布式限流的示例

    redis+lua實(shí)現(xiàn)分布式限流的示例

    本文主要介紹了redis+lua實(shí)現(xiàn)分布式限流的示例,可以實(shí)現(xiàn)復(fù)雜的限流邏輯,如滑動窗口限流,并且避免了多步操作導(dǎo)致的并發(fā)問題,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-03-03
  • redis集群主從節(jié)點(diǎn)自動切換方式

    redis集群主從節(jié)點(diǎn)自動切換方式

    這篇文章主要介紹了redis集群主從節(jié)點(diǎn)自動切換方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Redis實(shí)現(xiàn)接口防抖的示例代碼

    Redis實(shí)現(xiàn)接口防抖的示例代碼

    本文介紹了一種通過AOP、自定義注解和Redis實(shí)現(xiàn)的接口防抖技術(shù),這種方法能有效避免因網(wǎng)絡(luò)波動等原因短時(shí)間內(nèi)發(fā)送多個(gè)請求導(dǎo)致的數(shù)據(jù)重復(fù)添加問題,感興趣的可以了解一下
    2024-10-10
  • 通過redis的腳本lua如何實(shí)現(xiàn)搶紅包功能

    通過redis的腳本lua如何實(shí)現(xiàn)搶紅包功能

    這篇文章主要給大家介紹了關(guān)于通過redis的腳本lua如何實(shí)現(xiàn)搶紅包功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 基于Redis實(shí)現(xiàn)共享Session登錄的實(shí)現(xiàn)

    基于Redis實(shí)現(xiàn)共享Session登錄的實(shí)現(xiàn)

    本文主要介紹了基于Redis實(shí)現(xiàn)共享Session登錄的實(shí)現(xiàn),包括發(fā)送短信驗(yàn)證碼、短信驗(yàn)證碼登錄和注冊、以及登錄狀態(tài)校驗(yàn)的流程,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-03-03

最新評論

日本中文字幕一二区视频| 人人妻人人爽人人添夜| 国产在线观看黄色视频| 日韩熟女系列一区二区三区| 成年午夜影片国产片| 888欧美视频在线| 男人操女人的逼免费视频| 激情啪啪啪啪一区二区三区| yy96视频在线观看| av新中文天堂在线网址| xxx日本hd高清| 日本韩国亚洲综合日韩欧美国产| 国产白嫩美女一区二区| 少妇露脸深喉口爆吞精| 福利午夜视频在线观看| www天堂在线久久| 91小伙伴中女熟女高潮| 国产成人精品午夜福利训2021| 北条麻妃肉色丝袜视频| 性欧美日本大妈母与子| 欧美日韩v中文在线| 欧美在线精品一区二区三区视频 | 色婷婷久久久久swag精品| 青青尤物在线观看视频网站| 色综合天天综合网国产成人| 青娱乐极品视频青青草| 中文字幕日韩人妻在线三区| 东京热男人的av天堂| 成熟丰满熟妇高潮xx×xx| 亚洲精品午夜久久久久| 国产午夜福利av导航| 天天躁日日躁狠狠躁躁欧美av| 自拍偷拍亚洲另类色图| 日本少妇人妻xxxxxhd| 亚洲欧美清纯唯美另类| 免费十精品十国产网站| 国产成人精品午夜福利训2021| 国产精品sm调教视频| xxx日本hd高清| 欧美亚洲国产成人免费在线| 国产一区自拍黄视频免费观看| 亚洲另类图片蜜臀av| 欧美日本国产自视大全| 在线制服丝袜中文字幕| 99精品视频之69精品视频| 大香蕉大香蕉在线有码 av| 91麻豆精品传媒国产黄色片| 中国老熟女偷拍第一页| 国产又粗又黄又硬又爽| 91精品国产黑色丝袜| 老司机你懂得福利视频| 操日韩美女视频在线免费看| 中文字幕无码一区二区免费| 日韩一个色综合导航| 精品亚洲国产中文自在线| 国产之丝袜脚在线一区二区三区 | 97人人模人人爽人人喊| 亚洲精品亚洲人成在线导航| 日日摸夜夜添夜夜添毛片性色av| 国产欧美精品免费观看视频| 曰本无码人妻丰满熟妇啪啪| 国产又粗又猛又爽又黄的视频在线| 夜女神免费福利视频| 日本韩国免费一区二区三区视频| 亚洲av天堂在线播放| sspd152中文字幕在线| 老司机99精品视频在线观看| 午夜91一区二区三区| 亚洲午夜高清在线观看| 在线播放国产黄色av| 精品亚洲中文字幕av| 国产精品一区二区三区蜜臀av| 播放日本一区二区三区电影| 91久久精品色伊人6882| 亚洲精品久久视频婷婷| 粉嫩av蜜乳av蜜臀| 中文字幕在线乱码一区二区| 精品人妻伦一二三区久| 99的爱精品免费视频| 视频一区二区在线免费播放| 337p日本大胆欧美人| 久久尻中国美女视频| 欧美成人黄片一区二区三区 | 水蜜桃一区二区三区在线观看视频| 黄色视频成年人免费观看| 老司机午夜精品视频资源| 偷拍自拍亚洲视频在线观看| 男大肉棒猛烈插女免费视频| 视频二区在线视频观看| 快点插进来操我逼啊视频| 国产乱子伦精品视频潮优女| 99一区二区在线观看| 国产1区,2区,3区| av视屏免费在线播放| 国产大鸡巴大鸡巴操小骚逼小骚逼| 欧美成人精品在线观看| 777奇米久久精品一区| 在线成人日韩av电影| 大胸性感美女羞爽操逼毛片| 国产久久久精品毛片| 日本阿v视频在线免费观看| 91‖亚洲‖国产熟女| 日比视频老公慢点好舒服啊| 真实国模和老外性视频| 精品首页在线观看视频| 欧美老鸡巴日小嫩逼| 丰满熟女午夜福利视频| 亚洲无码一区在线影院| 99精品国产自在现线观看| 欧美成人综合视频一区二区 | 欧美一区二区三区激情啪啪啪| 色婷婷六月亚洲综合香蕉| 国产熟妇乱妇熟色T区| 国产一区二区视频观看| 男人和女人激情视频| 性欧美激情久久久久久久| 欧美一区二区中文字幕电影 | 亚洲av日韩精品久久久久久hd| 青青社区2国产视频| 91精品国产91久久自产久强| 男人操女人逼逼视频网站| 久草极品美女视频在线观看| 久久热久久视频在线观看| 超黄超污网站在线观看| 日韩a级黄色小视频| 午夜婷婷在线观看视频| 大屁股肉感人妻中文字幕在线| 福利午夜视频在线合集| 欧美伊人久久大香线蕉综合| 岛国免费大片在线观看| 大鸡吧插逼逼视频免费看| 视频在线亚洲一区二区| 青青草精品在线视频观看| 国产一区二区三免费视频 | 天天做天天干天天操天天射| 熟女在线视频一区二区三区| 亚洲 色图 偷拍 欧美| 性欧美日本大妈母与子| 在线免费观看av日韩| 亚洲欧洲av天堂综合| 午夜国产福利在线观看| 婷婷色国产黑丝少妇勾搭AV| 国产日韩欧美视频在线导航 | 欧美日韩一区二区电影在线观看 | sspd152中文字幕在线| 一区二区麻豆传媒黄片| 在线免费观看日本片| 国产chinesehd精品麻豆| 成人sm视频在线观看| 最新91九色国产在线观看| 亚洲熟妇无码一区二区三区| 中文字幕无码一区二区免费| 久久久久久cao我的性感人妻 | 最近中文字幕国产在线| 日韩av有码一区二区三区4| 国产亚洲视频在线二区| 888欧美视频在线| 日韩人妻在线视频免费| 亚洲欧美成人综合视频| 欧美一级色视频美日韩| 18禁污污污app下载| 国产成人精品av网站| 欧美偷拍自拍色图片| rct470中文字幕在线| 国产综合视频在线看片| nagger可以指黑人吗| 一级A一级a爰片免费免会员| 2022国产综合在线干| 成人午夜电影在线观看 久久| 精品久久久久久久久久久a√国产| 三上悠亚和黑人665番号| 老司机欧美视频在线看| 农村胖女人操逼视频| 国产在线观看黄色视频| 国产在线免费观看成人| 亚洲男人在线天堂网| av在线shipin| 久草视频在线免播放| 在线观看av亚洲情色| 天天做天天干天天舔| 日韩美女综合中文字幕pp| 国产男女视频在线播放| 亚洲av一妻不如妾| 韩国爱爱视频中文字幕| 白嫩白嫩美女极品国产在线观看| 大香蕉伊人中文字幕| 2022精品久久久久久中文字幕| 亚洲的电影一区二区三区| 亚洲超碰97人人做人人爱| 岛国一区二区三区视频在线| 日本a级视频老女人| 国产精品人妻一区二区三区网站| 自拍偷拍 国产资源| 中文字幕综合一区二区| 最新中文字幕免费视频| 丝袜长腿第一页在线| 乱亲女秽乱长久久久| 五十路熟女av天堂| 在线国产日韩欧美视频| 影音先锋女人av噜噜色| 美女视频福利免费看| 欧洲黄页网免费观看| 亚洲午夜电影之麻豆| av在线观看网址av| 亚洲福利精品视频在线免费观看| 人妻av无码专区久久绿巨人| 在线观看av2025| 岛国黄色大片在线观看| 福利一二三在线视频观看| 中文字幕日韩91人妻在线| 亚洲av色香蕉一区二区三区 | 综合精品久久久久97| 亚洲天堂精品久久久| 大香蕉伊人中文字幕| 丁香花免费在线观看中文字幕| 成人乱码一区二区三区av| 日韩精品激情在线观看| 久久免费看少妇高潮完整版| 任你操视频免费在线观看| 精品国产乱码一区二区三区乱| 国产高清精品一区二区三区| 最新欧美一二三视频| 日韩在线视频观看有码在线| 天堂av在线播放免费| 精品一区二区亚洲欧美| 精品一线二线三线日本| 污污小视频91在线观看| 一区二区三区的久久的蜜桃的视频| 色吉吉影音天天干天天操| 久碰精品少妇中文字幕av| 视频 一区二区在线观看| 国产精品熟女久久久久浪潮| 中文乱理伦片在线观看| 欧美美女人体视频一区| 亚洲精品乱码久久久久久密桃明| 大白屁股精品视频国产| av在线资源中文字幕| 日本裸体熟妇区二区欧美| 香港一级特黄大片在线播放| 天天干天天操天天玩天天射| 99国产精品窥熟女精品| 超pen在线观看视频公开97| 99久久激情婷婷综合五月天| 91chinese在线视频| 蜜桃视频在线欧美一区| 99精品免费久久久久久久久a| 日韩欧美一级aa大片| 中国熟女@视频91| 日本福利午夜电影在线观看| 亚洲精品乱码久久久本| 热久久只有这里有精品| 日韩一个色综合导航| 亚洲免费va在线播放| 亚洲av无女神免非久久| 久久久久久久久久久久久97| 自拍 日韩 欧美激情| 一区二区三区四区视频| 涩爱综合久久五月蜜臀| 综合页自拍视频在线播放| av天堂中文免费在线| 宅男噜噜噜666免费观看| 欧美aa一级一区三区四区| 国产精品亚洲在线观看| 亚洲视频乱码在线观看| 初美沙希中文字幕在线| 日本一二三中文字幕| 天天日天天做天天日天天做| 亚洲欧美自拍另类图片| 国产超码片内射在线| 欧美另类重口味极品在线观看| 午夜极品美女福利视频| 精品久久久久久久久久久久人妻| 国产亚洲欧美另类在线观看| 国产精品国产三级国产精东 | 日日操夜夜撸天天干| 早川濑里奈av黑人番号| 亚洲欧美激情人妻偷拍| 在线免费观看视频一二区| 99热这里只有精品中文| 在线观看免费av网址大全| 国产日韩av一区二区在线| 瑟瑟视频在线观看免费视频| 久久久精品欧洲亚洲av| 国产成人午夜精品福利| 中文字幕在线视频一区二区三区| 亚洲国产香蕉视频在线播放| 亚洲高清视频在线不卡| 国产成人无码精品久久久电影 | 91免费观看在线网站| 亚洲精品福利网站图片| 日本少妇高清视频xxxxx | 久久久久久性虐视频| 91精品国产91青青碰| 日韩美女综合中文字幕pp| 99国内精品永久免费视频| 天天操天天干天天日狠狠插| 亚洲中文字幕综合小综合| 欧美怡红院视频在线观看| av大全在线播放免费| 阴茎插到阴道里面的视频| 欧美日韩高清午夜蜜桃大香蕉| 99热99这里精品6国产| 1000部国产精品成人观看视频| 日本性感美女写真视频| 天天色天天操天天透| 插小穴高清无码中文字幕| av俺也去在线播放| 粉嫩欧美美人妻小视频| 自拍偷拍 国产资源| 岛国黄色大片在线观看| 中文字幕欧美日韩射射一| 国产又大又黄免费观看| 99热这里只有国产精品6| 久久综合老鸭窝色综合久久| 老司机午夜精品视频资源| 亚洲视频在线视频看视频在线| 欧美精品欧美极品欧美视频| 亚洲精品国品乱码久久久久| 久草福利电影在线观看| 亚洲精品国偷自产在线观看蜜桃| 人妻久久无码中文成人| 粉嫩av蜜乳av蜜臀| 综合激情网激情五月天| 日辽宁老肥女在线观看视频| 无码日韩人妻精品久久| 美女操逼免费短视频下载链接| 日韩中文字幕精品淫| 美女av色播在线播放| 亚洲欧美综合在线探花| av天堂中文免费在线| 秋霞午夜av福利经典影视| 精品一区二区三区在线观看| 亚洲熟女女同志女同| 免费在线观看视频啪啪| 精品av久久久久久久| 熟女妇女老妇一二三区| 91人妻精品久久久久久久网站| 超碰公开大香蕉97| 熟女在线视频一区二区三区| 韩国亚洲欧美超一级在线播放视频| 又色又爽又黄的美女裸体| 欧美成人精品在线观看| 欧美性受xx黑人性猛交| 亚洲综合图片20p| 东京干手机福利视频| 国产精品一二三不卡带免费视频| 人妻av无码专区久久绿巨人| 色秀欧美视频第一页| 欧美国品一二三产区区别| 老司机免费福利视频网| 美味人妻2在线播放| 国产综合视频在线看片| 可以在线观看的av中文字幕| av网址国产在线观看| 9色在线视频免费观看| 国产视频一区在线观看| 国内自拍第一页在线观看| 午夜毛片不卡在线看| 亚洲最大免费在线观看| 国产精品国产三级国产精东| aaa久久久久久久久| 57pao国产一区二区| 久久久久91精品推荐99| 天天操天天干天天艹| 亚洲国产中文字幕啊啊啊不行了 | 国产一区二区视频观看| 成年女人免费播放视频| 3D动漫精品啪啪一区二区下载| 久久久久久久精品成人热| 亚洲一区二区三区uij| 中文字幕国产专区欧美激情| 小泽玛利亚视频在线观看| 97国产福利小视频合集| 天天日天天天天天天天天天天| 亚洲熟妇x久久av久久| 香蕉av影视在线观看| 中文字幕在线观看国产片| 精品一区二区亚洲欧美| 97国产在线av精品| 黄色成年网站午夜在线观看| 国产一区av澳门在线观看| av天堂中文字幕最新| 骚货自慰被发现爆操| 国产高潮无码喷水AV片在线观看| 国产真实乱子伦a视频| 人妻少妇精品久久久久久| 青春草视频在线免费播放| 偷拍3456eee| 久久精品国产亚洲精品166m| 天天色天天舔天天射天天爽| 一区二区三区四区视频在线播放 | 亚洲成人av一区久久| 4个黑人操素人视频网站精品91| 在线免费观看视频一二区| 日本免费午夜视频网站| 国产成人精品福利短视频| 久久精品视频一区二区三区四区| 亚洲va天堂va国产va久| av男人天堂狠狠干| av一本二本在线观看| 综合一区二区三区蜜臀| 97年大学生大白天操逼| 亚洲在线观看中文字幕av| 人妻最新视频在线免费观看| www久久久久久久久久久| 国产普通话插插视频| 国产午夜激情福利小视频在线| 亚洲成高清a人片在线观看| 免费成人va在线观看| 亚洲av极品精品在线观看| 婷婷久久久久深爱网| 日韩一个色综合导航| 扒开腿挺进肉嫩小18禁视频| 国产精品人久久久久久| 亚洲另类综合一区小说| 亚洲综合色在线免费观看| 91精品国产高清自在线看香蕉网 | 日本特级片中文字幕| 精品国产高潮中文字幕| 中出中文字幕在线观看| 国产之丝袜脚在线一区二区三区| 又色又爽又黄又刺激av网站| 1000小视频在线| 亚洲一级av大片免费观看| 成熟熟女国产精品一区| 亚洲一区二区三区精品乱码| 99国内精品永久免费视频| 黄片三级三级三级在线观看| 成人sm视频在线观看| 初美沙希中文字幕在线| 丁香花免费在线观看中文字幕| 国产麻豆剧传媒精品国产av蜜桃| 午夜免费体验区在线观看| 久久久久五月天丁香社区| brazzers欧熟精品系列| 51国产偷自视频在线播放| 国产精品污污污久久| 午夜毛片不卡免费观看视频| 偷拍自拍视频图片免费| 成年美女黄网站18禁久久| 国产精品自拍偷拍a| 欧美男人大鸡吧插女人视频| 亚洲区欧美区另类最新章节| 老司机免费视频网站在线看| 不卡日韩av在线观看| 在线免费观看日本伦理| 一区二区三区激情在线| 绝顶痉挛大潮喷高潮无码| 三级等保密码要求条款| 亚洲国产中文字幕啊啊啊不行了| 亚洲成人av在线一区二区| 国产午夜激情福利小视频在线| 人人妻人人爽人人添夜| 欧美日韩不卡一区不区二区| 亚洲激情偷拍一区二区| 国产91久久精品一区二区字幕| 亚洲国产中文字幕啊啊啊不行了| japanese日本熟妇另类| 中文字幕在线第一页成人 | 国产精品自偷自拍啪啪啪| 中文字幕在线观看国产片| 爆乳骚货内射骚货内射在线| 国产夫妻视频在线观看免费| 欧美精产国品一二三区| 黑人借宿ntr人妻的沦陷2| 国产丰满熟女成人视频| 欧美精品亚洲精品日韩在线| 日本少妇精品免费视频| 国产精品久久久久网| 操的小逼流水的文章| 亚洲成人av一区在线| 97香蕉碰碰人妻国产樱花| 人妻少妇亚洲一区二区| 中文字幕日韩人妻在线三区| 精品首页在线观看视频| 性色蜜臀av一区二区三区| aaa久久久久久久久| 免费费一级特黄真人片| 天天日天天干天天搡| 天干天天天色天天日天天射| 四川五十路熟女av| 伊人开心婷婷国产av| 青青青青青青青青青国产精品视频 | 天天干天天操天天摸天天射| 人妻凌辱欧美丰满熟妇| 天天日天天透天天操| avjpm亚洲伊人久久| av在线播放国产不卡| 欧美日韩精品永久免费网址| 成年人免费看在线视频| 日韩美在线观看视频黄| 中文字幕 人妻精品| 99热这里只有国产精品6| 97色视频在线观看| 亚洲在线观看中文字幕av| 毛片一级完整版免费| 久久精品国产23696| 精品乱子伦一区二区三区免费播| 亚洲欧美色一区二区| 黑人性生活视频免费看| 家庭女教师中文字幕在线播放| 91精品国产91青青碰| 欧美日本国产自视大全| 亚洲中文字幕校园春色| 国产中文精品在线观看| 免费观看国产综合视频| 阴茎插到阴道里面的视频| 天天插天天狠天天操| 亚洲欧美福利在线观看| 亚洲中文字幕校园春色| 日曰摸日日碰夜夜爽歪歪| 亚洲熟女久久久36d| 精品人妻一二三区久久| 精品91高清在线观看| 91破解版永久免费| 91chinese在线视频| 2017亚洲男人天堂| 午夜婷婷在线观看视频| 亚洲 中文字幕在线 日韩| 熟女人妻在线观看视频| 亚洲最大免费在线观看| 日本xx片在线观看| 女同互舔一区二区三区| 亚洲午夜电影之麻豆| 亚洲视频乱码在线观看| 亚洲推理片免费看网站| 一区国内二区日韩三区欧美| 国产美女午夜福利久久| 青青青国产免费视频| 天天日天天干天天插舔舔| 成人av电影免费版| 在线国产精品一区二区三区| 久草视频福利在线首页| 亚洲中文字幕国产日韩| 欧美 亚洲 另类综合| 青青青青青手机视频| 青娱乐极品视频青青草| 久久精品在线观看一区二区| 91在线免费观看成人| 中文字幕,亚洲人妻| 日本阿v视频在线免费观看| 少妇一区二区三区久久久| 欧美成人精品欧美一级黄色| 午夜精品一区二区三区4| 白白操白白色在线免费视频 | 欧美偷拍自拍色图片| 无码日韩人妻精品久久| 又大又湿又爽又紧A视频| 国产一区二区在线欧美| 一区二区三区美女毛片| 91香蕉成人app下载| 91九色porny国产在线| 欧美日本国产自视大全| 日本熟妇一区二区x x| 夏目彩春在线中文字幕| 中国熟女一区二区性xx| 夜色撩人久久7777| 女同性ⅹxx女同hd| 不卡精品视频在线观看| 日本成人一区二区不卡免费在线| 欧美黄片精彩在线免费观看| h国产小视频福利在线观看| 蜜桃视频17c在线一区二区| 国产成人小视频在线观看无遮挡| 日本午夜爽爽爽爽爽视频在线观看 | 亚洲成人国产综合一区| 馒头大胆亚洲一区二区| 80电影天堂网官网| 中文字幕 亚洲av| 香蕉av影视在线观看| 人妻在线精品录音叫床| 国语对白xxxx乱大交| 人妻另类专区欧美制服| yellow在线播放av啊啊啊| 午夜精品亚洲精品五月色| 天堂va蜜桃一区入口| 91久久国产成人免费网站| 欧美老鸡巴日小嫩逼| 98精产国品一二三产区区别| 人妻素人精油按摩中出| 东京干手机福利视频| 久久久久久久久久性潮| 91在线免费观看成人| 欧美国产亚洲中英文字幕| 久草视频在线一区二区三区资源站| 国产亚州色婷婷久久99精品| 传媒在线播放国产精品一区| 国产亚洲精品视频合集| 亚洲av无女神免非久久| 亚洲 欧美 精品 激情 偷拍| 在线免费观看99视频| 蝴蝶伊人久久中文娱乐网| 日本人竟这样玩学生妹| av亚洲中文天堂字幕网| 久久精品亚洲成在人线a| 亚洲精品高清自拍av| 大陆av手机在线观看| 少妇与子乱在线观看| 97国产在线av精品| 一区二区三区毛片国产一区| 亚洲1069综合男同| 久久久精品999精品日本| 肏插流水妹子在线乐播下载 | 日本少妇高清视频xxxxx | 成人福利视频免费在线| 亚洲免费在线视频网站| 亚洲精品三级av在线免费观看| 岛国av高清在线成人在线| 99精品国自产在线人| 91人妻精品一区二区久久| 亚洲国产成人最新资源| 看一级特黄a大片日本片黑人| 色爱av一区二区三区| 动漫美女的小穴视频| 9国产精品久久久久老师| 国产揄拍高清国内精品对白| 东京干手机福利视频| 80电影天堂网官网| 欧美中国日韩久久精品| 91精品综合久久久久3d动漫 | 亚洲综合另类精品小说| 521精品视频在线观看| 天天操天天操天天碰| 热久久只有这里有精品| 最新欧美一二三视频| 大黑人性xxxxbbbb| 中文字幕乱码人妻电影| 把腿张开让我插进去视频| 人人爱人人妻人人澡39| 亚洲天堂精品久久久| 久久精品国产23696| 国产普通话插插视频| 青青热久免费精品视频在线观看 | 玩弄人妻熟妇性色av少妇| 激情五月婷婷免费视频| 欧美交性又色又爽又黄麻豆| 免费在线看的黄网站| sejizz在线视频| 青青青青青青青青青国产精品视频| 亚洲中文字幕国产日韩| 日韩三级黄色片网站| 久碰精品少妇中文字幕av | 国产熟妇人妻ⅹxxxx麻豆| 最新欧美一二三视频| 亚洲免费国产在线日韩| 国产午夜福利av导航| 黄色片一级美女黄色片| 日韩a级黄色小视频| 成人色综合中文字幕| 国产综合视频在线看片| 中文字幕第1页av一天堂网| 日视频免费在线观看| 国产成人一区二区三区电影网站| 天码人妻一区二区三区在线看| 日本一二三中文字幕| 国产精品人妻一区二区三区网站| 大鸡吧插入女阴道黄色片| 亚洲av日韩精品久久久| 国产麻豆剧传媒精品国产av蜜桃| 午夜极品美女福利视频| 精品久久久久久久久久久a√国产| 成人免费做爰高潮视频| 自拍偷拍一区二区三区图片| 一区二区三区精品日本| 操人妻嗷嗷叫视频一区二区| 成人18禁网站在线播放| 福利国产视频在线观看| 91‖亚洲‖国产熟女| 三级av中文字幕在线观看| 加勒比视频在线免费观看| 亚洲美女高潮喷浆视频| 91综合久久亚洲综合| 日本韩国亚洲综合日韩欧美国产| 狠狠鲁狠狠操天天晚上干干| 国产日韩欧美美利坚蜜臀懂色| 日本性感美女三级视频| 老鸭窝日韩精品视频观看| 91天堂精品一区二区| 在线观看黄色成年人网站| 色婷婷综合激情五月免费观看| 亚洲午夜电影之麻豆| 337p日本大胆欧美人| 日韩av有码中文字幕| 青青青青爽手机在线| 人妻少妇av在线观看| av男人天堂狠狠干| 阿v天堂2014 一区亚洲| 国产福利小视频免费观看| 亚洲精品麻豆免费在线观看| 国产妇女自拍区在线观看| 一区二区三区四区视频在线播放| 人人妻人人澡人人爽人人dvl| 中文字幕在线永久免费播放| 97色视频在线观看| 国产在线自在拍91国语自产精品 | 亚洲激情av一区二区| 老司机免费视频网站在线看| 国产日韩av一区二区在线| 伊人网中文字幕在线视频| 国产九色91在线观看精品| 在线免费观看黄页视频| 可以在线观看的av中文字幕| 黄网十四区丁香社区激情五月天 | 欧美日本国产自视大全| 性欧美日本大妈母与子| 亚洲国产免费av一区二区三区| 天天日天天日天天擦| 午夜精品九一唐人麻豆嫩草成人 | 亚洲一级 片内射视正片| 一色桃子久久精品亚洲| 在线不卡成人黄色精品| 黄色在线观看免费观看在线| 青青色国产视频在线| tube69日本少妇| 色天天天天射天天舔| 色综合色综合色综合色| 绝顶痉挛大潮喷高潮无码| 青娱乐蜜桃臀av色| 狠狠鲁狠狠操天天晚上干干| 最近的中文字幕在线mv视频| 一区国内二区日韩三区欧美| 97香蕉碰碰人妻国产樱花| 婷婷激情四射在线观看视频| 宅男噜噜噜666免费观看| 亚洲精品午夜久久久久| 免费在线观看视频啪啪| 日本在线不卡免费视频| 91大神福利视频网| 激情啪啪啪啪一区二区三区 | 喷水视频在线观看这里只有精品| 自拍 日韩 欧美激情| 五月精品丁香久久久久福利社| 性感美女诱惑福利视频| 中国黄色av一级片| 91国内视频在线观看| okirakuhuhu在线观看| caoporm超碰国产| h国产小视频福利在线观看| 99精品视频在线观看婷婷| 国产精品午夜国产小视频| 日本性感美女视频网站| 91色网站免费在线观看| 午夜毛片不卡在线看| 人妻丝袜av在线播放网址| 黄网十四区丁香社区激情五月天| 久久久久久久久久一区二区三区| av天堂中文字幕最新| 天天做天天干天天操天天射| aⅴ五十路av熟女中出| 精品国产乱码一区二区三区乱| 国产高潮无码喷水AV片在线观看| 岛国免费大片在线观看| 五十路息与子猛烈交尾视频| 一区二区三区综合视频| 91chinese在线视频| 国产精选一区在线播放| 日比视频老公慢点好舒服啊| 亚洲va欧美va人人爽3p| 制服丝袜在线人妻中文字幕| 黄色在线观看免费观看在线| 我想看操逼黄色大片| 色婷婷久久久久swag精品| 午夜精品久久久久麻豆影视| 97香蕉碰碰人妻国产樱花| 在线亚洲天堂色播av电影| 91精品国产91久久自产久强| 男人的天堂一区二区在线观看| 97国产在线av精品| 这里有精品成人国产99| 亚洲熟女久久久36d| 中文字幕—97超碰网| 亚洲国产欧美一区二区三区久久| 久久机热/这里只有| 欧美激情电影免费在线| 亚洲天天干 夜夜操| 免费啪啪啪在线观看视频| 欧美成人综合视频一区二区| 天干天天天色天天日天天射| 在线观看一区二区三级| 日本在线一区二区不卡视频| 亚洲在线观看中文字幕av| 丰满少妇翘臀后进式| 五月婷婷在线观看视频免费| 欧美 亚洲 另类综合| 青青青青青青青在线播放视频| japanese五十路熟女熟妇| 91免费放福利在线观看| 夜色17s精品人妻熟女| 日韩欧美一级精品在线观看| 91国内视频在线观看| 青青伊人一精品视频| 亚洲精品一区二区三区老狼| 快插进小逼里大鸡吧视频| 无忧传媒在线观看视频| 成人18禁网站在线播放| 最新国产亚洲精品中文在线| 偷拍自拍 中文字幕| 天天干天天操天天扣| 啪啪啪18禁一区二区三区 | 精品黑人一区二区三区久久国产 | 久草免费人妻视频在线| 91国内精品久久久久精品一| 国产在线拍揄自揄视频网站| 大鸡八强奸视频在线观看| 日韩不卡中文在线视频网站 | 午夜久久久久久久99| 亚洲专区激情在线观看视频| 国产九色91在线视频| 自拍偷区二区三区麻豆| 熟女人妻在线中出观看完整版| 国产91嫩草久久成人在线视频| 在线 中文字幕 一区| 新97超碰在线观看| 78色精品一区二区三区| 日韩a级黄色小视频| 中文字幕一区二 区二三区四区| 久久久久久9999久久久久| 亚洲精品一线二线在线观看| 久久美欧人妻少妇一区二区三区| 乱亲女秽乱长久久久| 久久久久久9999久久久久| 伊人网中文字幕在线视频| 亚洲中文精品字幕在线观看| 日本a级视频老女人| 老有所依在线观看完整版| 欧美日韩国产一区二区三区三州 | 99av国产精品欲麻豆| 操人妻嗷嗷叫视频一区二区| 亚洲欧美自拍另类图片| 97黄网站在线观看| 超碰在线观看免费在线观看| 久久久噜噜噜久久熟女av| 社区自拍揄拍尻屁你懂的| 日本韩国免费福利精品| 国产日本欧美亚洲精品视| 成人免费毛片aaaa| 777奇米久久精品一区| 国产精品视频男人的天堂| 午夜精品福利一区二区三区p| 国产精品三级三级三级| 99国产精品窥熟女精品| 久久农村老妇乱69系列| 国产三级精品三级在线不卡| 人人妻人人澡人人爽人人dvl| 青青青青青免费视频| 超pen在线观看视频公开97| 最新国产精品拍在线观看| 91国内视频在线观看| 91小伙伴中女熟女高潮| 精品一线二线三线日本| 日本丰满熟妇BBXBBXHD| 天天干天天操天天扣| 日韩三级电影华丽的外出| 欧美偷拍亚洲一区二区| 亚洲av无硬久久精品蜜桃| 国产日韩精品电影7777| 天天色天天爱天天爽| 蜜臀av久久久久久久| 亚洲av第国产精品| 风流唐伯虎电视剧在线观看| 中文亚洲欧美日韩无线码| av一本二本在线观看| 摧残蹂躏av一二三区| 91国语爽死我了不卡| 中文字幕之无码色多多| 熟女少妇激情五十路| 亚洲成人线上免费视频观看| 午夜的视频在线观看| 少妇与子乱在线观看| 黄网十四区丁香社区激情五月天| 青青青青青免费视频| 人妻自拍视频中国大陆| 欧美少妇性一区二区三区| 三级av中文字幕在线观看| 日韩少妇人妻精品无码专区| 97国产在线av精品| 精品视频中文字幕在线播放| 91九色porny蝌蚪国产成人| 特级欧美插插插插插bbbbb| 男人在床上插女人视频| 直接能看的国产av| 老司机99精品视频在线观看 | www天堂在线久久| 成人高潮aa毛片免费| 亚洲男人在线天堂网| 中出中文字幕在线观看| 久久久久久97三级| 精品首页在线观看视频| 欧美香蕉人妻精品一区二区| 欧美aa一级一区三区四区| 国产欧美日韩第三页| 亚洲欧美国产麻豆综合| 青青草在观免费国产精品| 在线观看的黄色免费网站| 任你操任你干精品在线视频| 男人操女人逼逼视频网站| 国产日韩精品一二三区久久久| 久久精品国产999| 国产精品视频男人的天堂| 成人sm视频在线观看| 激情综合治理六月婷婷| 亚洲精品午夜久久久久| 日韩精品激情在线观看| wwwxxx一级黄色片| 啪啪啪啪啪啪啪啪av| 黄色大片男人操女人逼| 在线免费观看国产精品黄色| 最新97国产在线视频| 日日夜夜狠狠干视频| 丝袜长腿第一页在线| nagger可以指黑人吗| 91一区精品在线观看| 91国产在线免费播放| 无忧传媒在线观看视频| 亚洲国产第一页在线观看| 99热99这里精品6国产| 国产福利小视频免费观看| 日本一本午夜在线播放| 亚洲精品福利网站图片| 香蕉91一区二区三区| 精品日产卡一卡二卡国色天香 | 中文字幕熟女人妻久久久| 啪啪啪啪啪啪啪啪av| 9l人妻人人爽人人爽| 亚洲av天堂在线播放| 狠狠嗨日韩综合久久| 国产欧美日韩第三页| 午夜久久久久久久99| 天天操天天操天天碰| 亚洲国产免费av一区二区三区 | 亚洲区美熟妇久久久久| 青青青aaaa免费| 久草视频首页在线观看| 欧美日韩激情啪啪啪| 亚洲偷自拍高清视频| 99精品国自产在线人| eeuss鲁片一区二区三区| 制服丝袜在线人妻中文字幕| 久久这里只有精彩视频免费| 日韩美女综合中文字幕pp| 欧美精品欧美极品欧美视频| 精品区一区二区三区四区人妻| 成熟熟女国产精品一区| 午夜91一区二区三区| 日本韩国免费一区二区三区视频 | 国产视频网站一区二区三区| 人人爱人人妻人人澡39| 天天躁日日躁狠狠躁av麻豆| 欧美地区一二三专区| 99热99re在线播放| 国产精品亚洲在线观看| 黄色成年网站午夜在线观看| 麻豆性色视频在线观看| 55夜色66夜色国产精品站| 天天日天天天天天天天天天天| 亚洲国产最大av综合| 果冻传媒av一区二区三区| 五十路av熟女松本翔子| 国产内射中出在线观看| weyvv5国产成人精品的视频| 亚洲最大黄 嗯色 操 啊| 亚洲av自拍偷拍综合| 日本性感美女写真视频| 国产日本精品久久久久久久| 亚洲av色图18p| 中文字幕一区二区三区蜜月| 日日日日日日日日夜夜夜夜夜夜| 岛国黄色大片在线观看| 男人天堂最新地址av| 视频 一区二区在线观看| 无码中文字幕波多野不卡| av中文字幕在线导航| 欧美男人大鸡吧插女人视频| 在线观看黄色成年人网站| 国产一级麻豆精品免费| 亚洲欧洲av天堂综合| 欧美久久一区二区伊人| 91九色porny国产在线| www,久久久,com| 97黄网站在线观看| av网址国产在线观看| 91人妻精品久久久久久久网站| 中文字幕最新久久久| 在线国产日韩欧美视频| 国产内射中出在线观看| 国产成人精品福利短视频| 欧美黑人性暴力猛交喷水| 国产在线91观看免费观看| 国内精品在线播放第一页| 黄色的网站在线免费看 | 欧美一区二区三区激情啪啪啪| 熟女人妻在线观看视频| 啊用力插好舒服视频| 国产日韩欧美美利坚蜜臀懂色| 亚洲精品精品国产综合| 精品少妇一二三视频在线| 韩国AV无码不卡在线播放| 老司机免费视频网站在线看| 免费在线观看污污视频网站| 中文字幕第1页av一天堂网| 国产成人精品久久二区91| 欧美男同性恋69视频| 亚洲护士一区二区三区| 五色婷婷综合狠狠爱| 色吉吉影音天天干天天操 | 大香蕉伊人中文字幕| 91快播视频在线观看| 女同久久精品秋霞网| 天天日天天敢天天干| 日本av在线一区二区三区| 在线观看国产网站资源| 精品国产在线手机在线| av中文字幕福利网| 开心 色 六月 婷婷| 国产精品人妻66p| 精品91自产拍在线观看一区| 亚洲区美熟妇久久久久| 老司机午夜精品视频资源| 久久久麻豆精亚洲av麻花| 大屁股熟女一区二区三区| 国产自拍黄片在线观看| 日韩人妻xxxxx| 国产精品久久9999| 亚洲伊人久久精品影院一美女洗澡| 国产精品视频欧美一区二区| 青青操免费日综合视频观看| 视频在线亚洲一区二区| 亚洲天堂有码中文字幕视频| 一二三中文乱码亚洲乱码one| 色呦呦视频在线观看视频| 国产女孩喷水在线观看| 动漫美女的小穴视频| 精品首页在线观看视频| 熟妇一区二区三区高清版| 欧美精品免费aaaaaa| 青青热久免费精品视频在线观看| 国产chinesehd精品麻豆| 美女福利视频网址导航| 早川濑里奈av黑人番号| 久久精品国产23696| 亚洲中文字字幕乱码| 中文人妻AV久久人妻水| 中国老熟女偷拍第一页| 精品久久久久久高潮| 2020韩国午夜女主播在线| 国产91久久精品一区二区字幕| 动漫精品视频在线观看| 国产普通话插插视频| 51国产偷自视频在线播放 | 女蜜桃臀紧身瑜伽裤| 婷婷综合亚洲爱久久| 最后99天全集在线观看| 久久这里只有精品热视频| 亚洲熟女女同志女同| 四川乱子伦视频国产vip| 五十路人妻熟女av一区二区| 1000部国产精品成人观看视频| 老司机深夜免费福利视频在线观看| 自拍 日韩 欧美激情| 午夜91一区二区三区| 日韩精品电影亚洲一区| 亚洲综合乱码一区二区| 日本中文字幕一二区视频| 性欧美激情久久久久久久| 任你操视频免费在线观看| 欧美日韩人妻久久精品高清国产| 天天摸天天干天天操科普| 久草福利电影在线观看| 在线观看一区二区三级| 偷拍自拍视频图片免费| 欧美一区二区三区高清不卡tv| 欧美一区二区三区四区性视频| 青青青爽视频在线播放| 国产高清97在线观看视频| 阿v天堂2014 一区亚洲| 100%美女蜜桃视频| 少妇人妻久久久久视频黄片| 超碰公开大香蕉97| 天堂资源网av中文字幕| 操的小逼流水的文章| 欧美专区日韩专区国产专区| 亚洲国产成人av在线一区| 蜜臀av久久久久蜜臀av麻豆| 人人在线视频一区二区| 日韩加勒比东京热二区| 中字幕人妻熟女人妻a62v网| 成年午夜影片国产片| 香蕉av影视在线观看| 欧洲黄页网免费观看| 少妇深喉口爆吞精韩国| 人妻另类专区欧美制服| 91中文字幕最新合集| 天天干天天搞天天摸| 一区二区在线视频中文字幕| 国内精品在线播放第一页| 亚洲综合另类欧美久久| 国产女孩喷水在线观看| 日本性感美女三级视频| av在线观看网址av| 国产1区,2区,3区| 日韩人妻在线视频免费| 国产精品污污污久久| 日本免费午夜视频网站| 51精品视频免费在线观看| 欧美特色aaa大片| 欧美爆乳肉感大码在线观看 | 动漫精品视频在线观看| 黄色视频在线观看高清无码 | 日本阿v视频在线免费观看| 欧美亚洲国产成人免费在线| 黑人3p华裔熟女普通话| 亚洲美女美妇久久字幕组| 日本福利午夜电影在线观看| 一区二区麻豆传媒黄片| 国产a级毛久久久久精品| 一区二区三区日本伦理| 亚洲区欧美区另类最新章节| 日本五十路熟新垣里子| 亚洲天堂av最新网址| 中文字幕在线第一页成人| 91久久人澡人人添人人爽乱| 欧美美女人体视频一区| 天堂av狠狠操蜜桃| av完全免费在线观看av| 成人午夜电影在线观看 久久| 欧美女同性恋免费a| 视频在线亚洲一区二区| 老司机福利精品免费视频一区二区| 欧美成人综合色在线噜噜| 丁香花免费在线观看中文字幕| 女人精品内射国产99| 男人的天堂一区二区在线观看| 东京干手机福利视频| 日韩美在线观看视频黄| www日韩毛片av| 天天日天天透天天操| 最新国产亚洲精品中文在线| 天天日天天日天天射天天干| 一区二区在线观看少妇| 亚洲免费成人a v| 国产高清在线在线视频| 国产一区二区三免费视频| 最新中文字幕乱码在线| 91国偷自产一区二区三区精品| 亚洲综合在线视频可播放| 又黄又刺激的午夜小视频| 天堂av在线官网中文| 一区二区三区视频,福利一区二区| 在线成人日韩av电影| 激情五月婷婷综合色啪| 蜜桃视频在线欧美一区| 国产刺激激情美女网站| 少妇人妻二三区视频| 亚洲免费在线视频网站| 人人妻人人爱人人草| 亚洲欧美成人综合在线观看| 国产妇女自拍区在线观看| 揄拍成人国产精品免费看视频| av网站色偷偷婷婷网男人的天堂| 老司机在线精品福利视频| 天天干狠狠干天天操| 日曰摸日日碰夜夜爽歪歪| 亚洲av无乱一区二区三区性色| 自拍偷拍亚洲另类色图| 成人综合亚洲欧美一区| 精品国产在线手机在线| 亚洲综合另类欧美久久| 天天干天天插天天谢| 久久久久久99国产精品| 91在线视频在线精品3| 黄色男人的天堂视频| 久久久久久久精品成人热| 亚洲视频乱码在线观看| 精品91自产拍在线观看一区| 粉嫩av蜜乳av蜜臀| 欧美亚洲免费视频观看| 全国亚洲男人的天堂| 日韩欧美中文国产在线 | 中文字母永久播放1区2区3区| 特级无码毛片免费视频播放| 亚洲 清纯 国产com| 狠狠躁夜夜躁人人爽天天久天啪| 超碰97人人澡人人| 日韩精品中文字幕福利| 国产福利在线视频一区| 一区二区三区久久中文字幕| 伊人综合免费在线视频| 97超碰人人搞人人| 大鸡吧插入女阴道黄色片| 欧美特色aaa大片| 色哟哟国产精品入口| 一区二区三区国产精选在线播放| 日韩剧情片电影在线收看| 久久精品36亚洲精品束缚| 久草视频在线看免费| 成人久久精品一区二区三区| 久久www免费人成一看片| 精品美女福利在线观看| 人妻在线精品录音叫床| 偷青青国产精品青青在线观看| 日本免费一级黄色录像| 欧美黑人性猛交xxxxⅹooo| 97小视频人妻一区二区| 97超碰国语国产97超碰| 激情内射在线免费观看| 91精品国产观看免费| 激情国产小视频在线| 欧美综合婷婷欧美综合| 好吊视频—区二区三区| 日韩欧美国产一区不卡| 欧美黄色录像免费看的| 精品一区二区三区午夜| 午夜蜜桃一区二区三区| 2o22av在线视频| 东京热男人的av天堂| 日韩在线视频观看有码在线| 免费看美女脱光衣服的视频| 久久99久久99精品影院| 一个色综合男人天堂| 欧美日韩高清午夜蜜桃大香蕉| 美女 午夜 在线视频| 国产三级精品三级在线不卡| 国产日本精品久久久久久久| 免费在线黄色观看网站| 色综合天天综合网国产成人| av久久精品北条麻妃av观看| 久久久久久久久久一区二区三区| 精品91自产拍在线观看一区| 久久久精品国产亚洲AV一| 午夜精品一区二区三区4| 在线 中文字幕 一区| 自拍偷拍日韩欧美亚洲| av男人天堂狠狠干| 日韩美女综合中文字幕pp| 男女第一次视频在线观看| 国产精品视频资源在线播放| 天天日天天天天天天天天天天| jiuse91九色视频| 中文字幕在线视频一区二区三区| 亚洲中文字幕综合小综合| 男人和女人激情视频| 国产久久久精品毛片| 高清成人av一区三区| 91免费观看在线网站| 黑人大几巴狂插日本少妇| 99re久久这里都是精品视频| 蜜桃专区一区二区在线观看| 精品久久久久久高潮| 91国产在线视频免费观看| 亚洲一区二区三区偷拍女厕91| 午夜青青草原网在线观看| av资源中文字幕在线观看| 成年人的在线免费视频| 成人网18免费视频版国产| 在线免费观看欧美小视频| 日日摸夜夜添夜夜添毛片性色av| 国产janese在线播放| 亚洲综合乱码一区二区| 成熟熟女国产精品一区| 成年人的在线免费视频| 在线观看视频一区麻豆| 大鸡吧插逼逼视频免费看| 综合激情网激情五月天| 老师啊太大了啊啊啊尻视频| 男人操女人逼逼视频网站| 亚洲伊人av天堂有码在线| 2020中文字幕在线播放| 中文字幕在线第一页成人| 在线成人日韩av电影| 人妻3p真实偷拍一二区| 色噜噜噜噜18禁止观看| 欧美一级色视频美日韩| 女生被男生插的视频网站| 天堂v男人视频在线观看| 亚洲高清国产自产av| 国产精品久久久黄网站| 天天日天天干天天舔天天射| 老司机午夜精品视频资源| 视频 一区二区在线观看| 91超碰青青中文字幕| 精产国品久久一二三产区区别| 99精品国自产在线人| 欧美日韩中文字幕欧美| 天天日天天干天天干天天日| 午夜免费体验区在线观看| 亚洲国产第一页在线观看| 精品美女福利在线观看| 2021年国产精品自拍| 人妻自拍视频中国大陆| 日韩亚洲高清在线观看| 午夜影院在线观看视频羞羞羞| 人妻熟女中文字幕aⅴ在线| 亚洲欧美清纯唯美另类| 全国亚洲男人的天堂| 中文字幕在线永久免费播放| 99的爱精品免费视频| 日本韩国亚洲综合日韩欧美国产| 国产精品午夜国产小视频| 无套猛戳丰满少妇人妻| 日日爽天天干夜夜操| 天天干天天日天天干天天操| 午夜精品一区二区三区城中村| 国产成人自拍视频在线免费观看| 2021最新热播中文字幕| 在线观看免费av网址大全| 久久久精品欧洲亚洲av| 成人免费毛片aaaa| 丝袜美腿欧美另类 中文字幕| 日韩美在线观看视频黄| 99热碰碰热精品a中文| 国产一区二区三免费视频| 中文字幕日韩91人妻在线| 亚洲 中文 自拍 另类 欧美| 果冻传媒av一区二区三区 | 亚洲美女自偷自拍11页| 9色在线视频免费观看| 中文字幕视频一区二区在线观看| 福利国产视频在线观看| 亚洲欧美精品综合图片小说| free性日本少妇| 在线免费观看视频一二区| 午夜精品一区二区三区城中村| av中文字幕在线观看第三页| 亚洲男人让女人爽的视频| 日本免费视频午夜福利视频| 日韩熟女系列一区二区三区| 天天日天天做天天日天天做| 99视频精品全部15| 男人天堂av天天操| 成年人中文字幕在线观看| 日韩欧美在线观看不卡一区二区 | 欧美精品久久久久久影院| 亚洲精品乱码久久久本| 天天干天天操天天摸天天射| 免费国产性生活视频| 国产av自拍偷拍盛宴| 亚洲成人精品女人久久久| 日韩成人性色生活片| 日本人妻欲求不满中文字幕| 天天干天天操天天爽天天摸| 国产麻豆精品人妻av| 天天夜天天日天天日| 成人精品视频99第一页| 免费成人av中文字幕| 热思思国产99re| 人妻另类专区欧美制服| 天天干天天啪天天舔| 亚洲成a人片777777| 自拍偷拍vs一区二区三区| 97人人模人人爽人人喊| 2012中文字幕在线高清| 97瑟瑟超碰在线香蕉| 国语对白xxxx乱大交| 果冻传媒av一区二区三区| 98精产国品一二三产区区别| 天天操天天干天天日狠狠插| 中文字幕AV在线免费看 | 亚洲精品中文字幕下载| 欧美视频中文一区二区三区| 日本特级片中文字幕| 丝袜肉丝一区二区三区四区在线看| 青娱乐极品视频青青草| 国产内射中出在线观看| 亚洲av日韩高清hd| 国产欧美日韩在线观看不卡| 亚洲天堂有码中文字幕视频| 黄片三级三级三级在线观看| 国产在线拍揄自揄视频网站| 六月婷婷激情一区二区三区| 青青青青草手机在线视频免费看| 老司机欧美视频在线看| 亚洲 欧美 精品 激情 偷拍 | 水蜜桃一区二区三区在线观看视频 | 少妇深喉口爆吞精韩国| 中文字幕在线一区精品| 亚洲欧美国产麻豆综合| 青青色国产视频在线| 又色又爽又黄又刺激av网站| 国产高清精品极品美女| 91av中文视频在线| 成人久久精品一区二区三区| 爱有来生高清在线中文字幕| 久久久精品欧洲亚洲av| 在线观看国产免费麻豆| 九色porny九色9l自拍视频| 91色网站免费在线观看| av在线免费中文字幕| 成人av久久精品一区二区| 97人人妻人人澡人人爽人人精品| 欧美国产亚洲中英文字幕| 2022国产精品视频| 国产老熟女伦老熟妇ⅹ| 五十路熟女av天堂| 色偷偷伊人大杳蕉综合网| 91极品大一女神正在播放| 91亚洲国产成人精品性色| 国产精品sm调教视频| 欧美一级视频一区二区| 75国产综合在线视频| 亚洲欧美另类自拍偷拍色图| 欧美熟妇一区二区三区仙踪林| 很黄很污很色的午夜网站在线观看 | 青青青爽视频在线播放| 亚洲成人av一区久久| 国产又色又刺激在线视频| 在线观看视频 你懂的| 亚洲综合色在线免费观看| 孕妇奶水仑乱A级毛片免费看| 国产精品自拍偷拍a| 精品一区二区三区午夜| 天天色天天操天天透| 66久久久久久久久久久| 人妻无码色噜噜狠狠狠狠色| 污污小视频91在线观看| 在线免费观看日本片| 日韩影片一区二区三区不卡免费| 99av国产精品欲麻豆| 国产欧美精品不卡在线| 成人影片高清在线观看| 色花堂在线av中文字幕九九| 中文字幕视频一区二区在线观看| 欧美第一页在线免费观看视频| 天天日天天添天天爽| 黄色片黄色片wyaa| 亚洲美女美妇久久字幕组| 亚洲熟妇x久久av久久| 中文字幕人妻一区二区视频| 亚洲国产免费av一区二区三区| 香蕉av影视在线观看| 久久久久久九九99精品| 男人在床上插女人视频| 亚洲国产在线精品国偷产拍| av中文字幕网址在线| 中文字幕 亚洲av| 亚洲免费va在线播放| 40道精品招牌菜特色| 日韩成人综艺在线播放| 日韩在线视频观看有码在线| 欧美视频一区免费在线| 又大又湿又爽又紧A视频| 2022国产综合在线干| 欧美精产国品一二三区| 熟女人妻在线观看视频| 亚洲 色图 偷拍 欧美| 欧美精品资源在线观看| 亚洲va天堂va国产va久| 极品丝袜一区二区三区| avjpm亚洲伊人久久| 2021最新热播中文字幕| 中文字幕AV在线免费看 | 亚洲av日韩高清hd| 欧美激情精品在线观看| 欧美一区二区三区四区性视频| 美日韩在线视频免费看| 91欧美在线免费观看| 欧美亚洲免费视频观看| 91老师蜜桃臀大屁股| 日本乱人一区二区三区| 亚洲精品亚洲人成在线导航| 天天插天天色天天日| 青青热久免费精品视频在线观看 | 国产一区二区欧美三区| 成人亚洲国产综合精品| 欧美一区二区三区在线资源| 自拍偷拍亚洲欧美在线视频| 中文字日产幕乱六区蜜桃| 久久精品36亚洲精品束缚| 又粗又长 明星操逼小视频 | 欧美成人黄片一区二区三区 | 99久久激情婷婷综合五月天| 日韩亚洲高清在线观看| 亚洲成人免费看电影| 欧美亚洲国产成人免费在线 | 果冻传媒av一区二区三区| 精品国产高潮中文字幕| 97少妇精品在线观看| 国产不卡av在线免费| 超级福利视频在线观看| 中文字幕av男人天堂| 精品国产污污免费网站入口自| a v欧美一区=区三区| 视频一区二区三区高清在线| 午夜大尺度无码福利视频| 18禁网站一区二区三区四区| 馒头大胆亚洲一区二区| 日本一区精品视频在线观看| 玖玖一区二区在线观看| 国产一区成人在线观看视频| 激情伦理欧美日韩中文字幕| 国内精品在线播放第一页| 韩国亚洲欧美超一级在线播放视频| 美女张开两腿让男人桶av| 一区二区三区四区五区性感视频| 亚洲人妻国产精品综合| 午夜国产福利在线观看| 高潮视频在线快速观看国家快速| 天天插天天狠天天操| 五十路av熟女松本翔子| 适合午夜一个人看的视频| 亚洲av色香蕉一区二区三区 | 肏插流水妹子在线乐播下载| 97国产在线av精品| 岛国毛片视频免费在线观看| 一区二区三区四区视频在线播放 | 毛片av在线免费看| 日本午夜久久女同精女女| 国产午夜亚洲精品不卡在线观看| 这里只有精品双飞在线播放| 东京热男人的av天堂| 99人妻视频免费在线| 天天日天天日天天射天天干| 青春草视频在线免费播放| 亚洲国产香蕉视频在线播放| 亚洲成人黄色一区二区三区| 亚洲av成人网在线观看| 色爱av一区二区三区| 欧美亚洲国产成人免费在线| 国内资源最丰富的网站| 国产精品女邻居小骚货| 日本乱人一区二区三区| 久久这里只有精品热视频| 一区二区三区四区五区性感视频| 鸡巴操逼一级黄色气| 骚逼被大屌狂草视频免费看| 成人亚洲精品国产精品| 狍和女人的王色毛片| 日韩美在线观看视频黄| 午夜激情久久不卡一区二区| 亚洲人一区二区中文字幕| 亚洲福利天堂久久久久久| 非洲黑人一级特黄片| 精品人人人妻人人玩日产欧| 综合页自拍视频在线播放| 国产视频网站一区二区三区| 少妇与子乱在线观看| 国产性色生活片毛片春晓精品| 久久永久免费精品人妻专区 | 青青青国产片免费观看视频| 久久综合老鸭窝色综合久久| 综合精品久久久久97| 黑人巨大的吊bdsm| 亚洲国产欧美国产综合在线| 国产精彩福利精品视频| 欧美一区二区三区激情啪啪啪| 精品久久婷婷免费视频| 夜夜骑夜夜操夜夜奸| 欧美在线偷拍视频免费看| 国产刺激激情美女网站| 日韩写真福利视频在线观看| 亚洲一区二区三区久久午夜| gav成人免费播放| 亚洲美女自偷自拍11页| 九九热99视频在线观看97| 免费在线看的黄网站| 揄拍成人国产精品免费看视频| 久久精品国产亚洲精品166m| 亚洲国产香蕉视频在线播放| 成人综合亚洲欧美一区| 国产一区二区火爆视频| 国产1区,2区,3区| 人妻少妇一区二区三区蜜桃| 亚洲一级av大片免费观看| 国产之丝袜脚在线一区二区三区 | 天天干天天日天天干天天操| 2022中文字幕在线| 成年人该看的视频黄免费| 日本一二三中文字幕| 中文字幕一区二区人妻电影冢本| 亚洲1069综合男同| 精品一区二区三四区| 亚洲欧美人精品高清| 亚洲欧美福利在线观看| 在线免费91激情四射| 久久久久久久久久性潮| 久草视频在线免播放| 91天堂天天日天天操| 欧美第一页在线免费观看视频| 日日操综合成人av| 国产又粗又猛又爽又黄的视频美国| 又粗又硬又猛又黄免费30| 亚洲成人三级在线播放| 2025年人妻中文字幕乱码在线| 青青青视频自偷自拍38碰| 日韩欧美一级aa大片| 自拍偷拍日韩欧美亚洲| 亚洲 清纯 国产com| 成年美女黄网站18禁久久| 亚洲免费国产在线日韩| 国产无遮挡裸体免费直播视频| 九一传媒制片厂视频在线免费观看| 人妻少妇av在线观看| 亚洲 中文 自拍 无码| 动漫美女的小穴视频| 国产91嫩草久久成人在线视频| 婷婷久久久综合中文字幕| 日韩精品激情在线观看| av在线资源中文字幕| 毛片av在线免费看| 在线视频精品你懂的| 国产亚洲天堂天天一区| 日本美女性生活一级片| 好了av中文字幕在线| 又粗又长 明星操逼小视频| 一区二区三区 自拍偷拍| 久久机热/这里只有| 成人sm视频在线观看| 人妻丝袜诱惑我操她视频| rct470中文字幕在线| 人人妻人人澡人人爽人人dvl| 亚洲av无女神免非久久| 曰本无码人妻丰满熟妇啪啪| 中文字幕av熟女人妻| 天堂va蜜桃一区入口| 久久精品国产亚洲精品166m| 亚洲日本一区二区三区 | 鸡巴操逼一级黄色气| 亚洲伊人av天堂有码在线| 2021久久免费视频| 欧美精品 日韩国产| 国产又色又刺激在线视频| 精品日产卡一卡二卡国色天香| 国产午夜男女爽爽爽爽爽视频| 国产成人自拍视频在线免费观看 | 国产V亚洲V天堂无码欠欠| 亚洲欧美另类自拍偷拍色图| 国产卡一卡二卡三乱码手机| 中文字幕第一页国产在线| 美日韩在线视频免费看| 欧美精品一区二区三区xxxx| 美洲精品一二三产区区别| 亚欧在线视频你懂的| 国产精品久久久久久久久福交| 国产免费高清视频视频| 香蕉91一区二区三区| 亚洲第一黄色在线观看| 人妻自拍视频中国大陆| 日韩a级黄色小视频| 欧美精品黑人性xxxx| 国产高清精品一区二区三区| 国产成人午夜精品福利| 成人av中文字幕一区| aaa久久久久久久久| 国产无遮挡裸体免费直播视频| 第一福利视频在线观看 | 把腿张开让我插进去视频| 欧美成人黄片一区二区三区| 日本a级视频老女人| 中文字幕一区的人妻欧美日韩| 馒头大胆亚洲一区二区| 夜女神免费福利视频| 91国内精品久久久久精品一| 亚洲天堂精品福利成人av| 亚洲2021av天堂| av日韩在线观看大全| 99热这里只有精品中文| 老有所依在线观看完整版 | 午夜福利人人妻人人澡人人爽| 久久精品国产23696| 日韩av有码一区二区三区4| 欧美日韩不卡一区不区二区| 亚洲欧美一区二区三区爱爱动图| 天天想要天天操天天干| 久久精品国产999| 久久美欧人妻少妇一区二区三区 | 一区二区三区麻豆福利视频| 91极品大一女神正在播放| 福利一二三在线视频观看| 国产av国片精品一区二区| av大全在线播放免费| 91试看福利一分钟| 男大肉棒猛烈插女免费视频| 888欧美视频在线| 国产精品自拍在线视频| 亚洲精品乱码久久久久久密桃明| 婷婷六月天中文字幕| 日韩精品中文字幕播放| 中英文字幕av一区| 青青草原网站在线观看| 国产亚洲天堂天天一区| 亚洲av极品精品在线观看| 人妻素人精油按摩中出| 首之国产AV医生和护士小芳| 国产麻豆剧传媒精品国产av蜜桃 | av线天堂在线观看| 国产高清在线观看1区2区| 91极品大一女神正在播放| 青青青激情在线观看视频| 免费啪啪啪在线观看视频| 久久精品美女免费视频| 阴茎插到阴道里面的视频| 人妻在线精品录音叫床| 久久国产精品精品美女| 免费在线看的黄网站| 欧美国品一二三产区区别| 91中文字幕免费在线观看| 视频 国产 精品 熟女 | 天天干狠狠干天天操| 日韩北条麻妃一区在线| 日韩欧美中文国产在线| 日本午夜福利免费视频| 免费费一级特黄真人片| 高清成人av一区三区| 日本真人性生活视频免费看| 视频一区二区在线免费播放| 中文字幕AV在线免费看 | 日本熟妇丰满厨房55| 99久久激情婷婷综合五月天| ka0ri在线视频| 9l人妻人人爽人人爽| 韩国三级aaaaa高清视频| 免费看国产av网站| 天天日夜夜操天天摸| 99热久久极品热亚洲| 国产大鸡巴大鸡巴操小骚逼小骚逼| 日本五十路熟新垣里子| 久久久超爽一二三av| 亚洲女人的天堂av| 激情五月婷婷综合色啪| 成人H精品动漫在线无码播放| 日韩在线视频观看有码在线| 97精品视频在线观看| 果冻传媒av一区二区三区| 日韩人妻在线视频免费| 亚洲精品亚洲人成在线导航| 国产白嫩美女一区二区| 熟女人妻一区二区精品视频| 国产黄色a级三级三级三级| 最新欧美一二三视频| 亚洲色偷偷综合亚洲AV伊人| 天天日天天操天天摸天天舔| 青青社区2国产视频| 福利国产视频在线观看| 2021天天色天天干| 国产黑丝高跟鞋视频在线播放| 青草亚洲视频在线观看| 欧美黑人性暴力猛交喷水| 亚洲中文精品字幕在线观看| 亚洲在线免费h观看网站| 午夜精品久久久久久99热| 少妇ww搡性bbb91| 男人天堂色男人av| 精品一线二线三线日本| 红桃av成人在线观看| wwwxxx一级黄色片| 一区二区三区四区五区性感视频| 亚洲 自拍 色综合图| 久久精品亚洲成在人线a| 国产va精品免费观看| 欧美乱妇无乱码一区二区| okirakuhuhu在线观看| 精品高跟鞋丝袜一区二区| 亚洲成人黄色一区二区三区| 国产成人精品久久二区91| 好吊视频—区二区三区| 天天日天天爽天天干| 9国产精品久久久久老师| 精彩视频99免费在线| 天天色天天舔天天射天天爽 | 黑人变态深video特大巨大| 亚洲成a人片777777| 欧美美女人体视频一区| 久久精品国产23696| 久久麻豆亚洲精品av| 超级福利视频在线观看| 97色视频在线观看| 国产午夜福利av导航| 91精品综合久久久久3d动漫| 青青操免费日综合视频观看| 亚洲一区二区激情在线| 偷拍自拍亚洲视频在线观看| 超鹏97历史在线观看| 在线免费视频 自拍| 国产又大又黄免费观看| 国产三级片久久久久久久| 538精品在线观看视频| 抽查舔水白紧大视频| 日噜噜噜夜夜噜噜噜天天噜噜噜| 中文字幕 人妻精品| 黑人进入丰满少妇视频| 国产又大又黄免费观看| 操的小逼流水的文章| 超碰公开大香蕉97| 色吉吉影音天天干天天操| 亚洲黄色av网站免费播放| 看一级特黄a大片日本片黑人| 欧美日韩精品永久免费网址| 激情图片日韩欧美人妻| 国产视频在线视频播放| 亚洲精品 欧美日韩| 无套猛戳丰满少妇人妻| 性感美女诱惑福利视频| 天天日天天干天天要| 丰满的子国产在线观看| 搡老熟女一区二区在线观看| 大尺度激情四射网站| 亚洲一区二区激情在线| 老司机免费福利视频网| 欧美伊人久久大香线蕉综合| 在线观看黄色成年人网站| 韩国一级特黄大片做受| 国产精品久久9999| 3344免费偷拍视频| 天天插天天狠天天操| 成人av天堂丝袜在线观看 | 人妻丝袜av在线播放网址| 中文字幕一区二 区二三区四区 | 欧美精品一区二区三区xxxx| av天堂中文字幕最新| 亚洲男人让女人爽的视频| 免费无码人妻日韩精品一区二区| 亚洲无线观看国产高清在线| 青青草原网站在线观看| 午夜精品九一唐人麻豆嫩草成人| 最新日韩av传媒在线| 日日操综合成人av| 亚洲国产精品免费在线观看| 亚洲一区自拍高清免费视频| 成人影片高清在线观看| 99精品国产aⅴ在线观看| 亚洲高清国产一区二区三区| 久久综合老鸭窝色综合久久| 18禁美女无遮挡免费| 成人综合亚洲欧美一区 | 夜夜嗨av一区二区三区中文字幕| 直接观看免费黄网站| 一二三区在线观看视频| 久久久久91精品推荐99| 特黄老太婆aa毛毛片| 91极品新人『兔兔』精品新作| 久久精品视频一区二区三区四区| 欧美国品一二三产区区别| 黄色资源视频网站日韩| 天天干夜夜操啊啊啊| 综合一区二区三区蜜臀| 一级黄色av在线观看| 瑟瑟视频在线观看免费视频| 久久精品国产亚洲精品166m| 天天通天天透天天插| 亚洲天堂av最新网址| 中文字幕AV在线免费看 | 边摸边做超爽毛片18禁色戒| 99婷婷在线观看视频| 一色桃子久久精品亚洲| 亚洲变态另类色图天堂网| 中文字幕在线免费第一页| www天堂在线久久| 青青青国产免费视频| 91试看福利一分钟| 91超碰青青中文字幕| 人人妻人人爱人人草| 91综合久久亚洲综合| 一区二区三区久久中文字幕| 人妻无码中文字幕专区| 天天日天天干天天要| 伊人成人在线综合网| 亚洲福利天堂久久久久久| 精品国产亚洲av一淫| 在线视频自拍第三页| 亚洲欧美在线视频第一页| 成人精品在线观看视频| 97小视频人妻一区二区| 国产一区av澳门在线观看| av天堂中文字幕最新| 亚洲欧美综合在线探花| 馒头大胆亚洲一区二区| 亚洲熟妇无码一区二区三区| 免费岛国喷水视频在线观看| 亚洲av无硬久久精品蜜桃| 久草视频在线一区二区三区资源站| 红杏久久av人妻一区| 国产污污污污网站在线| 亚洲综合图片20p| 中文字幕av第1页中文字幕| 在线不卡成人黄色精品| 欧美日韩一级黄片免费观看| 亚洲综合另类精品小说| 青青青青青操视频在线观看| 久久久久91精品推荐99| 青青尤物在线观看视频网站| 骚货自慰被发现爆操| 亚洲Av无码国产综合色区| 精品国产在线手机在线| 久久久噜噜噜久久熟女av| 首之国产AV医生和护士小芳| 亚洲熟女女同志女同| 五十路人妻熟女av一区二区| 熟女国产一区亚洲中文字幕| 黄色大片男人操女人逼| 91精品国产综合久久久蜜 | 护士特殊服务久久久久久久 | 懂色av之国产精品| 99国产精品窥熟女精品| www日韩毛片av| 天天日天天玩天天摸| 久久久精品精品视频视频| 黄色三级网站免费下载| 1024久久国产精品| 亚洲欧美一区二区三区爱爱动图| 中文字幕在线乱码一区二区| 国产一级精品综合av| 色av色婷婷人妻久久久精品高清| 亚洲一区二区人妻av| 在线免费视频 自拍| 国产精品视频欧美一区二区| 欧美精品一二三视频| 国产使劲操在线播放| 超碰在线中文字幕一区二区| 国产成人自拍视频在线免费观看| 特黄老太婆aa毛毛片| 天天干夜夜操天天舔| 特大黑人巨大xxxx| 午夜在线一区二区免费| 日本人妻少妇18—xx| 青青青青青操视频在线观看| chinese国产盗摄一区二区| 女同久久精品秋霞网| 天天躁日日躁狠狠躁躁欧美av| 男人天堂av天天操| 免费在线播放a级片| 天天操天天插天天色| 我想看操逼黄色大片| 另类av十亚洲av| 99re国产在线精品| 国产又粗又黄又硬又爽| 适合午夜一个人看的视频| 午夜久久久久久久精品熟女| 日本18禁久久久久久| 国产午夜男女爽爽爽爽爽视频 | 国产普通话插插视频| 免费黄页网站4188| 欧美亚洲免费视频观看| 一区二区三区av高清免费| 人妻久久久精品69系列| 亚洲精品午夜aaa久久| 亚洲高清国产一区二区三区| 超级碰碰在线视频免费观看| 天天夜天天日天天日| 国产乱弄免费视频观看| 人妻激情图片视频小说| av线天堂在线观看| 人人爱人人妻人人澡39| 人妻另类专区欧美制服| 日韩加勒比东京热二区| 亚洲午夜高清在线观看| 五十路熟女人妻一区二| 午夜蜜桃一区二区三区| 无码精品一区二区三区人| 日本高清撒尿pissing| 亚洲欧美综合在线探花| 国产精品人久久久久久| 2022精品久久久久久中文字幕| 午夜在线精品偷拍一区二| 男人的天堂av日韩亚洲| 日本熟妇丰满厨房55| 女同性ⅹxx女同h偷拍| 久久三久久三久久三久久| 中文字幕奴隷色的舞台50| 青青伊人一精品视频| av在线免费中文字幕| 特级欧美插插插插插bbbbb| 免费av岛国天堂网站| 国产chinesehd精品麻豆| www天堂在线久久| 视频一区二区在线免费播放| 岛国av高清在线成人在线| 五十路息与子猛烈交尾视频| 亚洲综合在线观看免费| 97精品人妻一区二区三区精品| 男女啪啪啪啪啪的网站| 韩国三级aaaaa高清视频| 欧洲黄页网免费观看| 国产精品国色综合久久| 少妇人妻真实精品视频| 一区二区三区四区视频在线播放| 亚洲成人av一区在线| 久久精品亚洲成在人线a| 丰满的子国产在线观看| 国产va精品免费观看 | 日本黄色三级高清视频| 男人插女人视频网站| 蜜桃视频17c在线一区二区| 国产真实灌醉下药美女av福利| 亚洲一级 片内射视正片| 国产使劲操在线播放| 国产在线一区二区三区麻酥酥| 熟女国产一区亚洲中文字幕| 大香蕉大香蕉在线看| 亚洲一级av大片免费观看| 快点插进来操我逼啊视频| sspd152中文字幕在线| 亚洲日本一区二区久久久精品| 91免费福利网91麻豆国产精品| 成年人中文字幕在线观看| 青青青青青青青青青青草青青| 国产91精品拍在线观看| 超pen在线观看视频公开97| 国产女人露脸高潮对白视频| 日本18禁久久久久久| 国产av欧美精品高潮网站| 欧美视频不卡一区四区| 欧美精产国品一二三产品区别大吗| 精品av国产一区二区三区四区| 亚洲激情av一区二区| 婷婷六月天中文字幕| 成人伊人精品色xxxx视频| 在线观看视频一区麻豆| 中国视频一区二区三区| 亚洲欧美久久久久久久久| 女同性ⅹxx女同h偷拍| 在线免费观看av日韩| 亚洲乱码中文字幕在线| 日本人妻少妇18—xx| 98精产国品一二三产区区别| 一区二区三区的久久的蜜桃的视频 | 欧美熟妇一区二区三区仙踪林 | 亚洲高清一区二区三区视频在线| 99re6热在线精品| 欧美视频综合第一页| 亚洲中文字幕国产日韩| 日本人妻少妇18—xx| 精品av久久久久久久| 在线观看国产免费麻豆| 成人24小时免费视频| 国产精品三级三级三级| 国产使劲操在线播放| 国产麻豆剧果冻传媒app| 2021天天色天天干| 天天操天天操天天碰| 精品黑人巨大在线一区| 国产精品久久久久网| 丝袜长腿第一页在线| 国产精品国色综合久久| 国产aⅴ一线在线观看| 欧美天堂av无线av欧美| 亚洲av可乐操首页| 国产chinesehd精品麻豆| 日本熟妇喷水xxx| 免费无毒热热热热热热久| 成人蜜桃美臀九一一区二区三区| 亚洲精品ww久久久久久| 在线免费观看靠比视频的网站| 中文字幕中文字幕人妻| 91老师蜜桃臀大屁股| 亚洲2021av天堂| 亚洲的电影一区二区三区| 在线网站你懂得老司机| 中文字幕乱码av资源| 中文字幕第三十八页久久| 亚洲av日韩av第一区二区三区| 日本人妻精品久久久久久| 午夜毛片不卡免费观看视频| 福利视频广场一区二区| 啪啪啪18禁一区二区三区 | 黄工厂精品视频在线观看| 99精品国产免费久久| 3344免费偷拍视频| 国产黄色片蝌蚪九色91| 把腿张开让我插进去视频| 亚洲护士一区二区三区| 国产亚洲精品欧洲在线观看| 中文字幕之无码色多多| 久久h视频在线观看| 2017亚洲男人天堂| 日韩二区视频一线天婷婷五| 五月激情婷婷久久综合网| 色综合天天综合网国产成人 | 肏插流水妹子在线乐播下载| 蜜桃视频在线欧美一区| 欧美激情精品在线观看| 青青青视频自偷自拍38碰| 日韩中文字幕在线播放第二页| 精品亚洲在线免费观看| 蝴蝶伊人久久中文娱乐网| 日日夜夜大香蕉伊人| 亚洲va国产va欧美va在线| chinese国产盗摄一区二区| 边摸边做超爽毛片18禁色戒 | 综合精品久久久久97| 日本熟妇喷水xxx| 天天日天天干天天舔天天射| 美女张开两腿让男人桶av| 91综合久久亚洲综合| 国产精品人妻熟女毛片av久| 久久艹在线观看视频| 大鸡吧插入女阴道黄色片| 人妻少妇一区二区三区蜜桃| 国产精品日韩欧美一区二区| 蜜桃精品久久久一区二区| 成人av电影免费版| av网址在线播放大全| 少妇露脸深喉口爆吞精| 91国内精品自线在拍白富美| 在线免费观看黄页视频| 国产实拍勾搭女技师av在线| 99久久成人日韩欧美精品| 在线新三级黄伊人网| 精品91高清在线观看| 国产极品美女久久久久久| 成人动漫大肉棒插进去视频| 香港一级特黄大片在线播放| 中文字幕人妻三级在线观看| AV无码一区二区三区不卡| 免费观看国产综合视频| 五十路熟女人妻一区二区9933| 97人人妻人人澡人人爽人人精品| 五月激情婷婷久久综合网| 丝袜亚洲另类欧美变态| 日本福利午夜电影在线观看| 亚洲欧美另类自拍偷拍色图| 亚洲在线免费h观看网站| 精品久久久久久久久久久a√国产| 五十路av熟女松本翔子| 色偷偷伊人大杳蕉综合网| 中国把吊插入阴蒂的视频| 亚洲成人线上免费视频观看| 免费69视频在线看| 亚洲欧美国产综合777| 日韩av大胆在线观看| 欧美日韩熟女一区二区三区| 国产女人露脸高潮对白视频| 国产精品视频男人的天堂| 日韩美在线观看视频黄| 在线观看的a站 最新| 在线观看操大逼视频| 成人蜜臀午夜久久一区| 高潮视频在线快速观看国家快速| 国产一区二区三免费视频| 传媒在线播放国产精品一区| 日韩精品中文字幕在线| 激情五月婷婷免费视频| 人人妻人人爽人人添夜| 精品国产成人亚洲午夜| 丝袜亚洲另类欧美变态| 亚洲欧美久久久久久久久| 青青社区2国产视频| 天天日天天干天天干天天日| 亚洲成人免费看电影| 阴茎插到阴道里面的视频| 又粗又硬又猛又黄免费30| 亚洲变态另类色图天堂网| 成年人午夜黄片视频资源| 亚洲一级 片内射视正片| 成人免费毛片aaaa| 天天躁日日躁狠狠躁av麻豆| 天天干狠狠干天天操| 青青青国产免费视频| 午夜影院在线观看视频羞羞羞| 韩国AV无码不卡在线播放| 夜夜操,天天操,狠狠操| 天天艹天天干天天操| 香港一级特黄大片在线播放| 又色又爽又黄又刺激av网站| 女生被男生插的视频网站| 日本一二三区不卡无| 天天色天天舔天天射天天爽| 玖玖一区二区在线观看| 国产日韩av一区二区在线| 天堂va蜜桃一区入口| 一级黄色片夫妻性生活| 男人天堂色男人av| 国产精品人妻熟女毛片av久| 色av色婷婷人妻久久久精品高清| 天天日天天干天天干天天日| 2022精品久久久久久中文字幕| 亚洲av可乐操首页| 成人福利视频免费在线| 91九色porny国产蝌蚪视频| 99亚洲美女一区二区三区| 久久久久久久精品老熟妇| 大胸性感美女羞爽操逼毛片| 中文亚洲欧美日韩无线码| 99久久99一区二区三区| yellow在线播放av啊啊啊| 超污视频在线观看污污污| 日本特级片中文字幕| 99久久久无码国产精品性出奶水| 超碰在线中文字幕一区二区| 老司机欧美视频在线看| 在线新三级黄伊人网| 日本熟妇色熟妇在线观看| 91欧美在线免费观看| av天堂中文免费在线| 欧美日本在线视频一区| 亚洲va国产va欧美va在线| 精品91自产拍在线观看一区| 国产日韩精品电影7777| 国产综合高清在线观看| 国产chinesehd精品麻豆| 伊人综合aⅴ在线网| 欧美久久久久久三级网| 国产精品自拍在线视频| 人人妻人人澡欧美91精品| 日本免费午夜视频网站| 欧美日韩熟女一区二区三区| 一二三中文乱码亚洲乱码one| 天天射,天天操,天天说| 国产精品国产三级国产午| 精品人人人妻人人玩日产欧| 播放日本一区二区三区电影 | 日本脱亚入欧是指什么| 狠狠鲁狠狠操天天晚上干干| 久久综合老鸭窝色综合久久| 青青青青青青青青青国产精品视频| 男人的天堂一区二区在线观看| 中文字幕视频一区二区在线观看| 人妻av无码专区久久绿巨人| 特级欧美插插插插插bbbbb| 国产之丝袜脚在线一区二区三区| 2020中文字幕在线播放| 一个色综合男人天堂| 1024久久国产精品| 亚洲综合在线视频可播放| 亚洲高清国产自产av| 少妇露脸深喉口爆吞精| 免费人成黄页网站在线观看国产| 清纯美女在线观看国产| 精品91高清在线观看| 91天堂精品一区二区| av乱码一区二区三区| 国产精品国色综合久久| 毛片av在线免费看| 中文字幕一区的人妻欧美日韩| 国产综合高清在线观看| AV天堂一区二区免费试看| 色狠狠av线不卡香蕉一区二区| 鸡巴操逼一级黄色气| 91精品国产综合久久久蜜| 少妇ww搡性bbb91| 欧美黑人巨大性xxxxx猛交| 97青青青手机在线视频| 少妇高潮无套内谢麻豆| 亚洲va欧美va人人爽3p| 久久久人妻一区二区| 午夜频道成人在线91| 亚洲av琪琪男人的天堂| 最新欧美一二三视频 | 偷拍自拍福利视频在线观看| 91精品免费久久久久久| 男人插女人视频网站| 手机看片福利盒子日韩在线播放| 久久精品在线观看一区二区| 精品av久久久久久久| 日本后入视频在线观看| 日韩一区二区三区三州| 偷青青国产精品青青在线观看| av中文字幕福利网| 亚洲狠狠婷婷综合久久app| 蜜桃色婷婷久久久福利在线 | 欧美一级片免费在线成人观看| 亚洲午夜伦理视频在线| 韩国亚洲欧美超一级在线播放视频| 少妇人妻二三区视频| 精产国品久久一二三产区区别| 国产性感美女福利视频| 欧美精产国品一二三区| 国产精品视频资源在线播放| 免费岛国喷水视频在线观看| 亚洲免费va在线播放| 亚洲av无乱一区二区三区性色| 国产精品欧美日韩区二区| av中文字幕福利网| 深夜男人福利在线观看| 51国产成人精品视频| 成人精品视频99第一页| 男生舔女生逼逼视频| 97国产福利小视频合集| 国产内射中出在线观看| 亚洲国产精品中文字幕网站| 在线观看av亚洲情色| 91老熟女连续高潮对白| 亚洲精品成人网久久久久久小说| 啊啊好大好爽啊啊操我啊啊视频 | 国产无遮挡裸体免费直播视频| 久久久久久久久久久久久97| AV天堂一区二区免费试看| 91天堂精品一区二区| 婷婷久久久久深爱网| 久久国产精品精品美女| 国产va在线观看精品| 涩爱综合久久五月蜜臀| 男女啪啪啪啪啪的网站| 亚洲福利午夜久久久精品电影网| 亚洲国产免费av一区二区三区| 国产麻豆国语对白露脸剧情| av线天堂在线观看| 成年人午夜黄片视频资源| 五色婷婷综合狠狠爱| 人妻av无码专区久久绿巨人| av久久精品北条麻妃av观看| 精品久久久久久久久久中文蒉| 超pen在线观看视频公开97| 激情人妻校园春色亚洲欧美| 五月天久久激情视频| 天天日天天干天天要| 日韩亚国产欧美三级涩爱| 国产综合高清在线观看| 久青青草视频手机在线免费观看| av森泽佳奈在线观看| 一区二区在线观看少妇| 超碰在线中文字幕一区二区| 亚洲熟妇无码一区二区三区| 亚洲av成人网在线观看| 久久久久只精品国产三级| 天天干天天操天天摸天天射| 国产午夜福利av导航| 欧美一区二区三区四区性视频| 啊啊好大好爽啊啊操我啊啊视频| 日本丰满熟妇BBXBBXHD| 黄工厂精品视频在线观看| 欧美一区二区三区在线资源| 动漫黑丝美女的鸡巴| 在线免费观看日本伦理| 精品欧美一区二区vr在线观看| 91九色porny国产在线| 亚洲免费成人a v| 激情人妻校园春色亚洲欧美 | 国产精品黄色的av| 日韩精品一区二区三区在线播放| 韩国黄色一级二级三级| 亚洲熟妇x久久av久久| 美日韩在线视频免费看| 欧美va亚洲va天堂va| 一区二区三区日本伦理| 啊啊好慢点插舔我逼啊啊啊视频| 亚洲一级美女啪啪啪| free性日本少妇| 福利视频一区二区三区筱慧| 成人伊人精品色xxxx视频| 天天摸天天干天天操科普| 三级等保密码要求条款| 久久久久只精品国产三级| 五十路老熟女码av| 久久久久只精品国产三级| 成人综合亚洲欧美一区| 晚上一个人看操B片| 少妇人妻真实精品视频| 欧美 亚洲 另类综合| 亚洲一区制服丝袜美腿| mm131美女午夜爽爽爽| 午夜美女福利小视频| 精品视频一区二区三区四区五区 | v888av在线观看视频| 狠狠地躁夜夜躁日日躁| 婷婷激情四射在线观看视频| 成年美女黄网站18禁久久| 青青色国产视频在线| 亚洲图片欧美校园春色| 少妇人妻真实精品视频| 国产第一美女一区二区三区四区 | 亚洲天天干 夜夜操| 亚洲护士一区二区三区| 精品一线二线三线日本| 青青青艹视频在线观看| 欧美日韩激情啪啪啪| 国产男女视频在线播放| 亚洲成人黄色一区二区三区| 午夜毛片不卡在线看| 午夜极品美女福利视频| 大黑人性xxxxbbbb| 国产精品国产三级国产午| v888av在线观看视频| 精品国产高潮中文字幕| 国产欧美日韩第三页| 香港一级特黄大片在线播放| 91人妻精品久久久久久久网站 | 青青青青操在线观看免费| 青青青青草手机在线视频免费看| 国产激情av网站在线观看| 黑人大几巴狂插日本少妇| 日韩av熟妇在线观看| 国产精品伦理片一区二区| 一区二区三区久久中文字幕| 亚洲精品 欧美日韩| 欧美美女人体视频一区| 国产大鸡巴大鸡巴操小骚逼小骚逼 | 男人和女人激情视频| av黄色成人在线观看| 在线免费91激情四射| 天堂av在线播放免费| 欧美激情精品在线观看| 日韩一区二区三区三州| 91久久精品色伊人6882| 99一区二区在线观看| 超碰在线中文字幕一区二区| 视频在线免费观看你懂得| 国产性感美女福利视频| 日韩视频一区二区免费观看| 精品一区二区三四区| 久草免费人妻视频在线| 一级黄片大鸡巴插入美女| 国产日韩一区二区在线看| 亚洲国产美女一区二区三区软件 | 成人区人妻精品一区二视频| 亚洲精品午夜久久久久| 在线观看视频污一区| 日本18禁久久久久久| av在线免费资源站| 亚洲一级av大片免费观看| 97人妻无码AV碰碰视频| 婷婷综合亚洲爱久久| av中文字幕网址在线| 孕妇奶水仑乱A级毛片免费看| 无套猛戳丰满少妇人妻| 天天摸天天日天天操| 看一级特黄a大片日本片黑人| 久久久超爽一二三av| 免费啪啪啪在线观看视频| 国产日韩一区二区在线看 | 五月天中文字幕内射| 91福利在线视频免费观看| 男女第一次视频在线观看| 日本性感美女视频网站| 蜜桃视频17c在线一区二区| 国产精品视频欧美一区二区| 2022国产精品视频| 日韩精品二区一区久久| 亚洲成人熟妇一区二区三区| av大全在线播放免费| 干逼又爽又黄又免费的视频| 人妻av无码专区久久绿巨人| 日韩人妻xxxxx| 亚洲综合在线观看免费| 日本少妇高清视频xxxxx| 老司机福利精品免费视频一区二区| 东游记中文字幕版哪里可以看到| 亚洲午夜福利中文乱码字幕| 国产变态另类在线观看| 国产自拍黄片在线观看| 亚洲av成人免费网站|