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

系統性能排查方略及工商銀行MySQL性能管控

數據庫 MySQL
如果大家了解一些方法論的話,應該聽過兩個原則:一個是海恩法則,強調量變引發質變;另一個是老生常談的墨菲定律,強調會出錯的事總會出錯。

一、系統性能問題五大特性

二、系統性能排查方略

三、MySQL開發規范和常見調優策略

四、MySQL性能管控體系

五、未來展望

一、系統性能問題五大特性

圖片

如果大家了解一些方法論的話,應該聽過兩個原則:一個是海恩法則,強調量變引發質變;另一個是老生常談的墨菲定律,強調會出錯的事總會出錯。針對這兩個原則,我總結了系統性能問題的五大特性。

1)系統響應慢

不論負載情況如何,系統應用程序一直特別慢,響應時間長。

2)時間序列日益緩慢

負載穩定,但系統隨著時間推進越來越慢,到達某個閾值后,系統可能會被鎖定或因大量錯誤出現而崩潰。

3)突發混亂

系統穩定運行,在某一時刻突然出現大量錯誤。

4)局部功能異常

用戶訪問部分頁面異常,上圖右下角圖片是用F12對訪問谷歌頁面進行的截圖,從中可以看出,我們訪問谷歌時一直超時,無法訪問。

5)隨負載變化越來越慢

用戶量增加時,系統明顯變慢,用戶離開系統后,系統恢復原狀。上圖左下角的圖片展示了CPU的使用情況,其從100%負載恢復到常態化,后續隨著用戶增加又逐漸漲至100%負載。

二、系統性能排查方略

1、系統性能排查方略方法論

圖片

系統性能排查方略可總結為以下兩點:?

1)積極溝通,減小影響

  • 利用5W1H原則了解問題現象,即什么問題、在什么時間、什么地點、如何發生、何人處理。同時還要收集現場信息,包括常見的日志信息、流量信息等,盡量做到全面排查。
  • 安撫客戶,減小客戶影響。一件小事可能會由于客戶恐慌性的增長釀成大事故。
  • 基于歷史經驗緊急應急。

2)大膽推敲,合理論證

  • 根據異常信息要大膽推斷、合理論證,切忌“我推斷就是這樣,但我就不證明”;
  • 進行全鏈路考量,切忌單點揣測,比如直接認定數據庫有問題,但是經分析來看,數據庫負載實際上沒問題,而是網絡問題或中間件問題;
  • 問題解決必須包含臨時方案和最終方案。用臨時方案以最快的方式消除影響,然后針對問題做最終方案,避免后續類似問題帶來的隱患。

為此,我通過魚骨圖進一步描述問題的排查方式:

1)消除影響

首先需要消除對客戶的影響,其次要消除對系統的影響,可以通過歷史經驗緊急應急或其他方式幫助客戶或系統避開問題。

2)收集現場

這一步強調日志的完備,同時我們需要知道發生問題時的問題數據和系統數據,才可通過數據進行重演。

3)明確問題范圍

判斷發生的是個別交易問題還是普遍性問題。如果是個別交易問題,我們可以很快定位交易當時做過哪些改變;如果是普遍性問題,我們要判斷哪些客戶、客流受到影響,以及這一問題是否會對其他方面造成影響。

4)問題分析

問題分析包括兩個方面,一方面是系統級鏈路分析,從最早的端到端的鏈路進行統一排查;另一方面是交易級鏈路分析,從交易進來后經過中間件到數據庫返回,對整個交易級鏈路進行分析。

5)問題解決方案

經過之前的一系列步驟,最終我們就可以制定問題的解決方案。在制定解決方案時,一般會進行數據修復和程序修復,在環境中同步驗證,并將修改后的部分歸并至后續版本中,避免導致類似問題重復發生。

6) 問題總結

這一步主要是針對問題進行復盤,從中發現優化點,并從問題的處理方式中總結經驗教訓,然后進行一些橫向排查,沉淀為相關經驗。

下面向大家講述性能問題排查,其中包括兩大方面:系統環境和運行環境。?

圖片

1)系統環境

我們原則上通過APM工具監控系統環境。業界已經有些很好的開源監控工具,比如Prometheus、Zabbix等,可以利用這些工具監測CPU負荷、lO負荷、內存負荷以及網絡負荷。

2)運行環境

可以將運行環境的問題大致分為以下三類:

① 數據庫

  • 日志信息

對于MySQL,首先查看其錯誤日志,通過mysql.err直接查看當時到底有什么問題;如果交易比較緩慢,可以從慢SQL日志(一般是slow-queries.log)中查看,原則上大于10秒的交易都會在這里體現;接下來看事務日志,通過binlog查看當時交易的情況,如果是備庫重演的一些問題,可以看主備中繼日志,通過relaylog查看備庫重演的狀態。

對于Oracle也大體相似,可以通過監聽日志listener.log、lsnrctl status查看監聽器的狀態,Oracle中有一個報警日志,通過alert.log可以查看當時發生的事件。我們還可以進一步打AWR報告和ASH報告,對數據庫進行監控,這一點MySQL不如Oracle。除此之外,Oracle也提供了一些歷史快照信息表,比如dba_hist_sqlstat和 dba_hist_snapshot,可以通過這兩張快照表獲取需要的任意快照時間的處理信息。最后,可以通過會話信息,查看當前會話有哪些中間件正在訪問,以及整個會話的狀態。

  • 性能分析

進行性能分析時,我們可以查看執行計劃。對于MySQL,我們可以通過explain語句看當時的執行計劃,到底有沒有走索引,索引走得好不好。對于Oracle,我們可以通過v$sql_plan和dba_hist _sql_plan查看執行計劃變更的原因,針對執行計劃對索引進行重建。除此之外,我們還要對死鎖進行分析,并處理等待事件。

② 中間件

對于中間件,例如業界使用較多的WAS、Liberty、Tomcat以及國產的東方通等,我們可以查看它的一些線程信息。這里建議大家打出3~5個javacore,一般是1分鐘打一個,這樣可以通過IBM的jca4611.jar工具對比分析問題出于哪個線程,或者線程卡在何種情況之下。

如果涉及到OOM(內存溢出),可以打出heapdump的信息,再通過IBM的ha457.jar工具進行分析。

我們可以通過GC信息看是否因為服務器full gc導致系統持續夯住,如果是,可以對vm信息進行調優。除此之外,中間件還會打一些日志信息,可以從中發現當時發生的問題。最后可以監控一些中間件的資源信息,包括數據庫連接池、線程池和一些web容器。

③ 應用程序

若發現數據庫和中間件都沒有問題,我們再看應用程序。

對于前臺來說,我們看是不是因為它在前臺做了緩存,沒有實時刷新,因此導致新請求獲得老交易,最終出現問題。除此之外可以看請求連接數,瀏覽器的請求連接數實際上是有限的,請求連接數過大也會導致應用程序出問題。最后可以看一下是否因為資源過大導致網絡傳輸量較大,這種問題可以通過兩種方式解決,一種是資源壓縮,另一種是將資源部署在CDN上。

對于邏輯層來說,我們可以看它有沒有資源釋放,包括數據庫連接、文件讀寫、socket、緩存等。然后可以看事務問題,比如事務長時間沒有結束,這樣會卡死很多線程信息,循環處理數據庫也會導致事務的持續時間較長。最后可以看多線程信息中是否包含鎖等待,是否存在數據污染。

綜上所述,系統性能排查有四個關鍵點:查看完備的日志、利用良好的工具、執行計劃和關注邏輯問題。

接下來會對java中間件和數據庫性能兩部分進行詳細分析:

2、java中間件分析

圖片

1)通過jca分析javacore

我對比了4個javacore文件,發現大部分問題集中在無法獲取連接池,即連接池都已經被占滿且長時間沒有釋放,這時可以結合連接池情況快速定位問題。

2)分析oom對象

對于oom對象,上圖可以看出有一個情況是BankFunctionTypePool中,oom大約存了1G空間,換言之,已直接將jvm內存耗盡。這種情況下,一般建議heapdump加上javacore共同做分析,這樣可以快速定位問題。

3、數據庫相關問題分析

針對數據庫方面的問題,有如下分析流程。

圖片

一般出現問題場景后,首先通過日志分析判斷是不是數據庫無法連接。

如果數據庫無法連接,就檢查監聽狀態。如果是Oracle,listener.log并沒有狀態的日志記錄,可以檢查lsnrctl status,然后配置TNS,啟動監聽器,確保數據庫正常訪問。如果是MySQL,可以檢查mysql.err文件,發現其中有一個access denied報錯,這種情況下我們做好訪問授權并確認防火墻,之后數據庫就可以正常訪問。

如果數據庫可以連接,但是數據庫執行時間過長,這種情況下應該按照以下方法解決。

如果是Oracle,可以打印問題時刻的AWR報告,定位問題語句(一般關注Logons、Top 5 events、SQL order by Elapsed time等),然后處理問題。如需進一步查勘,可以打印ASH報告,查看歷史同期問題引進的變化情況,從而快速定位一些問題。如果是MySQL,一般檢查mysql.err的錯誤日志,然后檢查slow-queries.log,如需進一步查勘,可以把performance_schema.events _statements_summary_by_digest表中的數據提取出來進行進一步查勘。

一般來說,數據庫相關問題可分為以下4種:

1)如果有死鎖,需要調整業務邏輯順序,進行壓測,然后驗證結束。

2)如果沒有死鎖,只是執行計劃有問題,例如出現一個全表掃,則在上面增加合適的索引處理。

3)如果有索引,需要判斷它的區分度:如果區分度高并且數據變動頻繁,需要更新統計信息;如果區分度低,就決定索引是否合適,如果不合適就重建索引,選擇合適的索引進行處理。

4)最后需要看數據量的大小,如果超過了規范的閾值,就要進行分庫分表以及分區策略。

我們將邏輯調整后,再進行相關壓測,當壓測滿意時驗證結束,真正上生產去做處理。

三、MySQL調優策略

1、索引

圖片

1)一般建議大家查看執行計劃,從我目前的分析來看,語句問題占90%以上;

2)命中索引并不等于ok;

3)執行計劃最少應該達到范圍掃,一般建議達到ref程度。

對于MySQL的執行計劃,有 id、select_type、table等列,其中我一般會關注表中的type,它表示訪問類型,決定了MySQL在表中找到所需要行的方式。

我在上圖右方列出了效率情況:

system (無需磁盤IO)> const > eq_ref > ref > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL

接下來查看key還有key_len的值,使用索引的字節長度越短越好,可以根據表定義大概計算出索引的最大可能長度,可用于復合索引的實際使用字段情況。

之后查看rows,一般情況下建議rows值越小越好。其他例如filtered和Extra等也是比較關鍵的信息,這里不再贅述,大家可以參考上圖中的表格。

2、分庫分表

圖片

針對分庫分表,首先要關注一個問題,單表數據量達到多少才需要進行分庫?

阿里手冊中寫到數據量達到500萬進行分庫分表。業界的說法是數據量達到2,000萬進行分庫分表。其源頭是百度的一個DBA進行壓測后,覺得壓到2,000萬沒問題,但是超過2,000萬后性能會出現問題,所以業界流傳的數據量界限是2,000萬。

對于工行來說,MySQL規范建議數據量達3,000萬進行分庫分表。

MySQL索引分為兩種,一種是聚簇索引,即主鍵索引,索引和數據保持在一起。另一種是secondary Index,即輔助索引。

下面簡單介紹一些基礎知識:

  • MySQL的表數據是以頁形式存放,默認16k,innodb_page_size值是16384,除以1024正好是16k。
  • 一般索引為B+樹,葉子存儲數據,非葉子存儲主鍵和指向頁號,一般是12byte,因為使用bigint會占8字節,同時lot0types.h中源代碼有一個指針FIL_PAGE_OFFSET,占了4字節,所以非葉子存儲大約存儲12字節。
  • 數據頁數據僅有15k左右可以存儲數據,因為頁頭、頁目錄和頁尾也會占1k的空間。
  • B+樹扇出率較高,15k除以12byte,它每一個節點可以指向1280個葉子。B+樹一般的建議層級是2~4層,保證查找某一鍵值,最多2~4次IO即可。主鍵索引一般也都在3層左右。
  • 這里還涉及到一個iops知識,因為大家之前用機械硬盤,一般進行一次io操作需要0.01秒,而現在大家普遍常見的SSD都是上萬的ops,MySQL的訪問效率比以前高很多。

針對以上基礎知識,作以下具體說明:

數據量=扇出值^(B+樹層數-1)*葉子節點存儲行數?

例如我們行的行占用大小約為850Byte字節,每個葉子節點可以存儲18行,數據量為2,900萬左右,這也是3,000萬的分庫分表界限的來源。百度行占用大小是1K,每個葉子節點存儲15行數據,數據量為2400萬左右,所以業界才有2,000萬這一說法。阿里同理,經過計算強調數據量超過500萬進行分庫分表。

我們要了解規范數字背后的含義,這樣很多問題就會迎刃而解。除此之外,服務器配置、數據庫版本等因素也會影響查詢速度。

3、鎖問題

圖片

MySQL官方對鎖有較詳細的介紹,一般常見類型是讀鎖和寫鎖。讀鎖包含兩種鎖:記錄鎖和間隙鎖。我們工行用READ-COMMITTED規避間隙鎖。

大家通過mysql.err看日志表現,可以看到有lock_mode X和locks rec but not gap,這是記錄鎖的含義。

這里需要關注以下兩點:

1)鎖競爭

5.7版本中我們從locks、locks_waits表查看鎖,但是8.0版本從infomation_spchema遷至performance_schema。下面舉一個例子進行說明。

事務1是start transaction,更新同一個id=1的值,事務也對它進行更新,50秒后,它會拋一個1205錯誤,直接顯示鎖等待超時。我們建議一個鎖等待超時的時間是5~10秒,從而避免對事務造成較大影響。

2)死鎖檢測

圖片

死鎖檢測本質是哲學家的問題:2個及以上事務,雙方都在等待對方釋放已經持有的資源,最后造成等待循環,形成死鎖。

針對MySQL實現機制,大家看lock0lock.cc,它本質是進行深度優先機制,如果發現環,則認為是一個死鎖,同時回滾undo log量小的事務。

如果大家查看mysql.err,可以發現它第一步有一個deadlock detected,然后事務1會等待另外一個記錄鎖去釋放,事務2也會等待事務1的記錄鎖去釋放,最后因為事務2回滾量較小,所以回滾了事務2。

4、Google Trends & DB-Engines

圖片

MySQL和PostgreSQL這兩個數據庫都很好,但是對于我們國家來說,在Google Trends上MySQL的熱度更高一點,占比大概是89%,PostgreSQL占比是11%左右。我們搜索關鍵字時,最多的是怎么編譯MySQL,這說明我國對源碼的掌握和編譯有較為熱切的需求。從DB-Engines Rank中可以看到MySQL和Oracle一直不相上下,PostgreSQL的熱度也在逐步上升。

四、MySQL性能管控體系

接下來分享我們行的性能管控體系。

圖片

“免費的午餐并不好吃”,隨著MySQL的廣泛應用,大家并不注意開發規范,這會導致慢SQL數量呈爆發式增長。一條慢SQL就可以導致服務不可用,降低用戶幸福指數。我們為此構建管控體系確保開發合規和性能管控。

1、性能管控體系

1)研發流水線 (DevOps) +  QA定期檢查 (線下)

首先我們通過研發流水線(DevOos)和QA定期檢查對整個研發環節進行處理。具體可分為以下環節:

  • 設計環節

在設計環節,我們建立了設計指引,做了一些元數據管理,并設置了能力提升課程提升大家的數據庫使用能力。我們也會推動一些表結構設計工具和元數據管理系統,限定大家局面處理問題,同時我們在這一環節設置了門禁。

  • 開發環節

這一環節我們將一些規范做到自動化,包括SQL注入檢查和SQL寫法的規則。SonarQube有SonarLint插件可以做服務器端的同步,這也有利于在開發環節做性能管控。

  • 測試環節

這一環節我們通過安全測試、性能測試和混沌測試進行性能管控。

  • 發布環節

發布環節會由我們的SRE發布一些態勢感知報告,從技術以及安全等層面對業務提出針對性建議及后續整改措施。

  • 運營環節

在這一環節我們首先會進行慢SQL的監控治理,逐步減少大事務數據;大家可以看到上圖某部門有2個應用,慢SQL數量12個,最大耗時246秒,平均耗時11.414秒。

其次,我們會進行生產案例分析,將相關規則沉淀到知識庫,并將技術組件放入技術模型。除此之外,我們還會做一些AIOps根因分析。

最后我們會進行一些慢SQL的監控和查殺,將大事務提前扼殺,避免其對系統產生影響。

2)性能運維事件響應及溯源

我們會針對每一個問題反省并溯源,看到底是哪一環節出現問題,哪些環節可以進行優化。例如判斷:語句是否因為沒有限定時間范圍的存在需求缺失情況?設計功能是否考慮到大表關聯這種設計缺陷?開發環節是否存在代碼缺陷?

檢查開發環節后我們會檢查測試環節是否有測試用例缺失、測試工具漏報等缺陷,最后檢查發布環節是否有發布標準等缺陷。

3)能力沉淀

最后我們會進行能力沉淀,例如問題閉環追蹤、根因橫向排查,最后沉淀為知識庫、技術組件、度量模型。

2、MySQL開發規范

1)設計原則

圖片

在設計方面,我們有以下三大原則:

① 復用原則

在系統架構時,應考慮將相同或類似作用的信息使用同一套數據結構來存儲。例如:通用參數表、通用字典表。

② 前瞻性原則

設計應基于完整的產品定義和業務要素,而非當前具體功能需求設計表結構;

設計應基于完整的生命周期和業務流程設計表結構。如:事件類表,可以適當增加種類、狀態字段以便后續擴展。

③ 元數據原則

列名應遵循統一的數據標準,即同一類型字段應對應同一個元數據;字段類型和長度應相同,如同一產品線下所有表的機構編號應該對應同一個元數據;

常用的字段應建立應用級的標準定義,指明元數據,確定字段命名。如所有表 的“最新維護時間”字段都統一命名為last_modify_time,這樣能夠確保我們后續在數據庫挖掘以及做知識圖譜時,可以將整個鏈路串起來。

2)典型規范示例

圖片

① 操作:方法論

方法論是萬物之基石,例如每個表我們必須要建立一個主鍵,如果不顯示設置主鍵,會自動生成一個rowid(6 byte)作為隱藏主鍵,且所有表共用此空間,造成性能下降。

② 量化:精細化的理性思維

我們建議掃描命中比原則上應該是100:1,事物大小方面我們行的要求是10萬,業界一般一萬即可。

③ 避坑:規避 MySQL Bug

大表truncate改為drop + create table,這在5.7中效果非常明顯,但是在8.0中公司已經對其進行了修改優化。

針對以上規范,我們要讓開發人員潛移默化地知其然也知其所以然,避免出現一些問題。

3、質量門禁自動化

圖片

我們基于druid,擴展了Sonarqube插件,實現本地檢查規則和云端云同步。

我們之前大概定了27條規則,其中包含了常見的一些錯誤,例如有人在update語句的set關鍵字后面,誤將分隔符逗號(“,”)寫成“and”,導致出現預期之外的結果。

4、大事務查殺

圖片

大事務的相關問題主要有以下幾點:

  • binlog的寫入、傳輸、回放緩慢問題。之前我曾看到一個應用,備庫24小時都未完成回放,萬一主庫出問題,都沒辦法回切,只能等備庫處理完后再回切;
  • 交易寫入堵塞;
  • 在主庫故障博弈的情況下,到底切還是不切?
  • 我們行以及業界都采用了自動查殺方式。
  • 在show engine innodb status中,我們可以進行監控,如果一個事物沒有結束,會提示這個事務更新的記錄數;
  • 超過什么樣的閾值時,我們可以進行自動kill。對于聯機以及批量來說,閾值是不一樣的,所以我們自動執行kill時,必須規避一刀切的問題。

我們當時做過兩步操作,第一步是將交易的聯機庫跟批量庫進行區分。對于聯機庫,超過三秒以上的交易可以進行自動查殺;對于批量庫,通過小范圍試點,然后做到全面推廣。

后續我們應該會將MySQL的主動同步做到不降級,去掉降級時間,但這一點依賴于我們治理完善、大事務不存在的情況。

五、未來展望

圖片

1、全鏈路監控

希望可以做到全套端到端的全鏈路監控,這樣可以快速定位哪個節點出了什么問題。

2、進一步發展AIOps

希望進一步發展AIOps,實現業界所說的1-5-10目標,1分鐘發現,5分鐘處置,10分鐘恢復。

3、掌握源碼

最后希望各位可以掌握一些開源組件的源碼,做到“他山之石,可以攻玉”,了解其中隱藏的bug風險,有利于我們后續對開源組件進行維護。

Q&A

Q1:貴司在MySQL調優過程中,會用到相關輔助工具嗎?老師能簡單分享一下嗎?

A1:沒有用到輔助工具,我們更多還是通過explain直接查看執行計劃,然后進行一些分析。

Q2:MySQL規范已經在貴司普及了嗎?落地一整套規范需要多長時間?

A2:我們大概從17年開始建立MySQL規范,因為我們當時引入MySQL5.7時,必須建立方法論這套基石。我們建立規范后,在SonarQube上建立檢查組件,進而做到門禁,實現規范的落地。在只有規范,沒有落地的情況下,我們很難把控,所以必須要通過硬性方式進行把控。

Q3:貴司是采用什么方式對MySQL進行監控的?

A3:包括兩種層面,第一層面,我們在MyBatis上做了擴展,會對語句進行審核,判斷語句是否有問題。第二層面,對MySQL的performance schema 和Information schema相關表進行監控,查找并處理其中的慢SQL。

Q4:老師,自動查殺的準確率能達到多高?

A4:自動查殺的準確率其實可以達到100%。大事務很容易就可以監控出來,但很多時候不敢查殺,我們把聯機跟批量分離完以后,對聯機大事務查殺的準確率就相當于是100%了。

Q5:老師能推薦個好用的開發工具嗎?比如Workbench?這塊總行有要求嗎?

A5:業界其實有很多工具,例如收費的Navicat、免費的MySQL Workbench等,我一般會用Workbench多一點,因為我們行引入軟件受到管控,必須要進行登記處理。

作者介紹:

魏亞東 :工商銀行軟件開發中心三級經理,資深架構師,杭州研發部數據庫專家團隊牽頭人和開發中心安全團隊成員,負責技術管理、數據庫、安全相關工作;

2009年加入中國工商銀行軟件開發中心,致力于推動管理創新、效能提升,提供全面技術管控,推動自動化實施,實現業務價值的高質量快速交付;同時作為技術專家,為生產安全提供技術支持;負責過教培、預付費等SaaS產品和數字生態基座(組裝式應用程序Composable Applications)等。

責任編輯:武曉燕 來源: dbaplus社群
相關推薦

2022-11-09 07:20:15

MySQL性能管控

2022-07-05 09:48:25

DevSecOps工商銀行安全管控

2012-12-04 14:35:57

微軟TechEd 2012Windows 8

2013-01-29 22:09:43

NEC工商銀行

2015-10-15 09:11:48

SSL卸載應用工商銀行深信服

2009-08-18 14:54:05

中國工商銀行網上銀行安全威瑞信公司

2012-02-21 10:47:19

IBM工商銀行云計算

2023-11-13 16:11:36

2010-01-22 20:57:45

信息化建設合作備忘錄思科

2014-05-23 13:42:55

華為安全

2012-12-20 12:15:40

3G銳捷網絡

2023-06-29 18:12:12

2020-09-29 07:59:22

CPU系統性能

2023-09-19 15:33:35

金融科技軟件開發平臺工程

2023-11-12 22:04:31

2020-09-25 15:06:46

數據庫OceanBase螞蟻

2013-09-25 15:59:07

2009-08-03 11:02:55

2012-02-21 11:28:53

IBM工商銀行云計算白皮書

2017-01-05 12:57:20

藍光光盤庫數據庫網絡安全
點贊
收藏

51CTO技術棧公眾號

欧美亚洲国产视频| 精品免费国产一区二区三区四区| 日本一区二区三区视频免费看| 中国a一片一级一片| 国产精品99久久精品| 日韩视频一区在线观看| 久久综合色视频| 天堂а√在线资源在线| 国产精品1区2区3区| 欧美一区二区.| 制服丨自拍丨欧美丨动漫丨| 成午夜精品一区二区三区软件| 色94色欧美sute亚洲线路一ni| 国产免费色视频| 视频二区在线观看| 精品制服美女久久| 欧美综合激情网| 久久高清内射无套| 国产精品入口久久| 亚洲国产精品成人av| 不卡的在线视频| 午夜影院在线播放| 一区二区视频在线| 先锋影音日韩| 日本1级在线| 国产999精品久久| 91精品久久久久久| 337p粉嫩色噜噜噜大肥臀| 午夜亚洲福利| www.日韩不卡电影av| 人人妻人人藻人人爽欧美一区| 久久亚洲精精品中文字幕| 欧美性色aⅴ视频一区日韩精品| 精品国产一区二区三区无码| 黄色在线视频网站| 国产精品每日更新| 色综合666| 青青草免费观看免费视频在线| 国产成人精品综合在线观看| 91精品国产综合久久久久久蜜臀| 中国a一片一级一片| 久久人人精品| 日韩免费观看高清| 久久久午夜影院| 日韩视频精品在线观看| 欧美激情一级二级| 久久免费视频播放| 欧美视频在线观看| 欧美激情aaaa| 久久精品www人人爽人人| 香蕉国产精品| 久久av在线看| 日本青青草视频| 亚洲色图二区| 久久69精品久久久久久久电影好| 久久高清内射无套| 欧美日本在线| 高清在线视频日韩欧美| 日韩av电影网| 亚洲一区二区毛片| 欧美一性一乱一交一视频| 久久国产精品系列| 欧美中文日韩| 国产成一区二区| 亚洲一区二区三区高清视频| 麻豆精品国产传媒mv男同| 国产精品久久久精品| 日本欧美www| 精品一区二区三区久久久| 成人免费大片黄在线播放| 国产精品探花视频| 国产91色综合久久免费分享| 国产精品一区视频| 你懂的视频在线免费| 国产欧美日本一区二区三区| 一区二区三区国产福利| av大大超碰在线| 午夜日韩在线观看| 超碰97人人射妻| 91精品国产66| 欧美一级搡bbbb搡bbbb| 一边摸一边做爽的视频17国产| 日韩av不卡一区| 在线观看欧美日韩国产| 69夜色精品国产69乱| 亚洲视频日本| 日韩免费在线免费观看| 国产精品久久久久毛片| 成人av网站免费观看| 日本精品视频一区| 成人高清免费在线| 欧美视频在线观看免费网址| 一区二区成人网| 91精品短视频| 尤物99国产成人精品视频| 亚洲 欧美 变态 另类 综合| 日韩午夜高潮| 成人午夜在线视频一区| 人妻中文字幕一区| 国产精品久久影院| 国产精品入口芒果| 久久国内精品| 亚洲福利视频网| 99热6这里只有精品| 精品91在线| 国产精品一二三在线| 粉嫩av一区二区夜夜嗨| 中文字幕 久热精品 视频在线| 香港三级日本三级a视频| 欧美aaa视频| 亚洲精品一区二区三区精华液| 非洲一级黄色片| 激情综合在线| 成人黄色片在线| 九九热视频在线观看| 亚洲激情自拍视频| 中文久久久久久| 女同久久另类99精品国产| 久久精品亚洲热| 日韩 国产 欧美| 成人18精品视频| 亚洲小视频在线播放| 3d欧美精品动漫xxxx无尽| 精品国精品自拍自在线| 天海翼在线视频| 青青草国产精品亚洲专区无| 国产在线精品一区| 亚洲无线看天堂av| 欧美日韩国产综合久久| 高潮毛片无遮挡| 国产精品久久国产愉拍| 国产99在线免费| 动漫一区在线| 欧美精品日韩一区| www.99re6| 另类天堂av| 免费毛片一区二区三区久久久| 青草视频在线免费直播| 欧美一区二区三区电影| 影音先锋男人资源在线观看| 青青草国产精品97视觉盛宴| 日韩精品久久一区| 欧美日韩激情电影| 国产一区二区三区三区在线观看| 亚洲第一网站在线观看| 2021国产精品久久精品| 777久久久精品一区二区三区| 国产精品一区二区三区美女| 欧美精品18videos性欧美| 亚洲第一大网站| 亚洲综合色丁香婷婷六月图片| 手机看片国产精品| 欧美日韩亚洲一区三区| 成人毛片网站| 国产精品一区二区日韩| 亚洲精品电影在线| 天堂在线免费观看视频| 91在线视频官网| 久久精品一区二| 国产欧美一区| 国产日韩欧美自拍| v片在线观看| 精品国产a毛片| 国语对白永久免费| 国产女人aaa级久久久级| 深夜黄色小视频| 偷偷www综合久久久久久久| 亚洲最大成人网色| 17videosex性欧美| 亚洲天天在线日亚洲洲精| 国产情侣免费视频| 亚洲欧美日韩一区二区三区在线观看| 久久久久久久久久久影视| 国内揄拍国内精品久久| 精品免费国产| a屁视频一区二区三区四区| 久久在线免费观看视频| 日本高清视频www| 色婷婷久久久久swag精品| 殴美一级黄色片| 国产成人免费在线观看| 无码aⅴ精品一区二区三区浪潮| 成人激情电影在线| dy888夜精品国产专区| 漫画在线观看av| 视频直播国产精品| 蜜臀av免费在线观看| 一本大道久久精品懂色aⅴ| 五月天婷婷丁香网| 成人深夜视频在线观看| 成人在线看视频| 欧美成人一区二免费视频软件| 狠狠色伊人亚洲综合网站色| 欧美性www| 久久男人av资源网站| caoporn国产精品免费视频| 91精品国产色综合久久不卡电影| 日韩成年人视频| 中文字幕中文字幕一区| 性欧美丰满熟妇xxxx性久久久| 免费观看30秒视频久久| 婷婷无套内射影院| 99精品在线观看| 久久精品中文字幕一区二区三区 | 久久久久久久久亚洲| 日本天堂在线| 精品国产伦理网| 国产精品国产精品国产专区| 色综合久久综合中文综合网| 青青青在线免费观看| 国产日本欧洲亚洲| 亚洲乱妇老熟女爽到高潮的片| 美女视频黄 久久| 国产亚洲欧美在线视频| 国语自产精品视频在线看8查询8| 亚洲精品日韩在线观看| 亚洲精品合集| 国产日韩一区二区三区| 日韩在线视频一区二区三区 | 日韩一级片中文字幕| 夜夜爽夜夜爽精品视频| 国产午夜精品理论片在线| 久久久久久久综合| 15—17女人毛片| 免费看黄色的视频| 国产精品黄色大片| 高h视频在线播放| 欧美军同video69gay| 精品无码国模私拍视频| 日韩在线精品强乱中文字幕| 国产精品视频一区国模私拍| www.超碰在线| 欧美精品videossex88| 八戒八戒神马在线电影| 欧美日高清视频| 2025韩国大尺度电影| 国产成人1区| 欧美成人综合一区| 理论片一区二区在线| 韩日午夜在线资源一区二区| 亚洲精品高潮| 成人自拍偷拍| 懂色av一区二区| 国产精品乱码| 欧美韩一区二区| 久久99精品久久久久久水蜜桃 | 在线观看国产精品网站| jizz国产在线观看| 色狠狠一区二区三区香蕉| 无码人妻aⅴ一区二区三区有奶水| 欧美日韩中文字幕| 丰满少妇xoxoxo视频| 色欧美片视频在线观看在线视频| 国产精品一区无码| 色偷偷88欧美精品久久久| 国产免费一区二区三区四区五区| 91成人免费电影| 影音先锋黄色网址| 欧美放荡的少妇| 亚洲风情第一页| 亚洲精品黄网在线观看| 男人的天堂在线视频| 亚洲性生活视频在线观看| av电影在线网| 操91在线视频| av中文字幕在线观看第一页| 97久久精品人人澡人人爽缅北| 天堂√8在线中文| 国产精品日韩在线| 狂野欧美xxxx韩国少妇| 国产不卡一区二区在线观看| 欧美久久香蕉| 手机在线观看国产精品| 精品国产欧美日韩| 最新视频 - x88av| 亚洲国产高清一区| 欧美亚洲一二三区| 久久精品国产亚洲一区二区三区| 特种兵之深入敌后| 91麻豆成人久久精品二区三区| 国产综合精品久久久久成人av| 亚洲天堂2016| 免费看日韩毛片| 欧美日韩一区二区三区四区| 亚洲乱码国产乱码精品精软件| 精品一区电影国产| 欧美日本一道| 91精品国产自产91精品| 国产精品天堂蜜av在线播放| 春色成人在线视频| 国产欧美日韩精品一区二区三区| 中文字幕色呦呦| 欧美一级久久| 不卡的一区二区| 欧美经典一区二区| 国产精品美女毛片真酒店| 欧美色男人天堂| 香蕉av一区二区三区| 久久精品电影网站| 午夜不卡影院| www.久久爱.cn| 日本一二区不卡| 欧美二区在线视频| 国产盗摄精品一区二区三区在线| 亚洲a v网站| 午夜精品福利一区二区三区av | 18国产免费视频| 日韩成人免费视频| 97影院秋霞午夜在线观看| 日本久久久久久| 久久男人av| 青青草影院在线观看| 日韩va亚洲va欧美va久久| 国产成人精品无码片区在线| 中文字幕视频一区| 免费观看日批视频| 国产婷婷色一区二区三区在线| 中文日韩电影网站| 亚洲av综合色区无码一区爱av| 亚洲欧洲黄色网| 国产传媒av在线| 成人3d动漫一区二区三区91| 欧美高清视频手机在在线| 国产三区在线视频| 成人黄色网址在线观看| 国产精品久久久久久久精| 欧美日韩国产一级片| 国外av在线| 日韩**中文字幕毛片| 日韩精品福利一区二区三区| 成人欧美一区二区三区黑人孕妇| 三级男人添奶爽爽爽视频| 亚洲第一图区| 欧美精品一区在线播放| 国产精品久久亚洲不卡| 欧美一区亚洲二区| 国产欧美日韩一级| 国产999精品| 国产在视频一区二区三区吞精| 精品乱子伦一区二区三区| 国产精品成人一区二区网站软件| 日本网站在线看| 亚洲视频一区在线观看| 91激情在线观看| 亚洲国产欧美一区二区三区久久| 天天干天天色天天爽| 国产三级视频在线播放线观看| 国产一区二区三区网站| 日韩新的三级电影| 日韩中文一区| 青青草原综合久久大伊人精品优势 | 激情文学亚洲色图| 国产精品亲子乱子伦xxxx裸| 中文字幕观看在线| 色婷婷综合久久久久| 国产精品一站二站| 欧美 亚洲 视频| 成人激情动漫在线观看| 可以免费看的av毛片| 亚洲欧美国产精品专区久久| av一区在线| 国产福利片一区二区| 国产精品一二二区| 国产精品30p| 亚洲免费影视第一页| 91国内外精品自在线播放| 色撸撸在线观看| 成人av电影免费观看| 91视频免费网址| 在线观看久久久久久| 国产一区一区| 怡红院av亚洲一区二区三区h| 欧美韩日一区二区三区| 国产成人精品a视频| 66m—66摸成人免费视频| 激情综合网五月| 中文字幕avav| 黑人巨大精品欧美一区二区一视频| 成人免费在线视频网| 亚洲最大av在线| 奶水喷射视频一区| 欧美激情精品久久久久久免费| 精品91自产拍在线观看一区| 欧美特大特白屁股xxxx| 最新黄色av网站| 91美女在线观看| 99国产精品99| 人人澡人人澡人人看欧美| 午夜免费一区| 泷泽萝拉在线播放| 欧美群妇大交群的观看方式| www在线看| 爱爱爱视频网站| 99精品久久免费看蜜臀剧情介绍| 欧美男人天堂网| 久久久久久久久久久人体| 国产探花一区二区| 性活交片大全免费看| 欧美色图免费看| 少妇在线看www|