国产无遮挡裸体免费直播视频,久久精品国产蜜臀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

最新評論

天天摸天天日天天操| 黄工厂精品视频在线观看 | 国产福利小视频二区| 天天干夜夜操啊啊啊| 国产日韩av一区二区在线| 蜜桃视频在线欧美一区| 日本中文字幕一二区视频| 黄色视频在线观看高清无码 | 可以免费看的www视频你懂的| aiss午夜免费视频| 福利片区一区二体验区| 鸡巴操逼一级黄色气| 老鸭窝日韩精品视频观看| okirakuhuhu在线观看| 黑人性生活视频免费看| 欧美亚洲免费视频观看| 亚洲国产精品中文字幕网站| 国产日韩av一区二区在线| 九九视频在线精品播放| 日韩黄色片在线观看网站| 人妻少妇亚洲一区二区| 日韩精品一区二区三区在线播放| 日本精品视频不卡一二三| 青青色国产视频在线| 狠狠鲁狠狠操天天晚上干干| 伊人综合aⅴ在线网| 97青青青手机在线视频 | 老司机欧美视频在线看| 最新91精品视频在线| 欧美熟妇一区二区三区仙踪林| 天天操夜夜操天天操天天操| 久久久久久久亚洲午夜综合福利| 精品人妻伦一二三区久| 91传媒一区二区三区| 人妻久久无码中文成人| 五十路老熟女码av| 美女少妇亚洲精选av| 中文字幕日韩人妻在线三区| av完全免费在线观看av| 丝袜长腿第一页在线| 国产在线免费观看成人| av在线免费中文字幕| 女同久久精品秋霞网| 免费一级特黄特色大片在线观看| 黑人进入丰满少妇视频| 无码日韩人妻精品久久| 国产妇女自拍区在线观看| 亚洲精品成人网久久久久久小说 | 亚洲欧美清纯唯美另类 | 精品区一区二区三区四区人妻| 在线网站你懂得老司机| 成人30分钟免费视频| 亚洲av无硬久久精品蜜桃| 动漫av网站18禁| 又粗又硬又猛又爽又黄的| 亚洲特黄aaaa片| 国产精品久久久久国产三级试频| 偷拍自拍 中文字幕| 亚洲综合一区二区精品久久| 成人亚洲精品国产精品| 欧美成人综合色在线噜噜| 国产视频一区二区午夜| 中文字幕中文字幕人妻| 亚洲精品久久综合久| 亚洲精品高清自拍av| 亚洲国产欧美一区二区丝袜黑人 | 韩国亚洲欧美超一级在线播放视频| 人妻无码色噜噜狠狠狠狠色| 中文字幕一区二区三区人妻大片| 亚洲一区二区激情在线| 在线观看视频网站麻豆| av久久精品北条麻妃av观看| 啊啊啊想要被插进去视频| 亚洲人人妻一区二区三区| 天天日天天日天天擦| 亚洲精品麻豆免费在线观看| 国产日韩欧美美利坚蜜臀懂色| 2020中文字幕在线播放| 国产日韩欧美视频在线导航| 天天操天天插天天色| 国产成人精品午夜福利训2021| 97少妇精品在线观看| 人妻无码色噜噜狠狠狠狠色| 欧洲欧美日韩国产在线| 搡老妇人老女人老熟女| 亚洲国产中文字幕啊啊啊不行了| 国产密臀av一区二区三| 青草青永久在线视频18| 国产免费av一区二区凹凸四季| 日本黄在免费看视频| 国产av欧美精品高潮网站| 日韩特级黄片高清在线看| 狠狠的往里顶撞h百合| 国产亚洲精品品视频在线| 国产精品国产三级国产午| 久久精品国产亚洲精品166m| av中文字幕电影在线看| 岛国黄色大片在线观看| 五十路丰满人妻熟妇| 中英文字幕av一区| 亚洲一区二区三区偷拍女厕91| 亚洲熟妇x久久av久久| 阿v天堂2014 一区亚洲| 亚洲综合另类精品小说| 超级福利视频在线观看| 啊啊好慢点插舔我逼啊啊啊视频 | 91极品大一女神正在播放| 午夜在线观看岛国av,com| 久久丁香婷婷六月天| 精品av国产一区二区三区四区| 99精品视频在线观看婷婷| 精品欧美一区二区vr在线观看 | 国产成人精品福利短视频| 大屁股熟女一区二区三区| 啪啪啪操人视频在线播放| 嫩草aⅴ一区二区三区| 在线播放国产黄色av| 精品国产乱码一区二区三区乱| 青草青永久在线视频18| 视频久久久久久久人妻| 成人18禁网站在线播放| 超碰97免费人妻麻豆| 欲满人妻中文字幕在线| 青娱乐在线免费视频盛宴| 中文字幕av男人天堂| 国产精品女邻居小骚货| 韩国AV无码不卡在线播放 | 青草久久视频在线观看| 亚洲精品高清自拍av | 国产在线观看黄色视频| 天堂av在线播放免费| av老司机亚洲一区二区| 中文字幕,亚洲人妻| 精品91自产拍在线观看一区| 无忧传媒在线观看视频| 在线观看免费av网址大全| 在线国产精品一区二区三区| 都市家庭人妻激情自拍视频| 日日夜夜精品一二三| 亚洲推理片免费看网站| 欧美另类重口味极品在线观看| 福利视频网久久91| 伊人精品福利综合导航| 2022中文字幕在线| 熟女91pooyn熟女| 免费无毒热热热热热热久| 成人免费毛片aaaa| 亚洲精品 日韩电影| 亚洲国产免费av一区二区三区| 亚洲福利精品视频在线免费观看| 欧美成人黄片一区二区三区| 午夜dv内射一区区| 日本一区二区三区免费小视频| 国产乱弄免费视频观看| 福利在线视频网址导航| 天天操天天干天天艹| 日本男女操逼视频免费看 | 不卡一不卡二不卡三| 日韩加勒比东京热二区| 亚洲免费国产在线日韩| 早川濑里奈av黑人番号| 国产精品视频一区在线播放| 人妻丝袜诱惑我操她视频| 无码中文字幕波多野不卡| 夜女神免费福利视频| 国产视频网站一区二区三区| 国产精品系列在线观看一区二区| 色av色婷婷人妻久久久精品高清 | 国产精品手机在线看片| 亚洲va国产va欧美va在线| 日韩视频一区二区免费观看| 在线观看国产网站资源| 噜噜色噜噜噜久色超碰| 亚洲自拍偷拍综合色| 亚洲午夜电影之麻豆| 日韩熟女系列一区二区三区| 久久久久久久99精品| 天天爽夜夜爽人人爽QC| 成年人啪啪视频在线观看| 国产黄网站在线观看播放| 中文字幕 码 在线视频| 99亚洲美女一区二区三区| 男生用鸡操女生视频动漫| 亚洲 清纯 国产com| 亚洲嫩模一区二区三区| 999久久久久999| 97精品视频在线观看| 国产片免费观看在线观看| 国产精品手机在线看片| 日韩中文字幕精品淫| 一区二区三区在线视频福利| 日本性感美女视频网站| 亚洲成人av一区在线| 精品国产成人亚洲午夜| 国内精品在线播放第一页| 亚洲综合另类精品小说| 漂亮 人妻被中出中文| 青青青aaaa免费| 天天日天天干天天搡| 国产97视频在线精品| 国产黄网站在线观看播放| 新婚人妻聚会被中出| 狠狠嗨日韩综合久久| 在线播放 日韩 av| 久久久久久97三级| 天天日天天爽天天爽| 亚洲天堂第一页中文字幕| 啊啊好大好爽啊啊操我啊啊视频 | 亚洲av无女神免非久久| 一区二区三区av高清免费| 日本美女成人在线视频| 99av国产精品欲麻豆| 无码精品一区二区三区人| 果冻传媒av一区二区三区| 岛国青草视频在线观看| 亚洲日产av一区二区在线| 亚洲人妻视频在线网| 欧美偷拍自拍色图片| 精品成人啪啪18免费蜜臀| 午夜国产福利在线观看| 男生用鸡操女生视频动漫| 女警官打开双腿沦为性奴| 小泽玛利亚视频在线观看| 一区二区久久成人网| 黄色无码鸡吧操逼视频| 欧美日韩精品永久免费网址| a v欧美一区=区三区| 高潮视频在线快速观看国家快速| 国产亚洲欧美视频网站| 精品久久久久久久久久中文蒉 | 青青草原色片网站在线观看| 一区二区三区av高清免费| 一区二区三区欧美日韩高清播放| 夫妻在线观看视频91| 97超碰免费在线视频| 日韩一区二区电国产精品| 青青社区2国产视频| 成年人中文字幕在线观看| 做爰视频毛片下载蜜桃视频1| 亚洲1卡2卡三卡4卡在线观看| 日本一道二三区视频久久| 青青色国产视频在线| 成人影片高清在线观看| 偷拍自拍国产在线视频| 亚洲国产40页第21页| 大香蕉大香蕉在线有码 av| 国产不卡av在线免费| 婷婷综合亚洲爱久久| 蝴蝶伊人久久中文娱乐网| 女同性ⅹxx女同h偷拍| 97小视频人妻一区二区| 欧美成人综合视频一区二区| 国产日韩精品一二三区久久久| 免费在线播放a级片| 超碰公开大香蕉97| av在线shipin| 日本熟妇一区二区x x| 亚洲色偷偷综合亚洲AV伊人| 最新91九色国产在线观看| 国产成人一区二区三区电影网站| 75国产综合在线视频| 日本黄在免费看视频| 精品一线二线三线日本| 中文字幕AV在线免费看 | 午夜免费观看精品视频| 人人妻人人人操人人人爽| 国产精品人妻一区二区三区网站| 91 亚洲视频在线观看| 青青热久免费精品视频在线观看 | 国产午夜亚洲精品不卡在线观看| aaa久久久久久久久| 性感美女诱惑福利视频| 自拍偷拍日韩欧美一区二区| 少妇ww搡性bbb91| 日美女屁股黄邑视频| 欧美久久久久久三级网| 亚洲精品午夜久久久久| 大肉大捧一进一出好爽在线视频| 白嫩白嫩美女极品国产在线观看| av中文字幕福利网| 国产在线拍揄自揄视频网站| 亚洲欧美一区二区三区电影| 成人免费公开视频无毒| 欧美视频中文一区二区三区| 国产精品成人xxxx| 天天日天天做天天日天天做| 欧美亚洲一二三区蜜臀| 天天日天天爽天天干| 一区二区三区四区视频| 日韩精品二区一区久久| 日本最新一二三区不卡在线 | 天天艹天天干天天操| 不卡精品视频在线观看| 熟女人妻在线观看视频| 经典国语激情内射视频| 国产又粗又硬又猛的毛片视频| 男人的天堂一区二区在线观看| 中文字幕在线免费第一页| 久久午夜夜伦痒痒想咳嗽P| 欧美日韩人妻久久精品高清国产 | 日本免费视频午夜福利视频| 老司机你懂得福利视频| 在线免费视频 自拍| 午夜久久久久久久99| 鸡巴操逼一级黄色气| 中文字幕第1页av一天堂网| 日本黄色三级高清视频| 日本一道二三区视频久久| 老鸭窝日韩精品视频观看| 久久久精品精品视频视频| 99精品亚洲av无码国产另类| 操日韩美女视频在线免费看| av天堂资源最新版在线看| 护士小嫩嫩又紧又爽20p| 天天草天天色天天干| 亚洲在线一区二区欧美| 国产V亚洲V天堂无码欠欠| 美女福利视频网址导航| 国内资源最丰富的网站| 伊人综合免费在线视频| 欧美日韩不卡一区不区二区| 99精品一区二区三区的区| 亚洲成人国产av在线| 一个色综合男人天堂| 久久香蕉国产免费天天| 9色在线视频免费观看| 亚洲中文字字幕乱码| 亚洲成人黄色一区二区三区| 亚洲免费在线视频网站| av手机免费在线观看高潮| 精品国产在线手机在线| av老司机精品在线观看| 88成人免费av网站| 青青操免费日综合视频观看| 日本又色又爽又黄又粗| 亚洲第17页国产精品| 亚洲日本一区二区久久久精品| 久久久久久97三级| 99精品国产免费久久| 一色桃子久久精品亚洲| 欧美黄片精彩在线免费观看| 亚洲中文字幕国产日韩| 中国黄色av一级片| 午夜美女少妇福利视频| 99一区二区在线观看| 久草免费人妻视频在线| 天天操天天操天天碰| 日本性感美女写真视频| 久久精品美女免费视频| 偷拍自拍亚洲视频在线观看| yy6080国产在线视频| 日韩a级黄色小视频| 国产又粗又硬又大视频| 人妻爱爱 中文字幕| 天天干狠狠干天天操| 国产卡一卡二卡三乱码手机| 天天摸天天亲天天舔天天操天天爽| 精品一区二区三区午夜| 91老师蜜桃臀大屁股| 亚洲av男人天堂久久| 伊人综合aⅴ在线网| 欧美80老妇人性视频| 97少妇精品在线观看| 天天日天天敢天天干| 日本一区美女福利视频| 成人影片高清在线观看| 亚洲av色图18p| 天天日天天舔天天射进去| 中文字幕亚洲久久久| 精品91高清在线观看| 国产精品久久久久久久精品视频| 国产之丝袜脚在线一区二区三区| 精品国产午夜视频一区二区| 国产亚洲成人免费在线观看| 91精品激情五月婷婷在线| 亚洲高清国产拍青青草原| 亚洲欧美精品综合图片小说| 国产精品久久久黄网站| 午夜精品福利91av| 91‖亚洲‖国产熟女| 亚洲免费成人a v| 国产真实灌醉下药美女av福利| 超碰公开大香蕉97| 人妻少妇亚洲一区二区| 男人的天堂av日韩亚洲| 国产一区二区久久久裸臀| 精品一区二区三区欧美| 亚洲国产美女一区二区三区软件| 一级黄片久久久久久久久| 国产精品人妻一区二区三区网站| 91chinese在线视频| 大骚逼91抽插出水视频| 欧美天堂av无线av欧美| 92福利视频午夜1000看| 美女av色播在线播放| 任我爽精品视频在线播放| 激情小视频国产在线| 夜夜嗨av一区二区三区中文字幕| 亚洲av男人天堂久久| 91天堂精品一区二区| 动色av一区二区三区| av天堂中文字幕最新| 骚逼被大屌狂草视频免费看| 天天日夜夜干天天操| 精品91自产拍在线观看一区| 中文字幕免费福利视频6| 中文字幕一区二区三区蜜月| 欧美 亚洲 另类综合| 伊人日日日草夜夜草| 色97视频在线播放| 特级无码毛片免费视频播放 | 年轻的人妻被夫上司侵犯| 白白操白白色在线免费视频 | 超碰中文字幕免费观看| 日本少妇的秘密免费视频| 日韩精品中文字幕福利| 精品人妻伦一二三区久 | 国产欧美日韩第三页| 午夜的视频在线观看| 久久精品国产999| 激情综合治理六月婷婷| 日本韩国亚洲综合日韩欧美国产| 亚洲国产精品中文字幕网站| 精内国产乱码久久久久久| 精品av国产一区二区三区四区| 亚洲午夜电影在线观看| 自拍偷区二区三区麻豆| 色综合天天综合网国产成人| 99热这里只有国产精品6| 成人国产小视频在线观看| 人妻丝袜精品中文字幕| 福利视频广场一区二区| 欧美黑人巨大性xxxxx猛交| 中国产一级黄片免费视频播放| 黄色片黄色片wyaa| 青青草原网站在线观看 | 天天插天天色天天日| 国产精品久久久久久久女人18| 欧美日韩人妻久久精品高清国产| 最新中文字幕免费视频| 天天干天天日天天干天天操| 国产麻豆国语对白露脸剧情| 97精品视频在线观看| 国产福利小视频二区| 国产九色91在线视频| 国内资源最丰富的网站| 国产麻豆91在线视频| 日本高清成人一区二区三区| 日韩美女综合中文字幕pp| 国产熟妇一区二区三区av| av无限看熟女人妻另类av| 国产1区,2区,3区| 中文字幕一区二区三区人妻大片| 久久精品视频一区二区三区四区| av在线免费观看亚洲天堂| 日本一区精品视频在线观看| 久久精品国产亚洲精品166m| 亚洲另类伦春色综合小| 亚洲熟女女同志女同| 亚洲精品精品国产综合| 非洲黑人一级特黄片| av日韩在线观看大全| 国产一区二区火爆视频| 亚洲精品久久视频婷婷| 青草亚洲视频在线观看| 91精品国产91青青碰| 97超碰最新免费在线观看| 黑人性生活视频免费看| 亚洲人妻视频在线网| jiujiure精品视频在线| 97人妻人人澡爽人人精品| 欧美韩国日本国产亚洲| 日本熟妇丰满厨房55| 欧美中国日韩久久精品| 北条麻妃肉色丝袜视频| 亚洲 图片 欧美 图片| 黄色录像鸡巴插进去| 在线观看免费岛国av| 国产成人无码精品久久久电影| 青青青青青青草国产| 丁香花免费在线观看中文字幕| 98精产国品一二三产区区别| 免费观看污视频网站| 亚洲午夜高清在线观看| 成年人黄色片免费网站| 中国熟女@视频91| 狠狠的往里顶撞h百合| 都市激情校园春色狠狠| 午夜精品亚洲精品五月色| 欧美精产国品一二三产品价格| 男生用鸡操女生视频动漫| 狠狠躁夜夜躁人人爽天天天天97| 1000部国产精品成人观看视频 | 天天操夜夜操天天操天天操| 精品91自产拍在线观看一区| 三级av中文字幕在线观看| chinese国产盗摄一区二区| 欧美激情电影免费在线| 日本人妻精品久久久久久| 欧美美女人体视频一区| 亚洲欧美成人综合视频| 久久人人做人人妻人人玩精品vr| 久久久久久cao我的性感人妻| 亚洲 国产 成人 在线| sejizz在线视频| 巨乳人妻日下部加奈被邻居中出 | 精品人妻伦一二三区久| 国产精品系列在线观看一区二区| 绝顶痉挛大潮喷高潮无码| 欧美成人综合色在线噜噜| 亚洲中文字幕校园春色 | 成年女人免费播放视频| 粗大的内捧猛烈进出爽大牛汉子| 亚洲av日韩高清hd| 97成人免费在线观看网站| 亚洲国产精品免费在线观看| 亚欧在线视频你懂的| 在线免费观看99视频| 亚洲人妻30pwc| 青青青青在线视频免费观看| 午夜久久久久久久99| 成年人中文字幕在线观看| 欧美一区二区三区久久久aaa| 日韩精品二区一区久久| 91九色porny蝌蚪国产成人| 五十路熟女人妻一区二| 亚洲成人av一区久久| 激情国产小视频在线| weyvv5国产成人精品的视频| 成人av电影免费版| 亚洲视频在线视频看视频在线| 99热久久这里只有精品| 日本人竟这样玩学生妹| 国产又大又黄免费观看| 人妻丝袜精品中文字幕| 最近的中文字幕在线mv视频| 日韩欧美高清免费在线| 国产麻豆国语对白露脸剧情| 大屁股肉感人妻中文字幕在线| 97人人妻人人澡人人爽人人精品| 我想看操逼黄色大片| 欧美精产国品一二三产品区别大吗| 国产乱子伦一二三区| 丝袜长腿第一页在线| 久久精品国产999| 91色九色porny| 啪啪啪啪啪啪啪啪av| 亚洲欧美精品综合图片小说| 免费在线福利小视频| 女生自摸在线观看一区二区三区| 人妻久久无码中文成人| 成人资源在线观看免费官网| 午夜精品福利91av| 男女啪啪视频免费在线观看| 午夜久久久久久久99| 国产精品国产精品一区二区| 国产午夜无码福利在线看| 久久精品国产亚洲精品166m| 天天日天天干天天搡| 亚洲 图片 欧美 图片| 午夜精品久久久久久99热| 亚洲av男人天堂久久| 亚洲成人午夜电影在线观看| 免费岛国喷水视频在线观看 | aiss午夜免费视频| 午夜国产免费福利av| 国产高清在线观看1区2区| 国产av福利网址大全| 国产综合高清在线观看| 国产精品久久久久久久女人18| 欧美日韩不卡一区不区二区| 特一级特级黄色网片| 老师啊太大了啊啊啊尻视频| 日韩av有码一区二区三区4| 高清成人av一区三区 | 9l人妻人人爽人人爽| 青青草原色片网站在线观看| 97青青青手机在线视频| 1000小视频在线| 超碰中文字幕免费观看| 亚洲福利午夜久久久精品电影网| 亚洲国产成人av在线一区| 婷婷久久久综合中文字幕| 沙月文乃人妻侵犯中文字幕在线| 亚洲福利精品福利精品福利| 大鸡吧插逼逼视频免费看| 天天色天天爱天天爽| 真实国模和老外性视频| 亚洲卡1卡2卡三卡四老狼| 日本性感美女三级视频| 一区二区三区日本伦理| 亚洲一区二区三区五区| 成人H精品动漫在线无码播放| 日韩亚国产欧美三级涩爱| 欧洲欧美日韩国产在线| 天天干狠狠干天天操 | 男人操女人逼逼视频网站| 播放日本一区二区三区电影 | 久草视频在线免播放| 又粗又硬又猛又黄免费30| 成人蜜臀午夜久久一区| 亚洲视频在线观看高清| 第一福利视频在线观看| 91亚洲精品干熟女蜜桃频道| 搡老熟女一区二区在线观看| 精品久久婷婷免费视频| 国产a级毛久久久久精品| 在线观看免费视频网| 中文 成人 在线 视频| 毛片一级完整版免费| 又黄又刺激的午夜小视频| 久久麻豆亚洲精品av| 78色精品一区二区三区| 熟女人妻一区二区精品视频| 伊人开心婷婷国产av| av俺也去在线播放| 中文字幕av一区在线观看| 女生自摸在线观看一区二区三区| 天天操天天干天天艹| 99久久成人日韩欧美精品| 色偷偷伊人大杳蕉综合网| 精产国品久久一二三产区区别 | 亚洲av无女神免非久久| 久草电影免费在线观看| 自拍偷拍一区二区三区图片| 大鸡巴操娇小玲珑的女孩逼| 天天日夜夜操天天摸| 久久久制服丝袜中文字幕| 中文字幕人妻一区二区视频 | 欧美乱妇无乱码一区二区| 五十路在线观看完整版| 天堂av狠狠操蜜桃| 中文字幕高清在线免费播放| 日韩精品激情在线观看| 美女张开两腿让男人桶av| 特一级特级黄色网片| 国产内射中出在线观看| 91‖亚洲‖国产熟女| 非洲黑人一级特黄片| 日本真人性生活视频免费看| 日韩欧美国产一区ab| av中文字幕网址在线| 亚洲欧美一区二区三区爱爱动图| 国产av福利网址大全| 在线观看的黄色免费网站| 一级黄色av在线观看| 91福利在线视频免费观看| 自拍 日韩 欧美激情| 黄色片黄色片wyaa| 91国内精品久久久久精品一| 国产1区,2区,3区| 欧美日韩在线精品一区二区三| 成年美女黄网站18禁久久| 在线视频这里只有精品自拍| av成人在线观看一区| 国产成人综合一区2区| 国产麻豆乱子伦午夜视频观看| 97小视频人妻一区二区| 午夜婷婷在线观看视频| 午夜在线观看岛国av,com| 人妻激情图片视频小说| 亚洲成人线上免费视频观看| 男人的天堂在线黄色| 毛茸茸的大外阴中国视频| 中文字幕免费在线免费| 日韩少妇人妻精品无码专区| 日韩成人免费电影二区| 亚洲欧美久久久久久久久| 伊人网中文字幕在线视频| 综合页自拍视频在线播放| 久久精品国产999| 在线免费观看99视频| 亚洲欧美福利在线观看| jiuse91九色视频| 91‖亚洲‖国产熟女| 中文字幕之无码色多多| 日本av熟女在线视频| 国产高清精品极品美女| 青青青青视频在线播放| 在线成人日韩av电影| 一区二区免费高清黄色视频| 亚洲免费国产在线日韩| 亚洲天堂精品福利成人av| 搡老妇人老女人老熟女| 播放日本一区二区三区电影| 欧美黑人性猛交xxxxⅹooo| 久久久制服丝袜中文字幕| 午夜精品亚洲精品五月色| 777奇米久久精品一区| 91人妻精品一区二区久久| 成年人的在线免费视频| 国产精品亚洲在线观看| 亚洲国产在线精品国偷产拍| eeuss鲁片一区二区三区| 亚洲精品 日韩电影| 亚洲午夜精品小视频| 天天草天天色天天干| 五十路老熟女码av| 影音先锋女人av噜噜色| 绯色av蜜臀vs少妇| 国产麻豆乱子伦午夜视频观看| 天天操天天污天天射| av老司机精品在线观看| 亚洲在线观看中文字幕av| 久久精品视频一区二区三区四区| 美洲精品一二三产区区别| 美女操逼免费短视频下载链接| 亚洲公开视频在线观看| 国产九色91在线观看精品| 小穴多水久久精品免费看| 欧美日韩国产一区二区三区三州| 天天日天天干天天搡| 丰满少妇人妻xxxxx| 欧美专区第八页一区在线播放| 日本啪啪啪啪啪啪啪| 人人妻人人爽人人澡人人精品| 国产av一区2区3区| 亚洲欧美福利在线观看| 大鸡八强奸视频在线观看| 哥哥姐姐综合激情小说| 宅男噜噜噜666国产| 亚洲国产40页第21页| 亚洲成人熟妇一区二区三区 | 亚洲公开视频在线观看| 性色av一区二区三区久久久| 女生被男生插的视频网站| 成人性黑人一级av| 少妇系列一区二区三区视频| 在线观看的黄色免费网站| 免费av岛国天堂网站| 在线国产日韩欧美视频| 亚欧在线视频你懂的| 国产aⅴ一线在线观看| caoporn蜜桃视频| 久青青草视频手机在线免费观看 | 色呦呦视频在线观看视频| 亚洲中文字字幕乱码| 亚洲va天堂va国产va久| 免费国产性生活视频| 国产精品系列在线观看一区二区| 三级黄色亚洲成人av| 青娱乐蜜桃臀av色| 国产日韩精品电影7777| 欧美视频综合第一页| 日本一道二三区视频久久| 黄工厂精品视频在线观看| 国产自拍在线观看成人| 熟女国产一区亚洲中文字幕| 久久午夜夜伦痒痒想咳嗽P| 在线视频免费观看网| 色综合久久无码中文字幕波多| 日韩亚国产欧美三级涩爱| 亚洲另类综合一区小说| 女生被男生插的视频网站| 综合国产成人在线观看| 国内资源最丰富的网站| 日韩激情文学在线视频| 春色激情网欧美成人| 一区二区三区美女毛片| 国产黄色大片在线免费播放| 天天操天天污天天射| 国产在线自在拍91国语自产精品 | 一二三区在线观看视频| av天堂资源最新版在线看| 99热99re在线播放| 插小穴高清无码中文字幕 | 亚洲一区二区三区精品视频在线 | 黑人乱偷人妻中文字幕| av在线免费观看亚洲天堂| 护士特殊服务久久久久久久| 97国产精品97久久| 沙月文乃人妻侵犯中文字幕在线 | av日韩在线免费播放| 97小视频人妻一区二区| 老有所依在线观看完整版| 日本韩国在线观看一区二区| 一级黄色av在线观看| 色婷婷久久久久swag精品| 亚洲欧美另类手机在线| 亚洲国产在人线放午夜| 四虎永久在线精品免费区二区| 夜色撩人久久7777| av完全免费在线观看av| 懂色av蜜桃a v| 日韩精品激情在线观看| 美日韩在线视频免费看| 国产精品成久久久久三级蜜臀av | 开心 色 六月 婷婷| 亚洲高清视频在线不卡| 天干天天天色天天日天天射 | 国产女人被做到高潮免费视频| 午夜在线精品偷拍一区二| 伊拉克及约旦宣布关闭领空| 在线观看成人国产电影| 亚洲av男人天堂久久| 久久久久久性虐视频| 青娱乐最新视频在线| 不卡一不卡二不卡三| 国产美女一区在线观看| 91九色porny国产在线| 亚洲男人在线天堂网| 国产黄色片蝌蚪九色91| 亚洲一区二区三区uij| 欧美地区一二三专区| 2025年人妻中文字幕乱码在线| 韩国女主播精品视频网站| 久久久久久cao我的性感人妻| 男女第一次视频在线观看| 一区二区三区久久中文字幕| 亚洲av男人天堂久久| 91p0rny九色露脸熟女| 久久精品国产999| 成人午夜电影在线观看 久久| 国产使劲操在线播放| 日本脱亚入欧是指什么| 91欧美在线免费观看| 午夜av一区二区三区| 亚洲高清视频在线不卡| 在线网站你懂得老司机| 成人动漫大肉棒插进去视频| 亚洲欧美一区二区三区爱爱动图| 午夜毛片不卡免费观看视频 | 伊人成人在线综合网| 久草视频首页在线观看| 国产美女午夜福利久久| 日本女大学生的黄色小视频| 欧洲黄页网免费观看| 国产精品入口麻豆啊啊啊 | 男生舔女生逼逼的视频| 成人动漫大肉棒插进去视频| 4个黑人操素人视频网站精品91| 亚洲精品欧美日韩在线播放| av天堂资源最新版在线看| 黄片三级三级三级在线观看| 91香蕉成人app下载| 九一传媒制片厂视频在线免费观看| 五月色婷婷综合开心网4438| 日本av高清免费网站| 午夜美女少妇福利视频| 直接观看免费黄网站| 亚洲码av无色中文| 93人妻人人揉人人澡人人| 91大神福利视频网| 非洲黑人一级特黄片| 18禁免费av网站| 女生自摸在线观看一区二区三区| 日韩欧美中文国产在线| 特一级特级黄色网片| 精品日产卡一卡二卡国色天香| 天天日天天干天天干天天日| 久久综合老鸭窝色综合久久| 五月婷婷在线观看视频免费| 成年人午夜黄片视频资源| 女同性ⅹxx女同hd| 91国语爽死我了不卡| 97瑟瑟超碰在线香蕉| 日韩写真福利视频在线观看| av视网站在线观看| 天天射夜夜操狠狠干| 福利国产视频在线观看| 日日爽天天干夜夜操| 熟女俱乐部一二三区| 国产日本欧美亚洲精品视| 老司机福利精品免费视频一区二区| 欧美日本国产自视大全| 高潮喷水在线视频观看| 在线观看日韩激情视频| 国产乱子伦精品视频潮优女| 男生舔女生逼逼的视频| 国产刺激激情美女网站| 大胸性感美女羞爽操逼毛片| 男生用鸡操女生视频动漫 | 亚洲码av无色中文| 成人亚洲精品国产精品| 欧美女同性恋免费a| 3D动漫精品啪啪一区二区下载| 亚洲特黄aaaa片| 2020久久躁狠狠躁夜夜躁| 100%美女蜜桃视频| 日韩精品电影亚洲一区| 日本脱亚入欧是指什么| 91www一区二区三区| 一区二区三区四区五区性感视频 | 免费观看理论片完整版| 一区二区三区激情在线| 黄色三级网站免费下载| 最新国产精品网址在线观看| 成人在线欧美日韩国产| 国产又粗又黄又硬又爽| 天堂av中文在线最新版| 日韩中文字幕精品淫| 精品人妻一二三区久久| 久久久久五月天丁香社区| 五色婷婷综合狠狠爱| 美洲精品一二三产区区别| 中文字幕一区二 区二三区四区| 中文字幕亚洲久久久| 一区国内二区日韩三区欧美| 亚洲av色香蕉一区二区三区| 国产97视频在线精品| 日本少妇的秘密免费视频| 中国黄片视频一区91| 欧美成人综合色在线噜噜| 亚洲卡1卡2卡三卡四老狼| av完全免费在线观看av| 亚洲天堂精品久久久| 性欧美激情久久久久久久| 成人18禁网站在线播放| 真实国产乱子伦一区二区| 日本免费视频午夜福利视频| 97人妻无码AV碰碰视频| 亚国产成人精品久久久| 国产精品黄片免费在线观看| 骚逼被大屌狂草视频免费看| 国产高清97在线观看视频| 中文字幕综合一区二区| 大香蕉福利在线观看| 高清成人av一区三区 | 免费黄页网站4188| 久久久噜噜噜久久熟女av| 欧美特级特黄a大片免费| 国产视频网站国产视频| 青草久久视频在线观看| 亚洲少妇高潮免费观看| 无码精品一区二区三区人| 日本男女操逼视频免费看| 啪啪啪啪啪啪啪啪av| 1区2区3区不卡视频| 91天堂天天日天天操| 不卡一区一区三区在线| 专门看国产熟妇的网站| 久久精品美女免费视频| 国产品国产三级国产普通话三级| 成人伊人精品色xxxx视频| 日韩av大胆在线观看| 丰满的子国产在线观看| 国内自拍第一页在线观看| 男生舔女生逼逼的视频| 超碰公开大香蕉97| 国产一级精品综合av| 国产日本精品久久久久久久| japanese日本熟妇另类| 看一级特黄a大片日本片黑人| 曰本无码人妻丰满熟妇啪啪| 天天干夜夜操啊啊啊| brazzers欧熟精品系列| 国产精品国产三级国产精东| 在线国产中文字幕视频| 大香蕉伊人国产在线| 天堂资源网av中文字幕| 久久精品久久精品亚洲人| 最新激情中文字幕视频| 丝袜国产专区在线观看| 日本精品视频不卡一二三| 久久久久久久精品老熟妇| 久久久制服丝袜中文字幕| 亚洲另类综合一区小说| 在线免费观看亚洲精品电影| 国产一区二区在线欧美| 色哟哟国产精品入口| 亚洲精品无码色午夜福利理论片| 97精品人妻一区二区三区精品| 熟女91pooyn熟女| 一区二区三区四区中文| 亚洲免费国产在线日韩| av天堂资源最新版在线看| 5528327男人天堂| 国产亚洲视频在线观看| 最新的中文字幕 亚洲| 一区二区三区日本伦理| avjpm亚洲伊人久久| 91精品高清一区二区三区| 亚洲青青操骚货在线视频| 精品欧美一区二区vr在线观看| 人妻素人精油按摩中出| www,久久久,com| 91综合久久亚洲综合| 99久久激情婷婷综合五月天| 在线观看国产免费麻豆| 端庄人妻堕落挣扎沉沦| 精品91自产拍在线观看一区| 不卡精品视频在线观看| 青春草视频在线免费播放| 最新激情中文字幕视频| www日韩a级s片av| 中文 成人 在线 视频| 91福利视频免费在线观看| 中文字幕一区二区三区蜜月| 好男人视频在线免费观看网站| 久草视频在线免播放| 中文字幕日韩人妻在线三区| 一级黄片大鸡巴插入美女| 五十路息与子猛烈交尾视频| 久久久极品久久蜜桃| 黄色在线观看免费观看在线 | 中文字幕亚洲久久久| 丁香花免费在线观看中文字幕| 中文字幕 码 在线视频| 蜜桃精品久久久一区二区| 国产高清女主播在线| 91试看福利一分钟| 美日韩在线视频免费看| 天干天天天色天天日天天射 | av破解版在线观看| 综合页自拍视频在线播放| 国产片免费观看在线观看| 狠狠躁夜夜躁人人爽天天天天97| 在线可以看的视频你懂的| 亚洲欧美成人综合在线观看| jul—619中文字幕在线| 亚洲国产精品中文字幕网站| 日韩中文字幕精品淫| 夜色撩人久久7777| 激情伦理欧美日韩中文字幕| 久久丁香花五月天色婷婷| 老司机在线精品福利视频| 国产自拍在线观看成人| 欧美交性又色又爽又黄麻豆| 天堂女人av一区二区| 黄色视频成年人免费观看| 欧美第一页在线免费观看视频| 天天色天天操天天舔| 国产大鸡巴大鸡巴操小骚逼小骚逼| 亚洲国产成人av在线一区| 日韩成人免费电影二区| 日本成人一区二区不卡免费在线| 女同久久精品秋霞网| av中文字幕福利网| 天天操天天弄天天射| 日本啪啪啪啪啪啪啪| 天天插天天色天天日| 人妻丝袜精品中文字幕| 精品区一区二区三区四区人妻| 91香蕉成人app下载| 91九色porny蝌蚪国产成人| 欧美成人猛片aaaaaaa| 男人天堂色男人av| 日本精品一区二区三区在线视频。| 亚洲另类伦春色综合小| 国产视频网站一区二区三区 | 国产在线观看免费人成短视频| 开心 色 六月 婷婷| 蜜桃视频在线欧美一区| av在线免费中文字幕| 人妻无码中文字幕专区| 插逼视频双插洞国产操逼插洞| 天天草天天色天天干| 中文字幕一区二区亚洲一区| 91p0rny九色露脸熟女| 日本欧美视频在线观看三区| 无码精品一区二区三区人| 欧美另类重口味极品在线观看| 国产三级片久久久久久久 | 国产成人自拍视频播放| 97瑟瑟超碰在线香蕉| 成人30分钟免费视频| 成人乱码一区二区三区av| 在线观看视频 你懂的| 久久精品亚洲成在人线a| 大鸡八强奸视频在线观看| 国产三级影院在线观看| 青青青青草手机在线视频免费看| 都市家庭人妻激情自拍视频| 人妻久久久精品69系列| 人妻丝袜榨强中文字幕| 亚洲av天堂在线播放| mm131美女午夜爽爽爽| 亚洲1区2区3区精华液| 99av国产精品欲麻豆| 天天通天天透天天插| 天天日天天操天天摸天天舔 | 中文字幕1卡1区2区3区| 偷偷玩弄新婚人妻h视频| 精品乱子伦一区二区三区免费播| 熟女俱乐部一二三区| 中文字幕av男人天堂| 91精品国产黑色丝袜| 又粗又硬又猛又黄免费30| 亚洲自拍偷拍综合色| 色综合久久久久久久久中文| 日韩欧美高清免费在线| 欧美少妇性一区二区三区| 超鹏97历史在线观看| 亚洲男人的天堂a在线| 老司机福利精品免费视频一区二区| 青青草亚洲国产精品视频| 婷婷久久久综合中文字幕| 色婷婷精品大在线观看| 国产又粗又猛又爽又黄的视频美国| 99精品国产自在现线观看| 2022国产综合在线干| 狠狠鲁狠狠操天天晚上干干| 亚洲精品国产在线电影| 亚洲一区二区三区av网站| 丰满少妇人妻xxxxx| 少妇露脸深喉口爆吞精| 黑人进入丰满少妇视频| 欧美色呦呦最新网址| 久久精品国产亚洲精品166m| 91免费黄片可看视频| 国产视频在线视频播放| 老司机99精品视频在线观看| 人人妻人人澡欧美91精品| 日本a级视频老女人| 久久丁香花五月天色婷婷| 国产精品手机在线看片| 日本www中文字幕| 偷拍自拍亚洲美腿丝袜| 国产福利小视频二区| 大陆胖女人与丈夫操b国语高清| 国产精品成人xxxx| 亚洲av可乐操首页| 日韩a级精品一区二区| 大黑人性xxxxbbbb| av在线资源中文字幕| 国产一区二区三免费视频| 久久免费看少妇高潮完整版| 操的小逼流水的文章| 91啪国自产中文字幕在线| 国产之丝袜脚在线一区二区三区 | 蝴蝶伊人久久中文娱乐网| 亚洲高清国产一区二区三区| 欧美激情精品在线观看| 日视频免费在线观看| 国产精彩对白一区二区三区| 最新黄色av网站在线观看| 曰本无码人妻丰满熟妇啪啪| 精品国产污污免费网站入口自| 亚洲熟妇久久无码精品| 绯色av蜜臀vs少妇| 成人色综合中文字幕| 成人24小时免费视频| 亚洲精品国品乱码久久久久| 中文字幕网站你懂的| 国产一区二区火爆视频| 免费十精品十国产网站| 亚洲欧美成人综合视频| 国产三级片久久久久久久| 免费黄页网站4188| 91精品国产麻豆国产| 人妻丝袜精品中文字幕| 日韩影片一区二区三区不卡免费| 亚洲熟女久久久36d| 男人操女人逼逼视频网站| 18禁美女羞羞免费网站| 最新91九色国产在线观看| av中文字幕在线观看第三页 | 老有所依在线观看完整版| 在线国产中文字幕视频| 天天干夜夜操啊啊啊| 五月婷婷在线观看视频免费| 日本一道二三区视频久久| 在线视频这里只有精品自拍| 青草亚洲视频在线观看| 国内精品在线播放第一页| 精品首页在线观看视频| 日韩国产乱码中文字幕| 93人妻人人揉人人澡人人| 精品一区二区亚洲欧美| 亚洲图库另类图片区| 欧美综合婷婷欧美综合| 国产视频网站一区二区三区| 五月婷婷在线观看视频免费| 999热精品视频在线| 在线新三级黄伊人网| 大陆胖女人与丈夫操b国语高清 | 色哟哟在线网站入口| 啪啪啪啪啪啪啪啪啪啪黄色| 亚洲天堂成人在线观看视频网站| 中文字幕欧美日韩射射一| 欧美日韩一区二区电影在线观看| 亚洲综合色在线免费观看| 国产97在线视频观看| 欧美一级色视频美日韩| 大香蕉伊人中文字幕| 亚洲综合一区成人在线| av网站色偷偷婷婷网男人的天堂| 一区二区三区综合视频| 熟女俱乐部一二三区| 青娱乐蜜桃臀av色| 女生被男生插的视频网站| 久久久久久99国产精品| 亚洲av男人的天堂你懂的| 欧美一级色视频美日韩| 亚洲欧美福利在线观看| 日本真人性生活视频免费看| 亚洲欧美激情中文字幕| 9l人妻人人爽人人爽| 国产黄色a级三级三级三级| 亚洲欧美激情国产综合久久久| 91久久人澡人人添人人爽乱| 传媒在线播放国产精品一区| 骚货自慰被发现爆操| 伊人成人在线综合网| 久久一区二区三区人妻欧美| 午夜福利资源综合激情午夜福利资| 亚洲欧美福利在线观看| 国产自拍黄片在线观看| 在线免费观看欧美小视频| 婷婷五月亚洲综合在线| 日韩黄色片在线观看网站| 欧美视频综合第一页| 久久久极品久久蜜桃| 天天干天天日天天干天天操| 日本女人一级免费片| 色97视频在线播放| 亚洲护士一区二区三区| 天天日夜夜干天天操| 日本最新一二三区不卡在线| 亚洲 自拍 色综合图| 男人天堂色男人av| 天天日天天操天天摸天天舔 | 天天日天天操天天摸天天舔 | 日韩成人综艺在线播放| 亚洲va国产va欧美va在线| 亚洲人成精品久久久久久久| 久久热这里这里只有精品| 被大鸡吧操的好舒服视频免费| 黄色录像鸡巴插进去| 日本五十路熟新垣里子| 久久亚洲天堂中文对白| 自拍 日韩 欧美激情| 欧美精品中文字幕久久二区| 端庄人妻堕落挣扎沉沦| 在线观看的黄色免费网站| 久久这里只有精品热视频| 国产视频网站一区二区三区| 精彩视频99免费在线| 蜜桃专区一区二区在线观看| 在线 中文字幕 一区| 天天日夜夜操天天摸| 日本阿v视频在线免费观看| 在线免费观看日本伦理| 在线亚洲天堂色播av电影| 国产久久久精品毛片| 少妇人妻久久久久视频黄片| 天天操天天干天天插| 人妻熟女在线一区二区| 青青草人人妻人人妻| 日本18禁久久久久久| 国产乱子伦精品视频潮优女| av天堂中文字幕最新| 神马午夜在线观看视频| 超碰在线中文字幕一区二区| 欧美中文字幕一区最新网址| 免费男阳茎伸入女阳道视频| 黑人巨大的吊bdsm| gav成人免费播放| 国产日本精品久久久久久久| 天天操天天干天天插| 最新91九色国产在线观看| 伊人网中文字幕在线视频| 亚洲天堂av最新网址| 欧美老妇精品另类不卡片| 国内精品在线播放第一页| 日本三极片中文字幕| 毛茸茸的大外阴中国视频| 国产精品国产精品一区二区| 久久麻豆亚洲精品av| 久久久久久久久久性潮| 欧美成人综合色在线噜噜| 99久久99久国产黄毛片| 久青青草视频手机在线免费观看 | 一区二区三区另类在线| 中文字幕第1页av一天堂网| 99av国产精品欲麻豆| 9久在线视频只有精品| av中文字幕福利网| 久久久久久久精品成人热| 密臀av一区在线观看| 亚洲欧美自拍另类图片| 亚洲 中文字幕在线 日韩| 精品亚洲在线免费观看| 一色桃子人妻一区二区三区| 啊啊啊想要被插进去视频| 国产chinesehd精品麻豆| 伊人综合免费在线视频| 中文字幕无码日韩专区免费| 久久精品国产999| 成人24小时免费视频| 中文字幕乱码人妻电影| 成人蜜桃美臀九一一区二区三区| 后入美女人妻高清在线| 好吊操视频这里只有精品| 鸡巴操逼一级黄色气| nagger可以指黑人吗| 亚洲综合一区成人在线| 大屁股肉感人妻中文字幕在线| 中文字幕日韩无敌亚洲精品| 国产精品成久久久久三级蜜臀av | 免费福利av在线一区二区三区| 欧美成人一二三在线网| yellow在线播放av啊啊啊| 插小穴高清无码中文字幕| 2022国产综合在线干| ka0ri在线视频| 51国产偷自视频在线播放| 视频在线免费观看你懂得| 直接能看的国产av| 亚洲日本一区二区久久久精品| 日本少妇人妻xxxxxhd| 色哟哟在线网站入口| 亚洲综合图片20p| 四川乱子伦视频国产vip| 久久久久久99国产精品| 免费看国产又粗又猛又爽又黄视频 | 成年人黄视频在线观看| www天堂在线久久| 亚洲国产美女一区二区三区软件| 亚洲一区制服丝袜美腿| 色伦色伦777国产精品| 日本美女成人在线视频| 97超碰国语国产97超碰| 亚洲欧美一卡二卡三卡| 日本av在线一区二区三区| 天天摸天天亲天天舔天天操天天爽| 免费人成黄页网站在线观看国产 | 在线制服丝袜中文字幕| 成人国产影院在线观看| 午夜精品一区二区三区福利视频| 欧美香蕉人妻精品一区二区| 精品国产污污免费网站入口自| 老司机福利精品免费视频一区二区| 特黄老太婆aa毛毛片| 91福利视频免费在线观看| 亚洲va天堂va国产va久| 80电影天堂网官网| 色哟哟国产精品入口| 色在线观看视频免费的| 青草久久视频在线观看| 日韩不卡中文在线视频网站| 高清成人av一区三区| 99国产精品窥熟女精品| 91国内精品久久久久精品一| 国产精品一区二区久久久av| 久草视频福利在线首页| 国产精品女邻居小骚货| 人人爱人人妻人人澡39| 亚洲av无硬久久精品蜜桃| 日本裸体熟妇区二区欧美| 热思思国产99re| 成人高潮aa毛片免费| 欧美精品黑人性xxxx| 黄页网视频在线免费观看| 天天想要天天操天天干| 色天天天天射天天舔| 天美传媒mv视频在线观看| 端庄人妻堕落挣扎沉沦| 黄色大片免费观看网站| 美女张开两腿让男人桶av| 亚洲1区2区3区精华液| 亚洲伊人久久精品影院一美女洗澡| 国产一区二区三免费视频| 福利视频广场一区二区| 19一区二区三区在线播放| 91香蕉成人app下载| 国内自拍第一页在线观看| 一区二区三区美女毛片| 啊啊好大好爽啊啊操我啊啊视频 | 国产超码片内射在线| 天天操天天干天天日狠狠插| 亚洲va国产va欧美精品88| 欧美老鸡巴日小嫩逼| 亚洲在线一区二区欧美| 亚洲变态另类色图天堂网| 亚洲天堂第一页中文字幕| 午夜青青草原网在线观看| 免费看国产又粗又猛又爽又黄视频| 任我爽精品视频在线播放| 午夜激情久久不卡一区二区| 97国产福利小视频合集| 亚洲卡1卡2卡三卡四老狼| av天堂中文字幕最新| 亚洲国产成人av在线一区| 亚洲熟妇x久久av久久| 精品一区二区三区三区88| 欧美一级色视频美日韩| 亚洲精品一线二线在线观看| 男人操女人的逼免费视频| 欧美黄色录像免费看的| 国产一区二区火爆视频 | 亚洲一级 片内射视正片| 国产超码片内射在线| 粉嫩欧美美人妻小视频| 亚洲免费国产在线日韩| 福利视频网久久91| 欧美性感尤物人妻在线免费看| 扒开腿挺进肉嫩小18禁视频| 啊用力插好舒服视频| 99精品国自产在线人| 在线观看免费视频网| 日本男女操逼视频免费看| 精品91自产拍在线观看一区| 1769国产精品视频免费观看| 2021年国产精品自拍| 日噜噜噜夜夜噜噜噜天天噜噜噜| gay gay男男瑟瑟在线网站| 欧美综合婷婷欧美综合| 久久精品国产亚洲精品166m| 日韩精品中文字幕在线| 国产 在线 免费 精品| av在线免费观看亚洲天堂| 人妻爱爱 中文字幕| 又粗又硬又猛又爽又黄的| 成人免费公开视频无毒| 久久精品国产999| 黄色成年网站午夜在线观看| 亚洲最大黄 嗯色 操 啊| 日韩成人免费电影二区| 午夜免费体验区在线观看| 天堂av在线官网中文| 国产精品精品精品999| 在线观看视频一区麻豆| 天天通天天透天天插| 人妻久久久精品69系列| 一区二区视频视频视频| 国产va在线观看精品| 亚洲1卡2卡三卡4卡在线观看| wwwxxx一级黄色片| 国产精品日韩欧美一区二区| 中文人妻AV久久人妻水| 在线观看av2025| 日韩中文字幕福利av| 欧美熟妇一区二区三区仙踪林| 亚洲美女自偷自拍11页| okirakuhuhu在线观看| 亚洲欧美一卡二卡三卡| 日韩伦理短片在线观看| 日本脱亚入欧是指什么| 天天干天天啪天天舔| 国产福利小视频免费观看| 91九色porny蝌蚪国产成人| 久久久91蜜桃精品ad| 中文字幕在线永久免费播放| 亚洲欧美清纯唯美另类| 亚洲国产精品黑丝美女| 欧美日本aⅴ免费视频| 国产综合精品久久久久蜜臀| 成人午夜电影在线观看 久久| 精品一线二线三线日本| 日韩熟女系列一区二区三区| 亚洲av午夜免费观看| 国产乱子伦精品视频潮优女| 欧美天堂av无线av欧美| 精品国产在线手机在线| 久久尻中国美女视频| 青青青青爽手机在线| 97青青青手机在线视频| 操人妻嗷嗷叫视频一区二区| 最新激情中文字幕视频| 91‖亚洲‖国产熟女| 天天日天天添天天爽| 麻豆性色视频在线观看| 91麻豆精品传媒国产黄色片| 婷婷久久久久深爱网| 欧美精品一二三视频| 99久久超碰人妻国产| 沙月文乃人妻侵犯中文字幕在线| 欧美在线一二三视频| 韩国爱爱视频中文字幕| 免费看高清av的网站| 免费成人av中文字幕| 久久久人妻一区二区| 欧美香蕉人妻精品一区二区| 亚洲综合一区二区精品久久| 超碰公开大香蕉97| 亚洲 中文 自拍 另类 欧美| 丝袜长腿第一页在线| 天天色天天爱天天爽| 成人精品在线观看视频| 91试看福利一分钟| 欧美少妇性一区二区三区| 亚洲欧美色一区二区| 黄色录像鸡巴插进去| 在线观看国产免费麻豆| 都市激情校园春色狠狠| 亚洲国产香蕉视频在线播放| xxx日本hd高清| 自拍偷拍亚洲另类色图| 中文乱理伦片在线观看| 国产大鸡巴大鸡巴操小骚逼小骚逼| 国产精品免费不卡av| 人妻丝袜精品中文字幕| asmr福利视频在线观看| av手机在线观播放网站| 最后99天全集在线观看| 成年人该看的视频黄免费| 免费福利av在线一区二区三区| 99热久久极品热亚洲| 精品久久婷婷免费视频| 啪啪啪啪啪啪啪啪av| 婷婷综合亚洲爱久久| 亚洲精品亚洲人成在线导航| 久久久超爽一二三av| asmr福利视频在线观看| 欧美亚洲中文字幕一区二区三区| 国产性生活中老年人视频网站| 成人福利视频免费在线| 久久久久久九九99精品| 激情五月婷婷免费视频| 国产精品一区二区三区蜜臀av| 亚洲午夜高清在线观看| 婷婷六月天中文字幕| 91色网站免费在线观看| 99国产精品窥熟女精品| 日韩精品一区二区三区在线播放| 天堂av中文在线最新版| 色在线观看视频免费的| 92福利视频午夜1000看| 久久精品美女免费视频| 国产精品三级三级三级| 人妻少妇亚洲一区二区| 在线国产日韩欧美视频| 国产老熟女伦老熟妇ⅹ| 亚洲综合另类精品小说| 一二三中文乱码亚洲乱码one| yy96视频在线观看| 2025年人妻中文字幕乱码在线| 香蕉av影视在线观看| 沙月文乃人妻侵犯中文字幕在线| 涩爱综合久久五月蜜臀| 亚洲另类综合一区小说| 国产精品免费不卡av| 丝袜美腿欧美另类 中文字幕| 一区二区三区久久中文字幕| 直接能看的国产av| 视频久久久久久久人妻| 熟女人妻三十路四十路人妻斩| 亚洲午夜高清在线观看| 男人天堂av天天操| 成人18禁网站在线播放| 人妻熟女在线一区二区| 国产精品人妻一区二区三区网站| 精品成人午夜免费看| 九九热99视频在线观看97| 啪啪啪18禁一区二区三区| 99re久久这里都是精品视频| 精品欧美一区二区vr在线观看| 亚国产成人精品久久久| brazzers欧熟精品系列| 免费在线观看污污视频网站| av大全在线播放免费| 人人人妻人人澡人人| 岛国黄色大片在线观看| 亚洲av无码成人精品区辽| 不卡精品视频在线观看| 日本黄在免费看视频| 加勒比视频在线免费观看| 99国内精品永久免费视频| 天天色天天操天天透| 欧美黑人性暴力猛交喷水| 日韩加勒比东京热二区| 成年美女黄网站18禁久久| 天天操天天污天天射| 色花堂在线av中文字幕九九| 日韩欧美国产精品91| 91九色porny蝌蚪国产成人| 黄色大片男人操女人逼| 中文人妻AV久久人妻水| 色97视频在线播放| 一区二区三区精品日本| 国产美女午夜福利久久| 日韩美女精品视频在线观看网站| 东京干手机福利视频| 成熟熟女国产精品一区| 亚洲成人熟妇一区二区三区| 福利片区一区二体验区| 夜色福利视频在线观看| 亚洲欧美国产麻豆综合| 日韩欧美一级黄片亚洲| av久久精品北条麻妃av观看| 亚洲成人精品女人久久久| 国产欧美精品一区二区高清| 在线观看免费av网址大全| 在线国产精品一区二区三区| 久精品人妻一区二区三区 | 国产视频一区二区午夜| 色婷婷精品大在线观看| 狠狠的往里顶撞h百合| 97成人免费在线观看网站| 亚洲成人国产综合一区| 国产老熟女伦老熟妇ⅹ| 亚洲天堂第一页中文字幕| 久久美欧人妻少妇一区二区三区| 沙月文乃人妻侵犯中文字幕在线| 一区二区三区四区视频在线播放| 午夜在线精品偷拍一区二| 大屁股肉感人妻中文字幕在线| 欧美专区第八页一区在线播放 | 鸡巴操逼一级黄色气| 边摸边做超爽毛片18禁色戒 | 国产a级毛久久久久精品| 丰满少妇翘臀后进式| 可以免费看的www视频你懂的| 高潮视频在线快速观看国家快速| 午夜精品一区二区三区更新| 同居了嫂子在线播高清中文| 天堂中文字幕翔田av| 亚洲一区二区三区五区| 热思思国产99re| 精品国产在线手机在线| 91极品大一女神正在播放| 91天堂天天日天天操| 国产一级麻豆精品免费| 亚洲蜜臀av一区二区三区九色| 任你操任你干精品在线视频| 不卡精品视频在线观看| 国产又大又黄免费观看| 91啪国自产中文字幕在线| 国产精品午夜国产小视频| 一区二区三区久久中文字幕| 偷拍自拍亚洲美腿丝袜| 天天干天天日天天谢综合156| 欧美日韩v中文在线| 欧美精品亚洲精品日韩在线| 99热色原网这里只有精品| 最新91九色国产在线观看| 99热色原网这里只有精品| 做爰视频毛片下载蜜桃视频1| 偷青青国产精品青青在线观看| av天堂加勒比在线| 国产精品手机在线看片| 青青青青在线视频免费观看| 天天操天天爽天天干| 97精品成人一区二区三区| 亚洲 色图 偷拍 欧美| 福利午夜视频在线观看| caoporm超碰国产| 亚洲午夜精品小视频| 亚洲另类伦春色综合小| 日韩亚国产欧美三级涩爱| 国产91久久精品一区二区字幕| 五月天中文字幕内射| 天干天天天色天天日天天射| 999热精品视频在线| 日本a级视频老女人| 亚洲精品一线二线在线观看| 精品人妻每日一部精品| 性感美女福利视频网站| 免费黄高清无码国产| 黑人巨大的吊bdsm| 中文字幕一区二 区二三区四区| 夏目彩春在线中文字幕| 91桃色成人网络在线观看| 亚洲视频在线视频看视频在线| 国产精品3p和黑人大战| 91国内精品久久久久精品一| 超鹏97历史在线观看| av乱码一区二区三区| 欧美偷拍亚洲一区二区| 日韩写真福利视频在线观看| 国产亚州色婷婷久久99精品| 播放日本一区二区三区电影 | 91成人精品亚洲国产| jiuse91九色视频| 亚洲在线观看中文字幕av| 制丝袜业一区二区三区| av乱码一区二区三区| 日本人妻精品久久久久久| 日韩美在线观看视频黄| 亚洲午夜电影之麻豆| 欧美一区二区三区久久久aaa| 国产普通话插插视频| 国产女人被做到高潮免费视频| 成人H精品动漫在线无码播放| 性感美女诱惑福利视频| 女人精品内射国产99| 好了av中文字幕在线| 97小视频人妻一区二区| 久久久久久9999久久久久| 午夜精品九一唐人麻豆嫩草成人| 日本男女操逼视频免费看| 成年人免费看在线视频| 国产精品探花熟女在线观看| AV无码一区二区三区不卡| 欧美乱妇无乱码一区二区| 久久这里只有精彩视频免费| 天天做天天干天天舔| 色天天天天射天天舔| 日韩av大胆在线观看| 天天干天天插天天谢| 亚洲av可乐操首页| 精品国产成人亚洲午夜| 欧美亚洲国产成人免费在线| 男人操女人的逼免费视频| 精品一区二区三四区| 人妻3p真实偷拍一二区| 1000部国产精品成人观看视频| 亚洲欧美一区二区三区爱爱动图| 快插进小逼里大鸡吧视频| 午夜美女少妇福利视频| 日韩在线中文字幕色| 亚洲av日韩精品久久久| 桃色视频在线观看一区二区| 欧美精品黑人性xxxx| 任你操任你干精品在线视频| 偷拍自拍国产在线视频| 超碰公开大香蕉97| 日韩成人免费电影二区| 一区二区免费高清黄色视频| 男大肉棒猛烈插女免费视频| 天天操天天射天天操天天天| 人妻少妇中文有码精品| 久久久久久97三级| 99热这里只有精品中文| 含骚鸡巴玩逼逼视频| 老鸭窝日韩精品视频观看| 一区二区免费高清黄色视频| 啪啪啪18禁一区二区三区| 国产美女一区在线观看| 国产一线二线三线的区别在哪| 亚洲Av无码国产综合色区| 国产污污污污网站在线| 欧美专区第八页一区在线播放| 中文字幕人妻三级在线观看| 香港一级特黄大片在线播放| 超级福利视频在线观看| 国产熟妇一区二区三区av| 日韩三级电影华丽的外出| 亚洲av极品精品在线观看| 99视频精品全部15| av日韩在线免费播放| 久久久精品999精品日本| 狠狠躁夜夜躁人人爽天天久天啪| 女蜜桃臀紧身瑜伽裤| 成人国产影院在线观看| 日本三极片中文字幕| 亚洲2021av天堂| 超碰在线中文字幕一区二区| 懂色av蜜桃a v| 超碰97人人澡人人| 18禁污污污app下载| 大香蕉玖玖一区2区| 国产精品sm调教视频| 国产三级影院在线观看| 欧美精品亚洲精品日韩在线| 不卡一区一区三区在线| 国产实拍勾搭女技师av在线| a v欧美一区=区三区| 天天摸天天亲天天舔天天操天天爽| 亚洲精品亚洲人成在线导航| 五月激情婷婷久久综合网| 日本少妇精品免费视频| 亚洲熟女久久久36d| 超碰97人人做人人爱| 91传媒一区二区三区| 91在线免费观看成人| 香港一级特黄大片在线播放| 五十路熟女av天堂| 亚洲伊人色一综合网| 日韩一个色综合导航| 黄色视频成年人免费观看| 最新国产精品拍在线观看| 欧美精品久久久久久影院| 亚洲国产40页第21页| 亚洲av成人网在线观看| 亚洲欧美福利在线观看| 93人妻人人揉人人澡人人| 亚洲日本一区二区久久久精品| 久久艹在线观看视频| 精品黑人巨大在线一区| 5528327男人天堂| 毛茸茸的大外阴中国视频| 人妻少妇精品久久久久久 | 亚洲精品午夜久久久久| 日本阿v视频在线免费观看| 国产av福利网址大全| 农村胖女人操逼视频| 国产在线自在拍91国语自产精品| 亚洲日本一区二区久久久精品| 天天日天天爽天天爽| 免费av岛国天堂网站| 日视频免费在线观看| 老司机福利精品免费视频一区二区 | 精彩视频99免费在线| 97人人模人人爽人人喊| 中文字幕av男人天堂| 91片黄在线观看喷潮| 亚洲熟女久久久36d| 亚洲乱码中文字幕在线| 99国内小视频在现欢看| 亚洲老熟妇日本老妇| 国产精品探花熟女在线观看| 日韩在线视频观看有码在线| 亚洲av琪琪男人的天堂| 日韩精品二区一区久久| 欧美日本在线视频一区| 91精品高清一区二区三区| av中文在线天堂精品| 亚洲综合色在线免费观看| 爱有来生高清在线中文字幕| 人妻在线精品录音叫床| 免费成人va在线观看| 国产熟妇一区二区三区av| 伊人综合免费在线视频| 天天插天天色天天日| 欧亚日韩一区二区三区观看视频| 国产精品三级三级三级| 中出中文字幕在线观看 | 肏插流水妹子在线乐播下载| 日韩a级黄色小视频| 亚洲av日韩av第一区二区三区| sejizz在线视频| 中文字幕在线欧美精品| 精品一区二区亚洲欧美| 日韩精品激情在线观看| 只有精品亚洲视频在线观看| 亚洲午夜在线视频福利| 2021最新热播中文字幕| 精品成人午夜免费看| 伊人成人综合开心网| 国产美女午夜福利久久| 自拍偷拍亚洲欧美在线视频| 一区二区三区麻豆福利视频| 中文字幕最新久久久| 日本少妇人妻xxxxx18| asmr福利视频在线观看| 青青青激情在线观看视频| 91福利视频免费在线观看| 大鸡巴后入爆操大屁股美女| 2021天天色天天干| 欧美爆乳肉感大码在线观看| 啪啪啪18禁一区二区三区| 国产黑丝高跟鞋视频在线播放| 亚洲1区2区3区精华液| 插小穴高清无码中文字幕| 亚洲图片欧美校园春色| 亚洲一区二区三区精品乱码| 国产精品视频资源在线播放| 人妻少妇精品久久久久久| 国产精品视频一区在线播放| 亚洲va天堂va国产va久| 国产麻豆91在线视频| 久久久极品久久蜜桃| 最新中文字幕乱码在线| 18禁网站一区二区三区四区| 最近中文字幕国产在线| 中文字幕在线观看极品视频| 18禁美女羞羞免费网站| 国产日本精品久久久久久久| 天天摸天天亲天天舔天天操天天爽| 精品高跟鞋丝袜一区二区| 精品91自产拍在线观看一区| 日韩一个色综合导航| 日本脱亚入欧是指什么| 性感美女诱惑福利视频| 1000部国产精品成人观看视频| 中国老熟女偷拍第一页| 国产品国产三级国产普通话三级| jiuse91九色视频| 又大又湿又爽又紧A视频| 成年人午夜黄片视频资源| yy6080国产在线视频| 午夜激情久久不卡一区二区 | 新婚人妻聚会被中出| 91久久人澡人人添人人爽乱| 成人性爱在线看四区| 久久精品久久精品亚洲人| 中文字母永久播放1区2区3区| 免费手机黄页网址大全| 亚洲欧美福利在线观看| 亚洲日本一区二区三区| 熟女人妻在线观看视频| 18禁免费av网站| 2019av在线视频| 天美传媒mv视频在线观看| 成熟丰满熟妇高潮xx×xx | 亚洲欧美激情国产综合久久久| 久久这里只有精彩视频免费| 亚洲欧洲一区二区在线观看| 亚洲另类在线免费观看| 亚洲精品欧美日韩在线播放| 黑人大几巴狂插日本少妇| 欧美aa一级一区三区四区| 欧美精品亚洲精品日韩在线| 91免费观看在线网站| 欧美日本国产自视大全| 在线观看视频污一区| 成年人黄视频在线观看| 11久久久久久久久久久| 中字幕人妻熟女人妻a62v网| 在线网站你懂得老司机| 亚洲精品成人网久久久久久小说| av中文在线天堂精品| 国产成人精品av网站| 亚洲国产在线精品国偷产拍 | 国产a级毛久久久久精品| 欧美一级色视频美日韩| 免费黄色成人午夜在线网站| av日韩在线免费播放| 99国内小视频在现欢看| 免费黄页网站4188| 香蕉av影视在线观看| 亚洲成人免费看电影| 少妇露脸深喉口爆吞精| 中文字幕 亚洲av| 欧美亚洲牲夜夜综合久久| 日韩av熟妇在线观看| 亚洲图片欧美校园春色| 无套猛戳丰满少妇人妻| 天码人妻一区二区三区在线看 | 国产视频在线视频播放| 在线免费观看av日韩| 蜜桃色婷婷久久久福利在线| 亚洲午夜精品小视频| 亚洲专区激情在线观看视频| 欧美va不卡视频在线观看| AV无码一区二区三区不卡| 欧美激情电影免费在线| 久久久久久久亚洲午夜综合福利| 少妇ww搡性bbb91| 丝袜长腿第一页在线| 人妻少妇av在线观看| 视频二区在线视频观看| gav成人免费播放| 蝴蝶伊人久久中文娱乐网| 80电影天堂网官网| 久久免看30视频口爆视频| 人人妻人人爽人人添夜| 亚洲欧美一卡二卡三卡| 青娱乐蜜桃臀av色| 中文字幕一区二区三区蜜月| 偷拍自拍亚洲视频在线观看| 天堂av在线最新版在线| 日本性感美女视频网站| 九一传媒制片厂视频在线免费观看 | 日韩美在线观看视频黄| 国产美女午夜福利久久| 91久久综合男人天堂| sspd152中文字幕在线| sw137 中文字幕 在线| 欲满人妻中文字幕在线| 亚洲青青操骚货在线视频| 天天做天天干天天舔| 欧美第一页在线免费观看视频| 国产欧美精品一区二区高清 | 日本女人一级免费片| 国产亚洲视频在线观看| 老司机免费视频网站在线看| 91p0rny九色露脸熟女| 色爱av一区二区三区| 美味人妻2在线播放| 国产免费av一区二区凹凸四季| 亚洲变态另类色图天堂网| 99的爱精品免费视频| 在线不卡成人黄色精品| 久久久久久久久久久久久97| 高潮喷水在线视频观看| 性感美女高潮视频久久久| 在线视频这里只有精品自拍| 亚洲国产精品美女在线观看| 18禁美女黄网站色大片下载| 性生活第二下硬不起来| 久久精品36亚洲精品束缚| 不卡日韩av在线观看| 天天色天天舔天天射天天爽| 大学生A级毛片免费视频| 久精品人妻一区二区三区| 韩国女主播精品视频网站| 成年人免费看在线视频| 男人的天堂一区二区在线观看| 欧美 亚洲 另类综合| 热久久只有这里有精品| 2017亚洲男人天堂| 日韩黄色片在线观看网站| 在线免费观看欧美小视频| 蜜臀av久久久久久久| 在线免费观看视频一二区| 岛国青草视频在线观看| 日本脱亚入欧是指什么| 中文字幕—97超碰网| 99久久99久国产黄毛片| 欧美日韩在线精品一区二区三| 日本av高清免费网站| 首之国产AV医生和护士小芳| 黑人解禁人妻叶爱071| 欧美特色aaa大片| 中文字幕最新久久久| 日本少妇人妻xxxxx18| 国产亚洲精品视频合集| 欧美伊人久久大香线蕉综合| 91国产资源在线视频| 99国内精品永久免费视频| 18禁美女黄网站色大片下载| 最新日韩av传媒在线| 日韩三级黄色片网站| 天天日天天干天天搡| 少妇系列一区二区三区视频| 97香蕉碰碰人妻国产樱花| 天天日天天干天天爱| 久久精品美女免费视频| 初美沙希中文字幕在线| gav成人免费播放| 亚洲av午夜免费观看| 人人妻人人澡人人爽人人dvl| 日韩av中文在线免费观看| 加勒比视频在线免费观看| 99久久99久国产黄毛片| 快插进小逼里大鸡吧视频| 久久香蕉国产免费天天| 亚洲特黄aaaa片| 美女大bxxxx内射| 天天草天天色天天干| 欧美日韩熟女一区二区三区| 日视频免费在线观看| 欧美一区二区三区激情啪啪啪| 中文字幕一区二区三区人妻大片| 在线观看视频 你懂的| 97国产福利小视频合集| 亚洲精品无码久久久久不卡| 亚洲天堂第一页中文字幕| 亚洲av午夜免费观看| 无码精品一区二区三区人| 亚洲一区二区三区精品乱码| 亚洲天堂成人在线观看视频网站| 日韩中文字幕精品淫| 亚洲免费福利一区二区三区| 和邻居少妇愉情中文字幕| 国产熟妇一区二区三区av | 最新国产精品网址在线观看| 视频一区二区三区高清在线| 一区二区三区国产精选在线播放| 国产+亚洲+欧美+另类| 精品老妇女久久9g国产| 亚洲精品国产综合久久久久久久久 | 视频一区二区三区高清在线| 成年人啪啪视频在线观看| 偷拍自拍国产在线视频| 黄工厂精品视频在线观看| 黄页网视频在线免费观看| 亚洲精品中文字幕下载| 操日韩美女视频在线免费看| 蜜桃臀av蜜桃臀av| 国产精品熟女久久久久浪潮| av天堂资源最新版在线看| 色综合久久无码中文字幕波多| 国产成人精品一区在线观看| 国产又色又刺激在线视频| 国产日韩av一区二区在线| 日本韩国免费福利精品| 国产乱子伦精品视频潮优女| 国产精品久久久久国产三级试频 | 成人国产激情自拍三区| 91精品综合久久久久3d动漫| 99re久久这里都是精品视频| 青青草国内在线视频精选| 精品一区二区三区在线观看| 国产一区二区火爆视频| 香港一级特黄大片在线播放 | 天天操天天干天天艹| 天天摸天天干天天操科普| 男人的天堂一区二区在线观看| 中文字幕欧美日韩射射一| jiujiure精品视频在线| 日日爽天天干夜夜操| 制丝袜业一区二区三区| 国产品国产三级国产普通话三级| 色噜噜噜噜18禁止观看| 亚洲国产中文字幕啊啊啊不行了| 亚洲人妻30pwc| 国产片免费观看在线观看| 成人午夜电影在线观看 久久| 国产真实乱子伦a视频| 57pao国产一区二区| av乱码一区二区三区| 大陆胖女人与丈夫操b国语高清| av亚洲中文天堂字幕网| 国产高清精品一区二区三区| 天天日天天鲁天天操| 91快播视频在线观看| 欧美一区二区中文字幕电影| 一区二区三区四区视频在线播放| 一区二区三区四区中文| 精品美女福利在线观看| 天天躁日日躁狠狠躁av麻豆| 又色又爽又黄又刺激av网站| 91九色porny国产在线| 天天操天天干天天日狠狠插| 中文字幕av一区在线观看| 中文字幕在线一区精品| 国产精品人妻熟女毛片av久| 岳太深了紧紧的中文字幕| 亚洲综合一区成人在线| 欧美在线偷拍视频免费看| 亚洲av无乱一区二区三区性色 | 91自产国产精品视频| 性色av一区二区三区久久久| 国产精品成人xxxx| 3D动漫精品啪啪一区二区下载| 亚洲专区激情在线观看视频| 青青在线视频性感少妇和隔壁黑丝| 日韩成人性色生活片| 老司机99精品视频在线观看| 日日操综合成人av| 91亚洲精品干熟女蜜桃频道| 亚洲欧美精品综合图片小说| 91av中文视频在线| 午夜在线观看一区视频| 亚洲一区二区三区五区| 精品成人啪啪18免费蜜臀| 亚洲人妻av毛片在线| 日本免费一级黄色录像| 亚洲在线免费h观看网站| 免费一级黄色av网站| 日本韩国亚洲综合日韩欧美国产| 成人色综合中文字幕| 绝色少妇高潮3在线观看| 91九色porny国产在线| 在线观看av2025| 精品视频中文字幕在线播放| 一区二区三区综合视频| 欧美一级色视频美日韩| av天堂中文字幕最新| 亚洲av一妻不如妾| www久久久久久久久久久| 男人操女人的逼免费视频| 视频在线亚洲一区二区| 亚洲av可乐操首页| 欧美一区二区三区四区性视频| 2020久久躁狠狠躁夜夜躁| 高潮喷水在线视频观看| 三上悠亚和黑人665番号| 丰满的子国产在线观看| 99久久超碰人妻国产| 国产黄色片蝌蚪九色91| 好男人视频在线免费观看网站| 日美女屁股黄邑视频| 国产性感美女福利视频| caoporm超碰国产| 久久99久久99精品影院| 在线免费观看日本伦理| 大香蕉玖玖一区2区| 被大鸡吧操的好舒服视频免费| 日本后入视频在线观看| 久久这里只有精品热视频| 一二三区在线观看视频| av中文字幕在线导航| aaa久久久久久久久| 亚洲精品中文字幕下载| 一区二区麻豆传媒黄片| 久久农村老妇乱69系列| 岛国一区二区三区视频在线| 午夜激情精品福利视频| 天天日天天天天天天天天天天| 亚洲1069综合男同| 国产chinesehd精品麻豆| 99热这里只有精品中文| 偷拍美女一区二区三区| 美女日逼视频免费观看| 亚洲国产成人无码麻豆艾秋| 亚洲国产精品免费在线观看| 久久这里有免费精品| 日噜噜噜夜夜噜噜噜天天噜噜噜| 岛国av高清在线成人在线| av大全在线播放免费| 成年人的在线免费视频| 人妻丝袜榨强中文字幕| 高清成人av一区三区| 男女啪啪视频免费在线观看| 成人福利视频免费在线| 黄色黄色黄片78在线| 人妻激情图片视频小说| 99热这里只有国产精品6| 亚洲高清一区二区三区视频在线| 日韩三级电影华丽的外出| 亚洲免费在线视频网站| 热久久只有这里有精品| av手机在线免费观看日韩av| 天天操天天爽天天干| 日日夜夜大香蕉伊人| 免费看高清av的网站| 激情人妻校园春色亚洲欧美 | 大白屁股精品视频国产| 天天日天天干天天要| 国产精品福利小视频a| 国产精品一二三不卡带免费视频| 午夜成午夜成年片在线观看| 日噜噜噜夜夜噜噜噜天天噜噜噜| 中文字幕在线乱码一区二区| 欧美80老妇人性视频| 亚洲国产最大av综合| 中文字幕+中文字幕| 亚洲午夜电影之麻豆| 久草免费人妻视频在线| 国产黑丝高跟鞋视频在线播放| 51国产成人精品视频| 久青青草视频手机在线免费观看| 亚洲狠狠婷婷综合久久app| 99热久久这里只有精品| 亚洲av日韩精品久久久久久hd| 亚洲午夜电影在线观看| 免费大片在线观看视频网站| 沈阳熟妇28厘米大战黑人| 欧美亚洲免费视频观看| 亚洲 欧美 精品 激情 偷拍 | 绝顶痉挛大潮喷高潮无码 | 欧美3p在线观看一区二区三区| 日本欧美视频在线观看三区| 国产中文字幕四区在线观看| 天天综合天天综合天天网| 亚洲高清视频在线不卡| 欧美第一页在线免费观看视频 | 国产伦精品一区二区三区竹菊| 99精品国产自在现线观看| 国产一区av澳门在线观看| 特大黑人巨大xxxx| 日噜噜噜夜夜噜噜噜天天噜噜噜| 888欧美视频在线| 亚洲熟女久久久36d| 一区二区三区激情在线| 免费在线播放a级片| 亚洲高清自偷揄拍自拍| 一区二区熟女人妻视频| 在线制服丝袜中文字幕| 国产综合高清在线观看| 91久久精品色伊人6882| 亚洲图片偷拍自拍区| 日韩无码国产精品强奸乱伦| 3344免费偷拍视频| 天天躁日日躁狠狠躁av麻豆| 40道精品招牌菜特色| 亚洲中文字幕国产日韩| 99精品国产免费久久| 亚洲成人激情av在线| 亚洲成高清a人片在线观看| 日本18禁久久久久久| 亚洲精品亚洲人成在线导航| 天天干夜夜操啊啊啊| 亚洲另类综合一区小说| 大陆胖女人与丈夫操b国语高清| 动色av一区二区三区| 亚欧在线视频你懂的| 男生舔女生逼逼的视频| www日韩毛片av| 福利午夜视频在线合集| av在线观看网址av| 国产成人一区二区三区电影网站 | 成人在线欧美日韩国产| 国产精品久久综合久久| 人妻素人精油按摩中出| 国产精品国产三级国产午| 日本高清撒尿pissing| 午夜久久久久久久精品熟女| 国际av大片在线免费观看| 亚洲欧美色一区二区| 亚洲综合色在线免费观看| 极品丝袜一区二区三区| 亚洲视频在线视频看视频在线| 传媒在线播放国产精品一区| 最新激情中文字幕视频| 亚洲欧美清纯唯美另类| 福利一二三在线视频观看| 又色又爽又黄的美女裸体| 人妻最新视频在线免费观看| 国产高清精品极品美女| 操人妻嗷嗷叫视频一区二区| 青青青aaaa免费| av在线观看网址av| av中文字幕在线观看第三页| 97精品成人一区二区三区| 日韩美女福利视频网| 亚洲精品麻豆免费在线观看 | 国产欧美精品一区二区高清| 亚洲免费av在线视频| 午夜精彩视频免费一区| 亚洲福利精品视频在线免费观看| 91亚洲手机在线视频播放| 一级a看免费观看网站| 天天干天天爱天天色| 亚洲综合一区二区精品久久| 国产一区av澳门在线观看| 精品亚洲在线免费观看| 激情五月婷婷免费视频| 久久久久久国产精品| 99久久超碰人妻国产| 黑人变态深video特大巨大| 国产伊人免费在线播放| 久久这里只有精品热视频| 97欧洲一区二区精品免费| 在线观看视频 你懂的| 视频啪啪啪免费观看| 精品黑人一区二区三区久久国产| 婷婷久久久久深爱网| 日韩成人综艺在线播放| 色综合色综合色综合色| 老师让我插进去69AV| 天天日夜夜干天天操| 激情五月婷婷综合色啪| 在线亚洲天堂色播av电影| 中文字幕一区二区亚洲一区| 91色网站免费在线观看| 亚洲另类综合一区小说| 国产揄拍高清国内精品对白| 姐姐的朋友2在线观看中文字幕| 黄色成人在线中文字幕| 欧美一区二区三区乱码在线播放 | 国产变态另类在线观看| 成人综合亚洲欧美一区| 亚洲中文字幕国产日韩| 青青草原色片网站在线观看| 日本精品视频不卡一二三| 久久尻中国美女视频| 国产a级毛久久久久精品| 亚洲欧洲一区二区在线观看| 久久热久久视频在线观看| 免费一级特黄特色大片在线观看 | 久草福利电影在线观看| 人人超碰国字幕观看97| 男人的天堂av日韩亚洲| 99国产精品窥熟女精品| 亚洲午夜精品小视频| 日日日日日日日日夜夜夜夜夜夜| 国产超码片内射在线| 最新日韩av传媒在线| 亚洲国产欧美国产综合在线| 免费在线播放a级片| 真实国产乱子伦一区二区| 国产在线观看黄色视频| 欧美成人黄片一区二区三区 | 国产美女精品福利在线| 99亚洲美女一区二区三区| 一区二区三区在线视频福利| 啪啪啪啪啪啪啪啪啪啪黄色| 男人天堂最新地址av| 免费成人av中文字幕| 特大黑人巨大xxxx| 97人妻夜夜爽二区欧美极品| 成人乱码一区二区三区av| 亚洲特黄aaaa片| 精品一区二区三区在线观看| 一区二区在线视频中文字幕| 日韩av免费观看一区| 搡老熟女一区二区在线观看| 亚洲一区二区三区uij| 国产在线免费观看成人| 国产伦精品一区二区三区竹菊| 精品av国产一区二区三区四区| 亚洲变态另类色图天堂网| 18禁美女黄网站色大片下载| 亚洲成人免费看电影| 亚洲国产中文字幕啊啊啊不行了| 国产亚洲精品欧洲在线观看| 国产欧美日韩第三页| aiss午夜免费视频| 精品一区二区三区三区色爱| 综合精品久久久久97| 日本少妇高清视频xxxxx| 涩爱综合久久五月蜜臀| 亚洲国产精品免费在线观看| 888欧美视频在线| 亚洲一区二区三区精品乱码| 欧美日韩国产一区二区三区三州 | 在线不卡成人黄色精品| 色偷偷伊人大杳蕉综合网| 亚洲精品av在线观看| 免费成人va在线观看| 中文字幕一区的人妻欧美日韩| 人妻久久无码中文成人| 欧美黑人性猛交xxxxⅹooo| 蜜臀av久久久久蜜臀av麻豆| 欧美精品国产综合久久| 在线观看av2025| 欧美日本在线视频一区| 在线免费91激情四射| 啊啊啊想要被插进去视频| 成年午夜影片国产片| 激情色图一区二区三区| 五色婷婷综合狠狠爱| 适合午夜一个人看的视频| 鸡巴操逼一级黄色气| 亚洲男人的天堂a在线| 亚洲欧美清纯唯美另类| 亚洲天堂av最新网址| av在线shipin| 久久久久久性虐视频| 中文字幕人妻三级在线观看| 国产卡一卡二卡三乱码手机| 婷婷六月天中文字幕| 国产麻豆剧果冻传媒app| 男人天堂最新地址av| 在线观看免费岛国av| 91人妻精品一区二区在线看| www日韩a级s片av| 欧美日韩情色在线观看| 中文字幕人妻熟女在线电影| 国产精品国色综合久久| 一区二区三区 自拍偷拍| 亚洲女人的天堂av| av在线免费观看亚洲天堂| 国产黄色大片在线免费播放| 一级黄色片夫妻性生活| 亚洲日产av一区二区在线| 久草视频在线一区二区三区资源站 | 爱爱免费在线观看视频| 香蕉aⅴ一区二区三区| 亚洲人成精品久久久久久久| 青青尤物在线观看视频网站| 色在线观看视频免费的| 欧美3p在线观看一区二区三区| 特级欧美插插插插插bbbbb| 日曰摸日日碰夜夜爽歪歪| 69精品视频一区二区在线观看| 成人av在线资源网站| 免费大片在线观看视频网站| 在线观看亚洲人成免费网址| 爱爱免费在线观看视频| 国产大鸡巴大鸡巴操小骚逼小骚逼| 国产麻豆91在线视频| 午夜成午夜成年片在线观看| 亚洲中文精品字幕在线观看| 换爱交换乱高清大片| 大香蕉福利在线观看| 大鸡巴插入美女黑黑的阴毛| 亚洲第一伊人天堂网| 最新国产精品拍在线观看| 欧美性感尤物人妻在线免费看| 男人操女人逼逼视频网站| av老司机精品在线观看| 毛片一级完整版免费| 久久久人妻一区二区| 午夜国产免费福利av| 日本www中文字幕| 老司机深夜免费福利视频在线观看| 国产亚洲精品视频合集| 9久在线视频只有精品| 亚洲精品三级av在线免费观看| 九一传媒制片厂视频在线免费观看| 大胸性感美女羞爽操逼毛片| 国产一区av澳门在线观看|