成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > 淺談Redis位圖(Bitmap)及Redis二進(jìn)制中的問(wèn)題

淺談Redis位圖(Bitmap)及Redis二進(jìn)制中的問(wèn)題

熱門標(biāo)簽:貴州電銷卡外呼系統(tǒng) 日本中國(guó)地圖標(biāo)注 十堰營(yíng)銷電銷機(jī)器人哪家便宜 宿遷便宜外呼系統(tǒng)平臺(tái) 魔獸2青云地圖標(biāo)注 鄭州人工智能電銷機(jī)器人系統(tǒng) 山東外呼銷售系統(tǒng)招商 北京400電話辦理收費(fèi)標(biāo)準(zhǔn) 超呼電話機(jī)器人

Redis位圖(Bitmap)及二進(jìn)制的問(wèn)題

SETBIT key offset value

對(duì) key 所儲(chǔ)存的字符串值,設(shè)置或清除指定偏移量上的位(bit)。位的設(shè)置或清除取決于 value 參數(shù),可以是 0 也可以是 1 。當(dāng) key 不存在時(shí),自動(dòng)生成一個(gè)新的字符串值。字符串會(huì)進(jìn)行伸展(grown)以確保它可以將 value 保存在指定的偏移量上。當(dāng)字符串值進(jìn)行伸展時(shí),空白位置以 0 填充。offset 參數(shù)必須大于或等于 0 ,小于 2^32 (bit 映射被限制在 512 MB 之內(nèi))。返回值是指定偏移量原來(lái)存儲(chǔ)的位

對(duì)使用大的 offset 的 SETBIT 操作來(lái)說(shuō),內(nèi)存分配可能造成 Redis 服務(wù)器被阻塞。具體參考 SETRANGE 命令,warning(警告)部分。

127.0.0.1:6379> setbit bit 3 1
(integer) 0
127.0.0.1:6379> getbit bit 0
(integer) 0
127.0.0.1:6379> getbit bit 1
(integer) 0
127.0.0.1:6379> getbit bit 2
(integer) 0
127.0.0.1:6379> getbit bit 3
(integer) 1127.0.0.1:6379> setbit bit 3 0(integer) 1

GETBIT key offset

返回key對(duì)應(yīng)的string在offset處的bit值,當(dāng)offset超出了字符串長(zhǎng)度的時(shí)候,這個(gè)字符串就被假定為由0比特填充的連續(xù)空間。當(dāng)key不存在的時(shí)候,它就認(rèn)為是一個(gè)空字符串,所以offset總是超出范圍,然后value也被認(rèn)為是由0比特填充的連續(xù)空間。到內(nèi)存分配。

127.0.0.1:6379> getbit yhq 5
(integer) 0
127.0.0.1:6379> getbit bit 10
(integer) 0
127.0.0.1:6379> getbit bit 3
(integer) 1

BITCOUNT key [start] [end]

計(jì)算給定字符串中,被設(shè)置為 1 的比特位的數(shù)量。一般情況下,給定的整個(gè)字符串都會(huì)被進(jìn)行計(jì)數(shù),通過(guò)指定額外的 start 或 end 參數(shù),可以讓計(jì)數(shù)只在特定的位上進(jìn)行*start和end的單元是字節(jié)而不是bit*。start 和 end 參數(shù)的設(shè)置和 GETRANGE 命令類似,都可以使用負(fù)數(shù)值:比如 -1 表示最后一個(gè)位,而 -2 表示倒數(shù)第二個(gè)位,以此類推。不存在的 key 被當(dāng)成是空字符串來(lái)處理,因此對(duì)一個(gè)不存在的 key 進(jìn)行 BITCOUNT 操作,結(jié)果為 0 。

127.0.0.1:6379> set mykey foobar
OK
127.0.0.1:6379> bitcount youkey
(integer) 0
127.0.0.1:6379> bitcount mykey
(integer) 26
127.0.0.1:6379> bitcount mykey 0 0   # "f" 0110 0110
(integer) 4
127.0.0.1:6379> bitcount mykey 1 1   # "o" 0110 1111
(integer) 6

BITOP operation destkey key [key ...]

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

operation 可以是 AND 、 OR 、 NOT 、 XOR 這四種操作中的任意一種:

  • BITOP AND destkey key [key ...] ,對(duì)一個(gè)或多個(gè) key 求邏輯與,并將結(jié)果保存到 destkey 。
  • BITOP OR destkey key [key ...] ,對(duì)一個(gè)或多個(gè) key 求邏輯或,并將結(jié)果保存到 destkey 。
  • BITOP XOR destkey key [key ...] ,對(duì)一個(gè)或多個(gè) key 求邏輯異或,并將結(jié)果保存到 destkey 。
  • BITOP NOT destkey key ,對(duì)給定 key 求邏輯非,并將結(jié)果保存到 destkey 。

除了 NOT 操作之外,其他操作都可以接受一個(gè)或多個(gè) key 作為輸入。

處理不同長(zhǎng)度的字符串,當(dāng) BITOP 處理不同長(zhǎng)度的字符串時(shí),較短的那個(gè)字符串所缺少的部分會(huì)被看作 0 ??盏?key 也被看作是包含 0 的字符串序列

127.0.0.1:6379> setbit bit1 0 1
(integer) 0
127.0.0.1:6379> setbit bit1 3 1
(integer) 0
127.0.0.1:6379> setbit bit2 0 1
(integer) 0
127.0.0.1:6379> setbit bit2 1 1
(integer) 0
127.0.0.1:6379> setbit bit2 3 1
(integer) 0
127.0.0.1:6379> bitop and andbit bit1 bit2
(integer) 1
127.0.0.1:6379> getbit andbit 0
(integer) 1
127.0.0.1:6379> getbit andbit 1
(integer) 0
127.0.0.1:6379> getbit andbit 2
(integer) 0
127.0.0.1:6379> getbit andbit 3
(integer) 1

BITPOS key bit [start] [end]

返回字符串里面第一個(gè)被設(shè)置為1或者0的bit位。如果我們?cè)诳兆址蛘?字節(jié)的字符串里面查找bit為1的內(nèi)容,那么結(jié)果將返回-1。

如果我們?cè)谧址锩娌檎襜it為0而且字符串只包含1的值時(shí),將返回字符串最右邊的第一個(gè)空位。如果有一個(gè)字符串是三個(gè)字節(jié)的值為0xff的字符串,那么命令BITPOS key 0將會(huì)返回24,因?yàn)?-23位都是1?;旧希覀兛梢园炎址闯捎疫呌袩o(wú)數(shù)個(gè)0。然而,如果你用指定start和end范圍進(jìn)行查找指定值時(shí),如果該范圍內(nèi)沒(méi)有對(duì)應(yīng)值,結(jié)果將返回-1。

127.0.0.1:6379> getbit num 0
(integer) 0
127.0.0.1:6379> getbit num 1
(integer) 0
127.0.0.1:6379> getbit num 2
(integer) 1
127.0.0.1:6379> getbit num 3
(integer) 1
127.0.0.1:6379> getbit num 4
(integer) 0
127.0.0.1:6379> getbit num 5
(integer) 0
127.0.0.1:6379> getbit num 6
(integer) 1
127.0.0.1:6379> getbit num 7
(integer) 0
127.0.0.1:6379> getbit num 8
(integer) 0
127.0.0.1:6379> bitpos num 1
(integer) 2
127.0.0.1:6379> bitpos yhqqhh 1
(integer) -1
127.0.0.1:6379> bitpos yhqqhh 0
(integer) 0

Redis二進(jìn)制中的問(wèn)題1 : 數(shù)字全部是char類型表示

127.0.0.1:6379> set num 2
OK
127.0.0.1:6379> bitcount num
(integer) 3

Redis中,數(shù)字類型其實(shí)是以ASCII形式展現(xiàn)的,即 2=>50,正常2的(一個(gè)字節(jié)8個(gè)二進(jìn)制位)表示為 00000010,bitcount為1。而Redis數(shù)字是字符的"2",所以 "2"[50] 的表示為 00110010,bitcount為3。

Redis中二進(jìn)制從左到右(正常從右到左)

"2"的二進(jìn)制為 00110010

127.0.0.1:6379> getbit num 0
(integer) 0
127.0.0.1:6379> getbit num 1
(integer) 0
127.0.0.1:6379> getbit num 2
(integer) 1
127.0.0.1:6379> getbit num 3
(integer) 1
127.0.0.1:6379> getbit num 4
(integer) 0
127.0.0.1:6379> getbit num 5
(integer) 0
127.0.0.1:6379> getbit num 6
(integer) 1
127.0.0.1:6379> getbit num 7
(integer) 0

redis高級(jí)數(shù)據(jù)結(jié)構(gòu)---bitmap

場(chǎng)景引入

我們?cè)谡i_(kāi)發(fā)環(huán)境中,有時(shí)候需要將bool型數(shù)據(jù)進(jìn)行存取,比如用戶一年里面簽到了多少次,簽到了設(shè)置1,沒(méi)簽到設(shè)置0,要記錄365天,如果使用普通的key/value形式存儲(chǔ),每個(gè)用戶就需要占據(jù)365鍵值對(duì),當(dāng)用戶量上億的時(shí)候,需要驚人的存儲(chǔ)空間。更何況是一年的。 為了解決這種問(wèn)題,redis提出了bitmap的數(shù)據(jù)結(jié)構(gòu),這樣每天用戶簽到只需要占據(jù)一個(gè)位,365天就是365位,46個(gè)字節(jié),一個(gè)稍微長(zhǎng)一點(diǎn)的字符串就可以完全容納下一個(gè)用戶一年的簽到記錄,大量的節(jié)省存儲(chǔ)空間。位圖的最小單位是比特(bit),每個(gè)bit的取值只能是0或1。

實(shí)現(xiàn)原理

位圖不是特殊的數(shù)據(jù)結(jié)構(gòu),他的內(nèi)容實(shí)際就是普通的字符串,也就是byte數(shù)組,我們可以使用普通的get/set直接獲取和設(shè)置整個(gè)位圖的內(nèi)容,也可以使用位圖操作getbit/setbit等將byte數(shù)組看成位數(shù)組來(lái)處理。

基本用法

redis的位數(shù)組是自動(dòng)擴(kuò)展的,如果設(shè)置了某個(gè)偏移位置超出了現(xiàn)有的內(nèi)容范圍,就會(huì)自動(dòng)將位數(shù)組進(jìn)行零擴(kuò)充。

舉例:

“h”的ASCII碼值是:01101000

"e"的ASCII碼值是: 01100101

"l"的ASCII碼值是:0110 1100

"o"的ASCII碼值是:0110 1111

將“he” 連起來(lái)是:0110100001100101

即1,2,4,9,10,13,15位為1

以上的示范可以稱之為“零存整取”,即使用單個(gè)位操作設(shè)置位值,使用單個(gè)位操作獲取具體位值。

還有另一種操作稱之為“整存零取”,即使用字符串操作批量設(shè)置值,使用單個(gè)位操作獲取具體位值。

以上介紹了setbit,getbit的操作,redis還提供了位圖的統(tǒng)計(jì)和查找指令:bitcount,bitpos

bitcount同來(lái)統(tǒng)計(jì)指定位值范圍內(nèi)1的個(gè)數(shù)。

bitpos用來(lái)查找指定范圍內(nèi)出現(xiàn)的第一個(gè)0或者1。

127.0.0.1:6379> set w hello
OK
127.0.0.1:6379> bitcount w    //統(tǒng)計(jì)所有的1的個(gè)數(shù)
(integer) 21
127.0.0.1:6379> bitcount w 0 0  //統(tǒng)計(jì)第一個(gè)字符中1的個(gè)數(shù)
(integer) 3
127.0.0.1:6379> bitcount w 0 1  //統(tǒng)計(jì)前兩個(gè)字符中1的個(gè)數(shù)
(integer) 7
127.0.0.1:6379> bitpos w 0   //第一個(gè)0位
(integer) 0
127.0.0.1:6379> bitpos w 1  //第一個(gè)1位
(integer) 1
127.0.0.1:6379> bitpos w 1 1 1   // 從第二個(gè)字符算起,第一個(gè)1位
(integer) 9
127.0.0.1:6379> bitpos w 1 2 2   //  從第三個(gè)字符算起,第一個(gè)1位
(integer) 17
127.0.0.1:6379> 

接下來(lái)介紹魔術(shù)指令 bitfield:

主要解決setbit/getbit只能操作單個(gè)位的弊端。redis 3.2+新增功能。

bitfield有三個(gè)子指令:get、set、incrby,他們都可以對(duì)指定位片段進(jìn)行讀寫,但是最多只能處理64個(gè)連續(xù)的位,如果超過(guò)64位,就得使用多個(gè)子指令,bitfield可以一次執(zhí)行多個(gè)子指令。

127.0.0.1:6379> set w hello
OK
127.0.0.1:6379> bitfield w get u4 0  //從第一個(gè)位開(kāi)始取4個(gè)位,結(jié)果是無(wú)符號(hào)數(shù)(u)
1) (integer) 6
127.0.0.1:6379> bitfield w get u3 2  //從第三個(gè)位開(kāi)始取3個(gè)位,結(jié)果是無(wú)符號(hào)數(shù)
1) (integer) 5
127.0.0.1:6379> bitfield w get i4 0  //從第一個(gè)位開(kāi)始取4個(gè)位,結(jié)果是有符號(hào)數(shù)  (i)
1) (integer) 6
127.0.0.1:6379> bitfield w get i3 2  //從第三個(gè)位開(kāi)始取3個(gè)位,結(jié)果是有符號(hào)數(shù)
1) (integer) -3
127.0.0.1:6379> 

所謂有符號(hào)數(shù)是指獲取的位數(shù)組中第一個(gè)位是符號(hào)位,剩下的才是值,如果第一個(gè)位是1,那就是負(fù)數(shù)。

無(wú)符號(hào)數(shù)表示非負(fù)數(shù),沒(méi)有符號(hào)位,獲取的位數(shù)全部是是值。

有符號(hào)數(shù)最多可以獲取64位,無(wú)符號(hào)數(shù)只能獲取63位。如果超出限制,redis會(huì)報(bào)參數(shù)錯(cuò)誤。

接下來(lái)演示一個(gè)多指令:

127.0.0.1:6379> bitfield w get u4 0 get u3 2 get i4 0 get i3 2
1) (integer) 6
2) (integer) 5
3) (integer) 6
4) (integer) -3
127.0.0.1:6379> 

接下來(lái)使用set子指令將第二個(gè)字符e,改成a,a的ASCII值是97

127.0.0.1:6379> bitfield w set u8 8 97
1) (integer) 101
127.0.0.1:6379> get w
"hallo"
127.0.0.1:6379> 

接下來(lái)介紹第三個(gè)子指令incrby,他用來(lái)對(duì)指定范圍的位進(jìn)行自增操作,既然是自增操作,就會(huì)存在溢出的情況,如果增加了正數(shù),會(huì)出現(xiàn)向上溢出,如果是增加了負(fù)數(shù),就會(huì)出現(xiàn)向下溢出。redis的默認(rèn)處理方式是折返操作,如果出現(xiàn)了溢出,就將溢出的符號(hào)位丟掉。如果是8位無(wú)符號(hào)數(shù)255,加1后就會(huì)溢出,會(huì)全部變?yōu)?.如果是8位有符號(hào)數(shù)127,加1后就會(huì)溢出變成-128。

127.0.0.1:6379> set w hello
OK
127.0.0.1:6379> bitfield w incrby u4 2 1   //從第三個(gè)位開(kāi)始,對(duì)接下來(lái)的4位無(wú)符號(hào)數(shù)進(jìn)行自增+1
1) (integer) 11
127.0.0.1:6379> bitfield w incrby u4 2 1 
1) (integer) 12
127.0.0.1:6379> bitfield w incrby u4 2 1 
1) (integer) 13
127.0.0.1:6379> bitfield w incrby u4 2 1 
1) (integer) 14
127.0.0.1:6379> bitfield w incrby u4 2 1 
1) (integer) 15
127.0.0.1:6379> bitfield w incrby u4 2 1   //出現(xiàn)了溢出折返現(xiàn)象
1) (integer) 0
127.0.0.1:6379> 

bitfield指令提供了溢出策略子指令overflow,用戶可以選擇溢出行為,默認(rèn)是折返(wrap),還可以選擇失?。╢ail)------報(bào)錯(cuò)不執(zhí)行,以及飽和截?cái)啵╯at)-----超過(guò)了范圍就停留在最大值或者最小值。overflow指令只影響接下來(lái)的第一條指令,這條指令執(zhí)行完后溢出策略會(huì)變成默認(rèn)值折返。

飽和截?cái)啵?/p>

127.0.0.1:6379> set w hello
OK
127.0.0.1:6379> bitfield w overflow sat incrby u4 2 1
1) (integer) 11
127.0.0.1:6379> bitfield w overflow sat incrby u4 2 1
1) (integer) 12
127.0.0.1:6379> bitfield w overflow sat incrby u4 2 1
1) (integer) 13
127.0.0.1:6379> bitfield w overflow sat incrby u4 2 1
1) (integer) 14
127.0.0.1:6379> bitfield w overflow sat incrby u4 2 1
1) (integer) 15
127.0.0.1:6379> bitfield w overflow sat incrby u4 2 1   //出現(xiàn)飽和截?cái)?,保持最大?
1) (integer) 15
127.0.0.1:6379> 

失敗不執(zhí)行:

127.0.0.1:6379> set w hello
OK
127.0.0.1:6379> bitfield w overflow fail incrby u4 2 1
1) (integer) 11
127.0.0.1:6379> bitfield w overflow fail incrby u4 2 1
1) (integer) 12
127.0.0.1:6379> bitfield w overflow fail incrby u4 2 1
1) (integer) 13
127.0.0.1:6379> bitfield w overflow fail incrby u4 2 1
1) (integer) 14
127.0.0.1:6379> bitfield w overflow fail incrby u4 2 1
1) (integer) 15
127.0.0.1:6379> bitfield w overflow fail incrby u4 2 1   //不執(zhí)行
1) (nil)
127.0.0.1:6379> 

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

您可能感興趣的文章:
  • Redis中3種特殊的數(shù)據(jù)類型(BitMap、Geo和HyperLogLog)
  • redis通過(guò)位圖法記錄在線用戶的狀態(tài)詳解
  • Redis基于Bitmap實(shí)現(xiàn)用戶簽到功能
  • Redis高級(jí)數(shù)據(jù)類型Hyperloglog、Bitmap的使用

標(biāo)簽:吉安 朝陽(yáng) 果洛 江蘇 大慶 臺(tái)州 北京 楊凌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《淺談Redis位圖(Bitmap)及Redis二進(jìn)制中的問(wèn)題》,本文關(guān)鍵詞  淺談,Redis,位圖,Bitmap,及,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《淺談Redis位圖(Bitmap)及Redis二進(jìn)制中的問(wèn)題》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于淺談Redis位圖(Bitmap)及Redis二進(jìn)制中的問(wèn)題的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    美女网站在线| 午夜精品久久久久久久久久久久| 色综合久久88色综合天天免费| 伊人久久视频| 91精品秘密在线观看| 久久精品一区二区不卡| 欧美一级理论性理论a| 天天操人人爽| 亚洲人成网站影音先锋播放| 欧美高清视频一区| 国产精品一二区| 欧美色图激情小说| av亚洲精华国产精华精| 国产精品99蜜臀久久不卡二区| 黄色一级二级三级| 91视频最新地址| 一二三四社区在线视频6| 天堂影院一区二区| 日韩黄色三级| 蜜桃视频在线观看一区| 欧美不卡高清一区二区三区| gogo久久日韩裸体艺术| 久久精品视频1| 国产成人久久精品77777综合| 国产精品一区2区| 一级做a爰片久久毛片| 78国产伦精品一区二区三区| 小小水蜜桃在线观看| 亚洲国产精品国自产拍av秋霞| 欧美h视频在线| 91精品麻豆日日躁夜夜躁| 欧美精品久久久久久久免费观看| 成人在线免费网站| 欧美视频二区| 日韩欧美高清一区二区三区| 亚洲激情久久久| 亚洲一区美女视频在线观看免费| 亚洲精品ww久久久久久p站| 国产精品最新自拍| 国产精品毛片a∨一区二区三区|国| 欧美亚洲国产一卡| 国产成年人视频网站| 欧美中文在线观看| 欧美aaaaaaaa牛牛影院| 蜜臀av粉嫩av懂色av| 婷婷激情综合五月天| 久久在精品线影院精品国产| 久久久国产午夜精品| 美女免费视频一区| 久久精品国产精品青草色艺| 久久久久五月天| 中文字幕视频观看| 欧美特黄一级片| 萌白酱国产一区二区| 中文字幕一区二区中文字幕| 久久久久久久久久久久久久久久久久av| 午夜免费激情视频| 久久久精品国产网站| 亚洲h色精品| 国产美女福利视频| 亚洲欧美日韩一区在线| 国精品无码人妻一区二区三区| 麻豆av一区二区三区| 免费观看av网站| 亚洲性猛交富婆| 看国产成人h片视频| 美女黄色片网站| 很很鲁在线视频播放影院| 播五月开心婷婷综合| 先锋影音av中文字幕| 国产日韩欧美一二三区| 99久久精品国产一区二区成人| 国产在线视频不卡二| 五月天精品一区二区三区| 亚洲黄色网址大全| 天堂成人娱乐在线视频免费播放网站| 99精品国产视频| 在线不卡的av| 亚洲天堂成人在线观看| 最新精品国偷自产在线| 精品日韩av一区二区| 夜夜嗨av一区二区三区中文字幕| 日韩欧美三级在线观看| 免费不卡欧美自拍视频| 亚洲人成午夜免电影费观看| 日韩免费三级| 日韩亚洲欧美视频| 性金发美女69hd大尺寸| 尤物视频免费观看| 狠狠色综合日日| 又黄又爽的视频在线观看| 亚洲天堂免费看| 思思99精品视频在线观看| 偷拍视频一区二区| 亚洲成人7777| 国产精品久久久久久亚洲伦| 美腿丝袜一区二区三区| 色综合蜜月久久综合网| 成人短视频在线观看| 日本免费黄网站| **在线精品| 亚洲一道本在线| 美日韩丰满少妇在线观看| 国产精品4hu.www| 亚洲欧美日韩视频二区| 亚洲精品在线视频免费观看| 亚洲最新永久在线观看| 在线国产精品网| 色哟哟一一国产精品| 国产日韩欧美在线一区| 国产av精国产传媒| 97视频在线观看亚洲| 欧美一区二区三区爽大粗免费| 亚洲AV成人无码精电影在线| 外国成人在线视频| 国产成人免费观看网站| 亚洲不卡一区二区三区| 两个人免费视频观看日本| 亚洲人成在线播放网站岛国| 最近2019中文字幕第三页视频| 国产午夜在线一区二区三区| 2019中文字幕免费视频| 国产成人精品在线观看| 极品尤物av久久免费看| jizzjizz国产| 91超碰caoporn97人人| 欧美超碰在线| 国产日韩亚洲精品| 欧美日本视频在线| 亚洲丝袜自拍清纯另类| 国产成人鲁鲁免费视频a| 国产精品亚洲综合在线观看| 亚洲精品国产欧美在线观看| 日本a级片免费| 成人在线播放网站| 欧美激情一区二区三区高清视频| 国精产品99永久一区一区| 理论片一区二区在线| 老司机av网站| 国产成人a亚洲精v品无码| 国产又爽又黄又嫩又猛又粗| 亚洲综合久久av一区二区三区| 一区在线观看免费| 北条麻妃99精品青青久久| 依依成人综合视频| 91九色综合| 日本不卡一二三区黄网| 国产精品一区hongkong| 69堂成人精品视频免费| 成人欧美一区二区三区在线| 国产精品女人久久久| 成人免费看视频| 国产日韩影视精品| 国产精品8888| 免费观看欧美成人禁片| 国产精品亚洲综合色区韩国| 97看剧电视剧大全| 午夜影院免费视频| 日本一区免费视频| 男女私大尺度视频| 97人洗澡人人免费公开视频碰碰碰| 18禁男女爽爽爽午夜网站免费| 美日韩一区二区三区| 欧美午夜片欧美片在线观看| 在线激情视频| 亚洲欧洲美洲国产香蕉| 污污内射在线观看一区二区少妇| 国产一区二区色| 国产精品久久午夜| 精品无码国模私拍视频| 国产mv免费观看入口亚洲| 99久久国产综合精品麻豆| 亚洲精品国产精华液| 国产精品三区在线| 久久精品久久久久电影| 717成人午夜免费福利电影| 久久在线视频精品| 国产人妻精品一区二区三区不卡| 美女福利视频一区二区| 日本一区二区免费在线| 女仆av观看一区| 一区二区三区午夜视频| 国产福利在线看| www国产无套内射com| xx欧美撒尿嘘撒尿xx| 自拍一级黄色片| 午夜欧美一区二区三区免费观看| 波多野结衣在线观看一区| 伊人中文字幕在线| 国产一在线精品一区在线观看| 国产91精品黑色丝袜高跟鞋| 久久精品国产亚洲777| 国产精品综合久久久久| 精品一二线国产| 国产精品精华液网站| 午夜视频在线免费观看| www.日韩av.com| 97超碰资源站在线观看| 久久一留热品黄| 亚洲AV无码成人精品一区| 欧美高清videosex极品| 午夜国产福利一区二区| 最新中文字幕av| 成人久久18免费网站麻豆| 九九热精品免费视频| 黄瓜视频网站| 啪啪导航网站| 毛片免费看不卡网站| 成人高清电影网站| 99免费精品在线观看| 成人免费淫片在线费观看| 国产免费麻豆视频| 欧美男生操女生| 精品日韩美女的视频高清| 男人免费av| 亚洲精品男人的天堂| 亚洲最大最好的私人影剧院| 国产亚洲精品精品国产亚洲综合| 久久亚洲国产成人精品无码区| 日韩极品精品视频免费观看| 天天摸天天碰天天添| 亚洲av片在线观看| 韩国女主播成人在线观看| 超级砰砰砰97免费观看最新一期| 国产精品久久国产精麻豆96堂| av片免费观看| 日韩视频一二区| 欧洲av一区二区| 国产精品99久久久精品无码| 色综合色综合色综合色综合色综合| 国产亚洲精品久久久久动| 免费成人av电影| 欧美成年网站| 国产网站在线| 亚洲一区中文字幕| 缅甸午夜性猛交xxxx| 欧美日韩国产在线看| 欧美性bbb| 久久综合婷婷综合| 中文字幕欧美日韩在线不卡| 亚洲av无码片一区二区三区| 日韩福利视频在线| 成人福利网站在线观看11| 麻豆tv在线| 国产小视频在线高清播放| 动漫3d精品一区二区三区| 午夜激情成人网| 午夜影院久久久| 日韩黄色一级视频| 亚洲激情电影在线| 麻豆九一精品爱看视频在线观看免费| 成人中文字幕在线观看| 91精品蜜臀一区二区三区在线| 亚洲嫩模很污视频| 亚洲综合在线一区| 亚洲欧美日韩国产一区二区| 久久97精品| 中国丰满熟妇xxxx性| 欧美成人精品高清在线播放| 精品偷拍各种wc美女嘘嘘| 欧洲精品在线视频| 香蕉av一区| 57pao国产成永久免费视频| 国产精品996| 久久国产波多野结衣| 亚洲av无码专区在线| 国产欧美精品一区二区色综合| 蜜桃在线一区二区| 亚洲午夜精品久久久久久高潮| 亚洲国产精品久久网午夜小说| 精品一区二区三区蜜桃在线| 99久久er热在这里只有精品15| 亚洲一区二区三区精品中文字幕| 日本一区二区乱| 色无极亚洲影院| 4438五月综合| 国产人妖在线播放| 丁香花高清视频完整版在线观看| 成人欧美一区二区三区黑人一| 九一精品在线观看| 第一页在线视频| 国产夫绿帽单男3p精品视频| 女女同性女同一区二区三区按摩| 在线观看免费网站黄| 国产情侣自拍av| 日韩视频一区在线观看| 青青草免费观看完整版高清| 日韩久久久久久久久| 玖玖玖免费嫩草在线影院一区| 成人黄色网免费| 91精品国产一区| 91狠狠综合久久久久久| 最近中文视频在线| 久久久久久久久久久99999| 欧美日本国产| 性xxxxxxxxx| 国产成人精品一区二三区| 国产成人香蕉在线视频fuz| 中文字幕一区二区人妻| 国精产品一区一区三区mba桃花| 在线国产三级| 国产羞羞视频在线观看| 日韩av在线免费观看不卡| 国产激情在线视频| 中文字幕在线久热精品| 日韩精品一区二区在线播放| 中文字幕高清视频| 巨胸喷奶水www久久久免费动漫| 首页综合国产亚洲丝袜| 亚洲成年人影院| 香港久久久电影| 国产欧美一区二区三区在线老狼| 国产精品久久久久一区二区三区共| www欧美在线| 欧美成人777| 91视频精品| 国产主播性色av福利精品一区| 草草影院在线| 农村末发育av片一区二区| 男人女人拔萝卜视频| 色哟哟网站入口亚洲精品| 一区二区激情小说| 日韩性小视频| 99re在线视频这里只有精品| 97精品人妻一区二区三区在线| 日本国产在线视频| 少妇av一区二区三区| 97人妻精品一区二区三区视频|