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

不是MongoDB不行,而是你不懂

云計(jì)算 MongoDB
MongoDB最近在Hack News上是平凡中槍,各種缺點(diǎn)被紛紛被抬上桌面;然而它的高性能、易部署、易使用這些優(yōu)點(diǎn)同樣是不容忽視的。于是就有了Russell Smith —— MongoDB Master,在一片噓聲中為我們帶來MongoDB“詬病”的全面分析,并一一提出了解決方案。

近期MongoDB在Hack News上是平凡中槍。許多人更是聲稱恨上了MongoDB,David mytton就在他的博客中揭露了MongoDB許多現(xiàn)存問題。然而恨的人有之偏愛的也同樣很多,作為回?fù)簦篟ussell Smith帶來了多年工作經(jīng)驗(yàn)的總結(jié)。Russell Smith曾擔(dān)任Ops和大型網(wǎng)站縮放顧問并且?guī)椭^Guardian、Experian等多家公司,MongoDB London User Group的聯(lián)合創(chuàng)始人。作為MongoDB Master(MongoDB官方認(rèn)可的MongoDB核心貢獻(xiàn)者組織,并通過社區(qū)分享自己的專業(yè)技術(shù)),其參與工作的基礎(chǔ)設(shè)施單服務(wù)器每秒查詢超過3萬次,每天活躍數(shù)據(jù)更在1TB以上。

下面來看Russell對MongoDB一些常見及生僻的問題做出分析:

32位 vs 64位

現(xiàn)在大多數(shù)的服務(wù)器都對32位操作系統(tǒng)實(shí)現(xiàn)支持,更有許多新型硬件支持著允許更多RAM的64位操作系統(tǒng)。

MongoDB也同時發(fā)布了32位及64位兩個版本的數(shù)據(jù)庫。歸結(jié)于MongoDB使用的內(nèi)存映射文件,32位版本只支持2G數(shù)據(jù)的存儲。對于標(biāo)準(zhǔn)的Replica Set,MongoDB只擁有單一的處理策略 —— mongod。如果你想在未來儲存2G以上的數(shù)據(jù),請使用64位版本的MongoDB。如果擁有分片安裝,那么32位版本同樣可以使用。

總結(jié):使用64位版本或者理解32位版本的限制。

文檔大小限制

不同于RDBMS把數(shù)據(jù)儲存在行與列中,MongoDB的數(shù)據(jù)是儲存在文件中的。這些文件使用二進(jìn)制存儲形式,其格式為類似JSON格式的BSON格式。

和其它的數(shù)據(jù)庫一樣,單個文件的儲存大小是有限制的。在舊版本的MongoDB中,單個文件都限制在4M以內(nèi)。而新版本的MongoDB單文件已經(jīng)支持到16M大小。這樣的限制也許是令人厭煩的,但是10gen的意見是:如果這項(xiàng)設(shè)置不停的困擾到你,那么是否你的設(shè)計(jì)模式存在著問題;或者你可以使用文件無大小限制的GridFS。

這種情況通常的建議是避免存儲過大的文件,不定期的更新數(shù)據(jù)庫中存儲的各種對象。而像Amazon S3或者Rackspace Cloudfiles這樣的服務(wù)通常可能會是更好的選擇,而非必要情況下最好別讓基礎(chǔ)設(shè)施陷入過載。

總結(jié):把每個文件保持在16M以下,那么一切都好。

寫入失敗

MongoDB在默認(rèn)的情況下允許高速的寫入和更新,而付出的代價(jià)就是沒有明確的錯誤通知。默認(rèn)情況下多數(shù)的驅(qū)動都在做異步、“不安全”寫入 —— 這就意味著驅(qū)動程序不能立即反饋錯誤信息,類似于MySQL的INSERT DELAYED。如果你想知道某個事情是否成功,你必須使用getLastError手動的檢查錯誤信息。

某些情況下如果你需要在錯誤發(fā)生后立刻得到錯誤信息,即:大多數(shù)的驅(qū)動中都很容易實(shí)現(xiàn)同步“安全”查詢。這將謀殺掉MongoDB不同于傳統(tǒng)數(shù)據(jù)庫的優(yōu)點(diǎn)。

如果對比“完全安全”的同步寫入你需要多一點(diǎn)性能,同時還想要一定程度的安全,那么你可以使用getLastError with‘j’讓MongoDB只到一份日志提交后再發(fā)出錯誤報(bào)告通知。那么日志將以100毫秒一次的速度輸出到磁盤,而不是60秒。

總結(jié):如果必須要寫入確認(rèn),你可以使用安全寫入或getLastError。

數(shù)據(jù)結(jié)構(gòu)模型的弱化不等于沒有數(shù)據(jù)結(jié)構(gòu)模型

RDBMS一般都擁有一個預(yù)定義的數(shù)據(jù)結(jié)構(gòu)模型:表格的行和列,每個字段都擁有名稱和數(shù)據(jù)類型。如果你想給其中一行加一列,那么你必須給整個表格都添加一列。

MongoDB則是移除了這個設(shè)置,對于Collection和文件沒有強(qiáng)制的模型限定。這有益于快速開發(fā)及簡易修改。

當(dāng)然這不意味著你就可以無視結(jié)構(gòu)模型的設(shè)計(jì),一個合適的結(jié)構(gòu)模型可以讓你獲得MongoDB的最佳性能。趕快閱讀MongoDB文檔,或者觀看這些結(jié)構(gòu)模型設(shè)計(jì)的相關(guān)視頻吧!

Schema Design Basics

Schema Design at Scale

Schema Design Principles and Practice

總結(jié):設(shè)計(jì)結(jié)構(gòu)模型并充分利用MongoDB的特色。

默認(rèn)情況下修改語句修改的只是單個文件

在傳統(tǒng)的RDBMS中除非使用LIMIT子句,修改語句作用的將是所有匹配的地方。然而MongoDB每個查詢上都默認(rèn)使用等價(jià)“LIMIT 1”的設(shè)置。雖然無法做到“LIMIT 5”,但是你可以通過下面的語句整個的移除限制:

db.people.update({age: {$gt: 30}}, {$set: {past_it: true}}, false, true)

同樣在官方的驅(qū)動中還有類似的選項(xiàng) —— ‘multi’。

總結(jié):可以通過指定多個文件的multi為true來完成多文件修改

查詢區(qū)分大小寫

字符串的查詢可能不按預(yù)期的那樣發(fā)展 —— 這歸結(jié)于MongoDB默認(rèn)區(qū)分大小寫。

例如:db.people.find({name: ‘Russell’})與db.people.find({name: ‘ russell‘})是不同的。在這里最理想的解決方案就是對需要查詢數(shù)據(jù)進(jìn)行確認(rèn)。你也可以通過正則表達(dá)式進(jìn)行查詢,比如:db.people.find({name:/Russell/i}),但是這樣會影響到性能。

總結(jié):查詢是區(qū)分大小寫的,在犧牲速度的情況下可以利用正則表達(dá)式。

對輸入的數(shù)據(jù)無容錯性

當(dāng)你嘗試向傳統(tǒng)數(shù)據(jù)庫插入錯誤類型的數(shù)據(jù),傳統(tǒng)的數(shù)據(jù)庫一般會把數(shù)據(jù)轉(zhuǎn)換成預(yù)定義的類型。然而這在MongoDB中是行不通的,因?yàn)镸ongoDB的文件是沒有預(yù)定義數(shù)據(jù)模型的。這樣的話MongoDB會插入你輸入的任何數(shù)據(jù)。

總結(jié):使用準(zhǔn)確的數(shù)據(jù)類型。

關(guān)于鎖

當(dāng)資源被代碼的多個部分所共享時,需要確信鎖必須要確保這處資源只能在一個地方被操作。

舊版本的MongoDB (pre 2.0)擁有一個全局的寫入鎖。這就意味貫穿整個服務(wù)器中只有一個地方做寫操作。這就可能導(dǎo)致數(shù)據(jù)庫因?yàn)槟硞€地方鎖定超負(fù)載而停滯。這個問題在2.0版本中的得到了顯著的改善,并且在當(dāng)前2.2版本中得到了進(jìn)一步的加強(qiáng)。MongoDB 2.2使用數(shù)據(jù)庫級別的鎖在這個問題上邁進(jìn)了一大步。同樣值得期待的Collection級別的鎖也計(jì)劃在下一個版本中推出。

盡管如此,Russell還是認(rèn)為:大多數(shù)受此限制的應(yīng)用程序于其說是受MongoDB影響,還不如說是程序本身的問題來的更直接。

總結(jié):使用最新的穩(wěn)定版本才能獲得最高的性能。

關(guān)于包

在類Ubuntu和Debian系統(tǒng)上安裝時,許多人都出現(xiàn)過“過時版本”這樣的問題。解決方案很簡單:使用10gen官方庫,那么在Ubuntu和Debian上安裝也會像在Fedora和Centos上安裝一樣流暢。

總結(jié):使用擁有大多數(shù)最新版本的官方包。

使用偶數(shù)個Replica Set成員

Replica Set是增加冗余及提升MongoDB數(shù)據(jù)集群性能的有效途徑。數(shù)據(jù)在所有的節(jié)點(diǎn)中被復(fù)制,并選出一個作為主節(jié)點(diǎn)。假如主節(jié)點(diǎn)出故障,那么會在其他的節(jié)點(diǎn)中票選一個作為新的主節(jié)點(diǎn)。

在同一個Replica Set中使用兩臺機(jī)器是很有誘惑的,它比3臺機(jī)器來的便宜并且也是RDBMS的標(biāo)準(zhǔn)行事風(fēng)格。

但是到了MongoDB這里,同一個Replica Set中的成員數(shù)量只能是奇數(shù)個。假如你使用了偶數(shù)個成員,那么當(dāng)主節(jié)點(diǎn)發(fā)生故障時那么其它的節(jié)點(diǎn)都會變成只讀。發(fā)生這種情況是因?yàn)槭O麓x節(jié)點(diǎn)的數(shù)目不滿足票選主節(jié)點(diǎn)的規(guī)定。

如果你想節(jié)約成本,同時還希望支持故障轉(zhuǎn)移和冗余的增強(qiáng),那么你可以使用Arbiter。Arbiter是一種特殊的Replica Set成員,它不儲存任何用戶數(shù)據(jù)(這就意味著他們可以使用非常小的服務(wù)器)。

總結(jié):只可以使用偶數(shù)個Replica Set成員,但是可以使用Arbitter來削減成本。

沒有join語句

MongoDB不支持join:如果你想在多個Collection中檢索數(shù)據(jù),那么你必須做多次的查詢。

如果你覺得你手動做的查詢太多了,你可以重設(shè)計(jì)你的數(shù)據(jù)模型來減少整體查詢的數(shù)量。MongoDB中的文件可以是任何類型,那么可以輕易的對數(shù)據(jù)進(jìn)行De-Normalize。這樣就可以讓它始終和你的應(yīng)用程序保持一致。

總結(jié):沒有join不妨看一下如何設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)模型。

Journaling

MongoDB使用內(nèi)存映射文件并且每60秒向磁盤輸出一次通知,這就意味著最大程度上你可能丟失60秒加上向硬盤輸出通知這段時間內(nèi)所有的數(shù)據(jù)。

為了避免數(shù)據(jù)丟失,MongoDB從2.0版本起就添加了Journaling(默認(rèn)情況下開啟)。Journaling把時間從60秒更改為100ms。如果數(shù)據(jù)庫意外的停機(jī),在啟動之前它將會被重啟用以確保數(shù)據(jù)庫處于一致狀態(tài)。這也是MongoDB與傳統(tǒng)數(shù)據(jù)庫最接近的地方。

當(dāng)然Journaling會輕微的影響到性能,大約5%。但是對于多數(shù)人來說額外帶來的安全性肯定是物有所值的。

總結(jié):最好別關(guān)閉Journaling。

默認(rèn)情況下沒有身份認(rèn)證

MongoDB在默認(rèn)設(shè)置下并沒有身份驗(yàn)證。MongoDB會認(rèn)為自身處在一個擁有防火墻的信任網(wǎng)絡(luò)。但是這不代表它不支持身份驗(yàn)證,如果需要可以輕松的開啟。

總結(jié):MongoDB的安全性可以通過使用防火墻和綁定正確的接口來保證,當(dāng)然也可以開啟身份驗(yàn)證。

Replica Set中損失的數(shù)據(jù)

使用Replica Set是提高系統(tǒng)可靠性及易維護(hù)的有效途徑。這樣的話,弄清節(jié)點(diǎn)間故障的發(fā)生及轉(zhuǎn)移機(jī)制就變得至關(guān)重要。

Replica Set中的成員一般通過oplog(記錄了數(shù)據(jù)中發(fā)生增、刪、改等操作的列表)來傳遞信息,當(dāng)其中一個成員發(fā)生變化修改oplog后,其他的成員也將按照oplog來執(zhí)行。如果你負(fù)責(zé)處理新數(shù)據(jù)的節(jié)點(diǎn)在出錯后恢復(fù)運(yùn)行,它將會被回滾至最后一個oplog公共點(diǎn)。然而在這個過程中:丟失的“新數(shù)據(jù)”已經(jīng)被MongoDB從數(shù)據(jù)庫中轉(zhuǎn)移并存放到你的數(shù)據(jù)目錄‘rollback’里面等待被手動恢復(fù)。如果你不知道這個特性,你可能就會認(rèn)為數(shù)據(jù)被弄丟了。所以每當(dāng)有成員從出錯中恢復(fù)過來都必須要檢查這個目錄。而通過MongoDB發(fā)布的標(biāo)準(zhǔn)工具來恢復(fù)這些數(shù)據(jù)是件很容易的事情。查看官方文檔以了解更多相關(guān)信息。

總結(jié):故障恢復(fù)中丟失的數(shù)據(jù)將會出現(xiàn)在rollback目錄里面。

分片太遲

分片是把數(shù)據(jù)拆分到多臺機(jī)器上,通常被用于Replica Set運(yùn)行過慢時進(jìn)行性能提升。MongoDB支持自動分片。然而如果你讓分片進(jìn)行太遲的話,問題就產(chǎn)生了。因?yàn)閷?shù)據(jù)的拆分和塊的遷移需要時間和資源,所以如果當(dāng)服務(wù)器資源基本上耗盡時很可能會導(dǎo)致在你最需要分片時卻分不了片。

解決的方法很簡單,使用一個工具對MongoDB進(jìn)行監(jiān)視。對你的服務(wù)器做最準(zhǔn)確的評估,并且在占整體性能的80%前進(jìn)行分片。類似的監(jiān)視工具有:MMS、Munin(+Mongo Plugin)和CloudWatch。

如果你確定從一開始就要分片處理,那么更好的建議會是選用AWS或者類似的云服務(wù)進(jìn)行分片。而在小型服務(wù)器上,關(guān)機(jī)或者是調(diào)整機(jī)器明顯比轉(zhuǎn)移成千上萬條數(shù)據(jù)塊來的更直接一點(diǎn)。

總結(jié):盡早的分片才能有效的避免問題。

不可以更改文件中的shard key

對于分片設(shè)置,shard key是MongoDB用來識別分塊對應(yīng)文件的憑證。當(dāng)你插入一個文件后,你就不可以對文件的shard key進(jìn)行更改。而這里的解決方案是把文檔刪除然后重新建立,這樣就允許把它指定到對應(yīng)的分塊了。

總結(jié):shard key不可以修改,必要的時候可以刪除文件重新建立。

不可以對256G以上的Collection進(jìn)行分片

重新回到分片太遲的問題上來 —— MongoDB不允許對增長到256G以上的Collection進(jìn)行分片,之前版本的設(shè)置還沒有256G。這個限定在以后肯定會被移除,而這里也沒有更好的解決方案。只能進(jìn)行重編譯或者把大小控制在256G以下。

總結(jié):在Collection達(dá)到256G以前進(jìn)行分片。

唯一性索引與共享

索引的唯一性約束只能通過shard key來保證。

選擇了錯誤的shard key

MongDB需要你選擇一個shard key來將數(shù)據(jù)分片。如果選擇了錯誤的shard key,更改起來將是件很麻煩的事情。

總結(jié):選擇shard key之前先閱讀這個文檔。

與MongoDB通信的未經(jīng)加密

與MongoDB的連接默認(rèn)情況下都是非加密的,這就意味你的數(shù)據(jù)可能被第三方記錄和使用。如果你的MongoDB是在自己的非廣域網(wǎng)下使用,那么這種情況是不可能發(fā)生的。

然而如果你是通過公網(wǎng)訪問MongoDB的話,那么你肯定會希望你的通信是經(jīng)過加密的。公版的MongoDB是不支持SSL的。慶幸的是可以非常簡單的定制自己的版本。10gen的用戶則擁有特別定制的加密版本。幸運(yùn)的是大部分的官方驅(qū)動都支持SSL,但是小麻煩同樣是不可避免的。點(diǎn)擊查看文檔。

總結(jié):當(dāng)用公網(wǎng)連接時,要注意和MongoDB的通信是未加密的。

事務(wù)

不像MySQL這些支持多行數(shù)據(jù)原子操作的傳統(tǒng)數(shù)據(jù)庫,MongoDB只支持單文件的原子性修改。解決這個問題的方法之一是在應(yīng)用程序中使用異步提交的方式;另一個是:建立一個以上的數(shù)據(jù)存儲。雖然第一種方法并不適用于所有情況,但是很顯然比第二個來的要好。

總結(jié):不支持對多文件事務(wù)。

日志預(yù)分配慢

MongDB可能會告訴你已經(jīng)準(zhǔn)備就緒,但事實(shí)上它還在對日志進(jìn)行分配。如果你選擇了讓機(jī)器自行分配,而恰巧你的文件系統(tǒng)和磁盤速度又很慢,那么煩惱的事情發(fā)生了。通常情況下這不會成為問題,但是一旦出現(xiàn)了可以使用undocumented flag –nopreallocj來關(guān)閉預(yù)分配。

總結(jié):如果機(jī)器文件系統(tǒng)和磁盤過慢的話,那么日志的預(yù)分配也可能很慢。

NUMA + Linux +MongoDB

Linux、NUMA與MongoDB遇到一起的時候運(yùn)行總是不會很好。如果你在NUMA硬件上運(yùn)行MongoDB的話,這里建議是直接關(guān)掉。因?yàn)楦鞣N奇怪的問題隨之而來,比如:速度會階段性或者在CPU占用率很高的時候大幅下降。

總結(jié):禁NUMA。

Linux里面的進(jìn)程限制

如果你在MongoDB未滿載的時候出過SEGMENTATION FAULT錯誤,你可能會發(fā)現(xiàn)這是因?yàn)槭褂昧诉^低或者默認(rèn)的打開文件或用戶進(jìn)程限制。10gen建議把限制設(shè)置在4K+,然而設(shè)置的大小該取決具體情況。閱讀ulimit了解更多。

總結(jié):長久的為MongoDB在Linux加上軟或硬的打開文件或用戶進(jìn)程限制。

責(zé)任編輯:王程程 來源: rsmith
相關(guān)推薦

2013-09-09 12:35:54

MongoDB

2013-04-12 10:17:56

重構(gòu)業(yè)務(wù)邏輯

2014-09-01 15:15:33

MSN微軟

2018-03-29 09:54:16

區(qū)塊鏈密碼學(xué)雙重支付

2024-01-25 16:50:37

2020-09-07 19:40:06

監(jiān)聽Facebook手機(jī)

2023-07-03 07:21:23

軟件敏捷編碼

2020-02-12 22:20:39

人臉識別人工智能AI

2012-04-20 11:06:26

開發(fā)創(chuàng)新

2025-03-13 13:29:32

2016-02-26 14:49:24

AJAXWEB應(yīng)用技術(shù)

2017-04-20 09:23:25

搜狗智能運(yùn)維代替

2014-11-05 10:55:48

云計(jì)算云技術(shù)

2013-07-05 10:40:55

管理者技術(shù)

2020-09-07 14:00:23

騰訊微博微信互聯(lián)網(wǎng)

2024-01-16 09:00:00

人工智能智能巡檢物聯(lián)網(wǎng)

2022-03-16 11:03:40

數(shù)據(jù)庫元數(shù)據(jù)數(shù)據(jù)引擎

2021-01-11 13:35:14

996職場互聯(lián)網(wǎng)

2021-02-08 11:00:09

AI
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

免费一区视频| 国产视频一区二区三区四区五区| jizz18欧美18| 欧美日韩在线视频首页| 久久亚洲午夜电影| 一区二区久久精品66国产精品| 中文一区一区三区免费在线观看| 亚洲国产精品久久| 少妇黄色一级片| 怡红院av在线| 久久久亚洲欧洲日产国码αv| 国产日韩欧美夫妻视频在线观看 | 日本午夜精品久久久| 欧美性猛交xxxx偷拍洗澡| 制服诱惑一区| 深夜福利视频在线免费观看| 精品伊人久久久久7777人| 韩国一区二区电影| 青花影视在线观看免费高清| 色爱av综合网| 日韩精品一区二区三区在线播放 | 成人午夜短视频| 国产精品永久在线| 91精品国产综合久久久蜜臀九色| 亚洲美女视频| 中文字幕日韩在线视频| 538国产视频| 麻豆精品一区| 欧美人与性动xxxx| 日本在线精品| 你懂的网站在线| 日本女优一区| 日韩精品极品视频| 久久无码人妻一区二区三区| 日韩国产网站| 五月综合激情日本mⅴ| 男女激烈动态图| 色综合久久影院| 国产日韩欧美在线一区| 久久久神马电影| 色窝窝无码一区二区三区| 国产麻豆欧美日韩一区| 国产美女精品视频免费观看| 亚洲av中文无码乱人伦在线视色| 999亚洲国产精| 高清在线视频日韩欧美| 久久久久亚洲av片无码下载蜜桃| 永久亚洲成a人片777777| 色妞久久福利网| 长河落日免费高清观看| 成人免费在线观看av| 亚洲午夜女主播在线直播| 亚欧洲乱码视频| 在线成人动漫av| 精品亚洲国产成av人片传媒| 国产一级二级在线观看| 秋霞影院一区二区三区| 亚洲精品丝袜日韩| www.av欧美| 日韩久久精品| 北条麻妃一区二区三区中文字幕| 日本免费网站视频| 99视频精品视频高清免费| 俺也去精品视频在线观看| 国产传媒免费在线观看| 中文字幕日韩欧美精品高清在线| 久久91亚洲人成电影网站| 麻豆亚洲av熟女国产一区二| 黄色另类av| 69av成年福利视频| 神马久久久久久久| 琪琪一区二区三区| 91视频-88av| 乱精品一区字幕二区| 99久久精品国产一区| 欧美日韩在线精品一区二区三区| 成人免费黄色网页| 亚洲婷婷国产精品电影人久久| 亚洲国产精品影视| 密臀av在线| 欧美午夜精品在线| 日本肉体xxxx裸体xxx免费| 亚洲资源在线| 亚洲电影在线看| 日本成人午夜影院| 综合天天久久| 日本亚洲欧洲色α| 一级特黄aaa| 成人高清在线视频| 欧美在线视频一区二区三区| 看黄网站在线| 精品久久久视频| 中文字幕亚洲欧洲| 国产亚洲成av人片在线观黄桃| 亚洲欧洲国产伦综合| 91人妻一区二区三区蜜臀| 亚洲性感美女99在线| 国产精品激情av在线播放| 91午夜交换视频| 91麻豆蜜桃一区二区三区| 亚洲一区二区三区免费观看| 大黄网站在线观看| 欧美日韩久久久一区| 欧产日产国产精品98| 日韩欧美中文| 4388成人网| 成人av蜜桃| 亚洲色婷婷久久精品av蜜桃| 色网在线观看| 色婷婷国产精品久久包臀| 欧美日韩久久婷婷| 伊人春色之综合网| 欧美尺度大的性做爰视频| 你懂的国产在线| 国产成人小视频| 午夜精品视频在线观看一区二区| brazzers在线观看| 7777精品伊人久久久大香线蕉的 | 国产精选一区| 欧美第一页在线| 亚洲一区在线观| 久久新电视剧免费观看| 激情六月天婷婷| 国产第一亚洲| 一区二区三区国产在线观看| 亚欧视频在线观看| 国产成人精品一区二区三区网站观看| 色之综合天天综合色天天棕色| 黄色视屏在线免费观看| 日韩女优av电影在线观看| 中国1级黄色片| 狂野欧美一区| 欧美成人综合一区| 忘忧草在线日韩www影院| 精品国产乱码久久久久久免费| 992在线观看| 免费人成黄页网站在线一区二区| 久久久精品动漫| 51av在线| 日韩av网址在线| 精品一级少妇久久久久久久| www天堂在线| 九九热在线免费观看| 国产无码精品在线播放| 手机av在线免费观看| 中文字幕欧美日韩一区| 免费无遮挡无码永久视频| 综合欧美亚洲| 欧美黑人xxx| 国产99999| 亚洲影视在线观看| 2025中文字幕| 亚洲激情综合| 久久精品午夜一区二区福利| 色在线中文字幕| 精品网站999www| 青青草视频在线观看免费| 国产亚洲美州欧州综合国| 美女黄色片视频| 日韩精品中文字幕第1页| 国产日韩中文在线| 国产激情在线| 精品久久久久久久久久久久久久久| 久久久久久久久久网站| 成人一道本在线| 国产午夜伦鲁鲁| 国产精品片aa在线观看| 国产精品第1页| 黄色在线视频网站| 精品日产卡一卡二卡麻豆| 日韩手机在线观看| 国产欧美精品一区二区三区四区 | 日韩视频在线你懂得| 免费在线观看av网址| 99精品视频中文字幕| 中文字幕无码不卡免费视频| 久久性感美女视频| av成人观看| 丝袜老师在线| 日韩在线播放视频| 成人午夜免费福利| 91久久香蕉国产日韩欧美9色| 久久日免费视频| 国产成人精品一区二| 欧美日韩激情视频在线观看 | 成年人黄色在线观看| 在线一区二区三区视频| 欧美一区视频在线| 免费大片黄在线观看视频网站| 精品日韩一区二区| 欧美另类高清videos的特点| 亚洲精品乱码久久久久久日本蜜臀| 欧美无人区码suv| 国内成人免费视频| 日韩小视频在线播放| 日韩一区二区中文| 好看的日韩精品| 六九午夜精品视频| 97香蕉久久超级碰碰高清版| 97人人在线| 日韩成人av网址| 国产又粗又长又大视频| 富二代精品短视频| 国产午夜手机精彩视频| 久久久久国产精品人| aaaaa黄色片| 免费成人性网站| 欧美激情 国产精品| 国产精品久久天天影视| 麻豆久久久9性大片| 视频亚洲一区二区| 国产精品久久国产精品99gif| 蜜臀av在线播放| 色系列之999| 黄色电影免费在线看| 精品国产乱码久久久久久1区2区| 亚洲天堂网视频| 色综合久久综合| 黄色小视频在线免费看| 亚洲三级在线免费| 久久久精品成人| 91网站视频在线观看| 亚洲区 欧美区| 九色综合狠狠综合久久| 免费裸体美女网站| 一区二区三区福利| 成人短视频在线观看免费| 欧美激情理论| 天堂社区 天堂综合网 天堂资源最新版| 96sao在线精品免费视频| 91免费在线视频网站| 精品国产欧美日韩一区二区三区| 欧美一区二三区| 美女网站在线看| 性欧美在线看片a免费观看 | 亚洲国产综合人成综合网站| 91高清免费观看| 成人欧美一区二区三区1314| 国产调教在线观看| 欧美国产禁国产网站cc| 久久国产柳州莫菁门| 国产亚洲精品bt天堂精选| 性欧美丰满熟妇xxxx性仙踪林| av综合在线播放| 中文字幕一区二区人妻电影丶| 成人综合婷婷国产精品久久免费| 337p日本欧洲亚洲大胆张筱雨| 国产一区二区不卡老阿姨| 日本黄色的视频| 久久99精品久久久久久动态图| 天天干天天av| 激情久久五月天| 99精品视频免费版的特色功能| 国产精品一区二区三区乱码| 无码人妻aⅴ一区二区三区玉蒲团| 国产福利精品一区二区| 亚洲AV成人精品| 成人动漫一区二区在线| 先锋资源av在线| 久久久久久久久99精品| 三年中国中文观看免费播放| 中文字幕一区二区三区精华液| 四虎影院中文字幕| 一区二区三区中文字幕精品精品| 精品久久免费视频| 一本色道久久综合亚洲91| 久久国产香蕉视频| 欧美精品日韩一区| www.黄色一片| 亚洲国产99精品国自产| 青草久久伊人| 中文字幕亚洲无线码a| 操你啦在线视频| 97在线观看免费高清| 日韩中文在线播放| 亚洲xxxxx性| 免费看久久久| 亚洲精品中文综合第一页| 牛夜精品久久久久久久99黑人| 久激情内射婷内射蜜桃| 手机精品视频在线观看| 国产高清999| 成人免费观看视频| av电影在线不卡| 亚洲最快最全在线视频| 午夜影院在线看| 欧美日韩国产小视频| 亚洲av无码乱码国产精品| 亚洲国产成人91精品| 成人av毛片| 欧美丰满少妇xxxxx| 韩国成人漫画| 亚洲综合精品一区二区| 亚洲欧美日本伦理| 久久国产精品免费观看| 免费在线亚洲欧美| 在线免费观看av网| 91视视频在线观看入口直接观看www | 91精品国产自产精品男人的天堂| 欧美高清视频一区| 一本到12不卡视频在线dvd| 春日野结衣av| 国产精品自在在线| av网站免费在线看| 亚洲最新在线观看| 在线观看免费高清视频| 精品国产髙清在线看国产毛片| 成年人在线视频免费观看| 国内揄拍国内精品| а天堂中文最新一区二区三区| 久久久av水蜜桃| 狠狠综合久久| 玖玖爱视频在线| 久久久精品免费网站| 国产小视频在线看| 欧美日韩aaaaaa| 久久久久国产精品嫩草影院| 欧美日韩成人在线观看| 欧美日韩在线精品一区二区三区激情综合| 国产精品播放| 综合日韩在线| 在线免费看v片| 日本一区二区综合亚洲| 日本人视频jizz页码69| 无码h黄肉3d动漫在线观看| 亚洲专区一区| 欧美激情久久久久| 午夜激情影院在线观看| 在线日韩视频| 国产精欧美一区二区三区白种人| 久久这里只有精品视频网| 18岁成人毛片| 欧美精品丝袜久久久中文字幕| 黄色软件在线| 欧美一级电影久久| 黄色成人美女网站| 97超碰国产精品| 日本视频免费一区| 成人a免费视频| 懂色av一区二区| 国产午夜精品视频一区二区三区| 蜜桃视频一区二区| 公肉吊粗大爽色翁浪妇视频| 欧美日韩国产页| 天天操天天舔天天干| 高清欧美性猛交xxxx黑人猛交| 91蝌蚪精品视频| 国产精品久久久久久久乖乖| 国产福利精品导航| 久久精品国产亚洲av香蕉 | 亚洲午夜精品久久久久久人妖| 成人免费毛片a| 日韩手机在线观看| 精品爽片免费看久久| 日本不卡免费高清视频在线| 久久av一区二区三区漫画| 妖精视频成人观看www| av鲁丝一区鲁丝二区鲁丝三区| 色综合天天综合狠狠| 每日更新av在线播放| 国产精品九九九| 国产精品精品国产一区二区| 日韩av片免费观看| 一区二区三区精品久久久| 黄色片网站免费在线观看| 91成人在线观看国产| 精品国产午夜| 777一区二区| 亚洲综合男人的天堂| 无码国产精品96久久久久| 秋霞成人午夜鲁丝一区二区三区| 激情五月综合网| 在线免费黄色网| 亚洲无线码一区二区三区| 香蕉视频网站在线| 国产成人精品一区二区| 欧美国产一级| 中文字幕一二三区| 天天色综合成人网| 成人精品福利| 91丨九色丨国产| 蜜乳av另类精品一区二区| 亚洲激情图片网| 精品日本一线二线三线不卡| 国产精欧美一区二区三区蓝颜男同| 日韩国产伦理| 国产精品亚洲综合一区在线观看| 国产无码精品久久久| 永久免费看mv网站入口亚洲| 久久免费福利| 日本精品一区二区三区四区| 中文字幕视频一区二区三区久| 亚洲成人中文字幕在线| 欧美中文在线观看| 911精品美国片911久久久| 亚洲欧美日本一区| 欧美日韩久久久一区| 碰碰在线视频| 成人免费在线一区二区三区| 91麻豆成人精品国产|