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

JVM性能優化,Java的伸縮性

開發 后端
很多程序員在解決JVM性能問題的時候,花開了很多時間去調優應用程序級別的性能瓶頸,當你讀完這本系列文章之后你會發現我可能更加系統地看待這類的問題。我說過JVM的自身技術限制了Java企業級應用的伸縮性。首先我們先列舉一些主導因素。

很多程序員在解決JVM性能問題的時候,花開了很多時間去調優應用程序級別的性能瓶頸,當你讀完這本系列文章之后你會發現我可能更加系統地看待這類的問題。我說過JVM的自身技術限制了Java企業級應用的伸縮性。首先我們先列舉一些主導因素。

l  主流的硬件服務器提供了大量的內存

l  分布式系統有大量內存的需求,而且該需求在持續增長

l  一個普通Java應用程序所持有的對空間大概在1GB~4GB,這遠遠低于一個硬件服務器的內存管理能力以及一個分布式應用程序的內存需求量。這被稱之為Java內存墻,如下圖所示(圖中表述Java應用服務器和常規Java應用的內存使用量的演變史)。

圖 1 Java內存墻(1980~2010)

Java內存墻

Java內存墻

這給我們帶來了如下JVM性能課題:

1)    如果分配給應用程序的內存太小,將導致內存不足。JVM 不能及時釋放內存空間給應用程序,最終將引發內存不足,或者JVM完全關閉。所以你必須提供更多的內存給應用程序。

2)    如果給對響應時間敏感的應用增加內存,如果不重啟你的系統或者優化你的應用,Java堆最終會碎片化。當碎片發生時,可能會導致應用中斷100毫秒~100秒,這取決與你的Java應用,Java堆的大小以及其他的JVM調優參數。

關于停頓的討論大部分都集中在平均停頓或者目標停頓,很少涉及到堆壓縮時的最壞停頓時間,在生產環境中堆中每千兆字節的有效數據的都將會發生大約1秒的停頓。

2~4秒的停頓對大多數企業應用來說都是不能接受的,所以盡管實際的Java應用實例可能需要更多的內存空間,但實際只分配2~4GB的內存。在一 些64位系統中帶有很多關于伸縮性的JVM調優項,使得這些系統可以運行16GB乃至20GB的堆空間,并能滿足典型響應時間的SLA。但是這些離現實較 遠,JVM目前的技術無法在進行堆壓縮時避免停頓應用程序。Java應用開發人員苦于處理這兩個為我們大多數人所抱怨的任務。

l  架構/建模在大量的實例池之上,隨之而來的是復雜的監控和管理操作。

l  反復的JVM和應用程序調優以避免“stop the world“引起的停頓。大多數程序員希望停頓不要發生在系統峰值負載期間。我稱之為不可能的目標。

現在讓我們深入一點Java的可伸縮性問題。

過度供給或過度實例化Java部署

為了充分利用內存資源,普通的做法是將Java應用部署在多個應用服務器實例上而不是一個或者少數應用服務器實例上。當一臺Server上運行16 個應用服務器實例可以充分利用所有的內存資源,但如此無法解決的是多實例的監控以及管理所帶來的成本,尤其是當你的應用部署在多個Server上。

另一個問題來了,峰值負載時的內存資源不是每天都需要的,這樣就形成了巨大的浪費。有些情況下,一臺物理機上可能只不是不超過3個“大應用服務器實例”,這樣的部署更加不夠經濟也不夠環保,尤其在非峰值負載期間。

讓我們來比較一下這兩種部署架構,下圖中左邊是多而小的應用服務器實例部署模式,右邊是少而大的應用服務器實例部署模式。兩種模式處理同樣的負載,究竟哪一種部署架構更具經濟性。

圖2 大應用服務器部署場景

jvmperf5-fig2

上圖源自:Azul Systems

如我之前說過的,并發壓縮使得大應用服務器部署模式變得可行,而且可以突破JVM可伸縮性的限制。目前只有Azul的Zing JVM可以提供并發壓縮的技術,另外Zing是Server側的JVM,我們很樂意看到越來越多的開發者在JVM層面去挑戰Java可伸縮性的問題。

由于性能調優仍然是我們解決Java可伸縮性問題的主要手段,我們先來看有哪些主要的調優參數以及通過它們能達到什么樣的效果。

調優參數:一些事例

最著名的調優參數莫過于”-Xmx”了,通過該參數可以指定Java的堆空間大小,實際上可能不同的JVM執行結果不太一樣。

有的JVM包含了內部結構(如編譯器線程,垃圾回收器結構,代碼緩存等等)所需要的內存在“-Xmx”的設定中,而有的則不包含。因此用戶Java進程的大小不一定跟“-Xmx”的設定相吻合。

如果你的應用程序分配對象的速率,對象的生命周期,或者對象的大小超過了JVM內存相關配置,一旦達到最大可使用內存的閾值將會發生內存溢出,用戶進程則會停止。

當你的應用程序糾結于內存的可用性時,最有效的方法就是通過”-Xmx”指定更大的內存去重啟當前應用進程。為了避免頻繁的重啟,大多數企業生產環境都傾向于指定峰值負載時所需要的內存,造成過度配置優化。

提示:生產環境負載的調整

Java開發人員易犯的常見錯誤是在實驗下的做的堆內存設置,在移植到生產環境是忘記重新調整。生產環境和實驗室環境是不一樣的,謹記根據生產環境的負載重新調整堆內存設置。

#p#

分代垃圾回收器調優

還有一些其他的優化選項”-Xns”和”-XX: NewSize”,用來調整年輕代的大小,用來指定堆中專門負責新對象分配的空間大小。

大多數開發者都試圖基于實驗室環境調整年輕代的大小,這意味著在生產負載下存在失敗的風險。一般新生代的大小設置為堆大小的三分之一至二分之一左 右,但這不是一個準則,畢竟實際還要視應用程序邏輯而定。因此最好先調查清楚年輕代到年老代的蛻變率以及年老代對象的大小,在此基礎上(確保年老代的大 小,年老代過小會頻繁促發GC導致內存溢出錯誤)盡可能地調大年輕代的空間。

還有一個與年輕代相關的調優項”-XX:SurvivorRatio”,該選項用來指定年輕代中對象的生命周期,超過指定時長相關對象將被移至年老 代。為了”正確”地設定該值,你需要知道年輕代空間回收的頻率,能夠估算到新對象在應用程序進程中被引用的時長,同時也取決于分配率。

并發垃圾回收調優

針對對停頓敏感的應用,建議使用并發垃圾回收,雖然并行的辦法能夠帶來非常好的吞吐量基準測試分數,但是并行GC不利于縮短響應時間。并發 GC 是目前唯一有效的實現一致性和最少“stop the world”中斷的方法。不同的JVM提供不同的并發GC的設定,Oracle JVM(hotspot)提供”-XX:+UseConcMarkSweepGC”,今后G1將成為Oracle JVM默認的并發垃圾回收器。

性能調優并不是真正的解決辦法

或許你已經注意到上文中在討論如何“正確“地設定調優此參數時,我刻意在”正確“二字上加了雙引號。那是因為就我個人經驗而言一旦涉及到性能參數調 優,就沒有嚴格意義上的正確設定。每一個設定值都是針對特定的場景。考慮到應用場景會發生變化,JVM 性能調整充其量是一個權宜之計。

以堆的設置為例:如果2GB的堆可以應對20萬并發用戶,但是可能不能應付40萬的并發用戶。

我們再以”-XX:SurvivorRatio”為例:當設定符合一個負載持續增長最高至每毫秒10000個交易的場景,當壓力到達每毫秒50000個交易時又會發生什么呢?

大多數企業級應用負載都是動態的,Java語言的動態內存管理以及動態編譯等技術使得Java更加適合企業級應用。我們來看看一下兩個配置清單。

清單1. 應用程序(1)的啟動選項

  1. >java -Xmx12g -XX:MaxPermSize=64M -XX:PermSize=32M -XX:MaxNewSize=2g 
  2.  
  3. -XX:NewSize=1g -XX:SurvivorRatio=16 -XX:+UseParNewGC 
  4.  
  5. -XX:+UseConcMarkSweepGC -XX:MaxTenuringThreshold=0 
  6.  
  7. -XX:CMSInitiatingOccupancyFraction=60 -XX:+CMSParallelRemarkEnabled 
  8.  
  9. -XX:+UseCMSInitiatingOccupancyOnly -XX:ParallelGCThreads=12 
  10.  
  11. -XX:LargePageSizeInBytes=256m … 

清單 2. 應用程序(2)的啟動選項

  1. >java –Xms8g –Xmx8g –Xmn2g -XX:PermSize=64M -XX:MaxPermSize=256M 
  2.  
  3. -XX:-OmitStackTraceInFastThrow -XX:SurvivorRatio=2 -XX:-UseAdaptiveSizePolicy -XX:+UseConcMarkSweepGC 
  4.  
  5. -XX:+CMSConcurrentMTEnabled -XX:+CMSParallelRemarkEnabled -XX:+CMSParallelSurvivorRemarkEnabled 
  6.  
  7. -XX:CMSMaxAbortablePrecleanTime=10000 -XX:+UseCMSInitiatingOccupancyOnly 
  8.  
  9. -XX:CMSInitiatingOccupancyFraction=63 -XX:+UseParNewGC –Xnoclassgc … 

 

兩者的配置區別很大,因為他們是兩個不同應用程序。感覺根據各自的應用特設都做了”正確“的配置與調優。在實驗室環境下都運行良好,但在生產環境中 最終會表現出疲態。清單1由于沒有考慮到動態負載,到了生產環境即表現不良。清單2沒有考慮到應用程序在生產環境中的特性變化。這兩種情況應該歸咎于開發 團隊,但是該歸咎于何處呢?

變通辦法可行嗎?

有些企業通過精確測量交易對象的大小定義極致的對象回收空間并”精簡“其架構來適配該空間。這也許是辦法來削減碎片以應對一整天的交易(在不做堆壓 縮的情況下)。還有一個辦法就是通過程序設計確保對象被引用的時間在一個比較短的時間內從而阻止其在SurvivorRatio時間之后不被遷往年老代而 直接被回收,避免內存壓縮的場景。這兩種辦法都可以,但是對應用開發人員和設計人員有一定的挑戰。

誰保障應用程序的性能?

一個門戶應用可能會在其活動負載峰值點出現故障;一個交易應用可能會在每次市場下跌和上升時無法正常運行;電子商務網站可能會無法應對節假日購物高 峰期。這些都是真實世界的案例基本都是JVM性能參數調優導致的。當產生了經濟損失,開發團隊就會受到責備。也許某些場合下開發團隊應該要受到責備,但是 JVM的提供商又應該負起什么樣兒的責任呢?

首先JVM提供商應該要提供調優參數的優先順序,至少這在短期內還是很有意義的。有一些新的調優選項是針對特定的、 新興的企業應用程序場景。更多的調優選項是為了減輕JVM支持團隊的工作負荷而將性能優化轉嫁到應用開發者身上。但我個人認為這或將導致更加漫長的支持負 荷,一些針對最糟糕場景的調優選項也將被延期,當然不是無限延期。

毋庸置疑JVM的開發團隊也在努力地進行著他們的工作,同時也只有應用實施者才會更加清楚他們應用的特定需求。但是應用的實施者或開發者是無法預測 期動態的負載需求。在過去,JVM提供商也會去分析關于Java的性能與可擴展性問題,哪些是他們能夠解決的。不是提供調優參數,而是直接去優化或創新垃 圾回收的算法。更有趣是我們可以想象一下如果OpenJDK的社區聚集在一起重新考慮Java垃圾回收器將會發生什么!

JVM性能的基準測試

調優參數有時被JVM提供商作為其競爭的工具,因為不同的調優可以改善他們的JVM在可預見的環境中的性能表現,本系列的最后一片文章中將調查這些基準測試來衡量JVM的性能。

JVM開發者的挑戰

真正的企業級可伸縮性需求是要求JVM能夠適應動態靈活的應用負載。這是在特定吞吐量和響應時間內保證持續穩定性能的關鍵。這是JVM開發者才能完成歷史使命,因此是時候號召我們Java開發者社區來迎接真正的Java可伸縮性的挑戰。

  • l  持續調優

對于給定的應用,在一開始需要告知其需要多大的內存,之后的工作都應該有JVM來負責 ,JVM需要適配動態的應用負載和運行場景。

  • l  JVM實例數 vs. 實例的可擴展性

現在的服務器都支持很大的內存,那么為什么JVM實例不能有效地利用它呢?將應用拆分部署許多小的應用服務器實例上,這從經濟和環保角度都是一種浪費。現代的JVM需要跟上硬件和應用的發展潮流。

  • l  真實世界的性能和可伸縮性

企業不需要為其應用的性能需求去做極致的性能調優。JVM提供商和OpenJDK社區需要去解決Java可伸縮性的核心問題以及消除“stop the world“的操作。

結論

如果JVM做了這樣的工作,并且提供了并發壓縮的垃圾回收算法,JVM也不再成為Java可伸縮性的限制因素,Java應用開發者不需要花費痛苦的 時間理解怎樣配置JVM去獲得最佳性能,從而將會有更多的有趣的Java應用層面的創新,而不是無休止的JVM調優。我要挑戰JVM開發人員以及提供商所 需要做的事情來響應甲骨文所提倡的“Make the Java Future“的活動。

關于作者

Eva Andearsson對JVM技術、SOA、云計算和其他企業級中間件解決方案有著10多年的從業經驗。在2001年,她以JRockit JVM開發者的身份加盟了創業公司Appeal Virtual Solutions(即BEA公司的前身)。在垃圾回收領域的研究和算法方面,EVA獲得了兩項專利。此外她還是提出了確定性垃圾回收 (Deterministic Garbage Collection),后來形成了JRockit實時系統(JRockit Real Time)。在技術上,Eva與SUN公司和Intel公司合作密切,涉及到很多將JRockit產品線、WebLogic和Coherence整合的項 目。2009年,Eva加盟了Azul System公,擔任產品經理。負責新的Zing Java平臺的開發工作。最近,她改換門庭,以高級產品經理的身份加盟Cloudera公司,負責管理Cloudera公司Hadoop分布式系統,致力于高擴展性、分布式數據處理框架的開發。

原文鏈接:http://www.javaworld.com/javaworld/jw-03-2013/130301-jvm-performance-optimization-java-scalability.html?page=1

譯文鏈接:http://ifeve.com/jvm%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96%EF%BC%8C-part-5%EF%BC%9Aja

責任編輯:陳四芳 來源: ifeve.com
相關推薦

2016-11-03 13:11:21

phpphp框架

2017-09-07 16:50:47

MySQL性能優化

2010-05-18 17:18:32

IIS服務器

2009-09-16 10:00:14

可伸縮性Web服務

2009-11-11 16:07:09

OSPF路由協議

2009-08-20 10:30:55

可伸縮性系統

2024-09-10 09:52:23

軟件架構伸縮性

2024-04-03 08:58:48

軟件架構隔板

2015-09-17 09:30:50

云架構可伸縮性風險

2010-07-01 14:05:34

SQL Server數

2019-12-17 15:49:44

Java語言字符串

2009-11-13 15:12:54

ADO.NET入門

2019-05-21 21:15:32

架構架構設計性能優化

2025-03-03 09:05:56

2010-06-07 10:39:51

中國超算性能

2023-09-01 08:59:57

2011-11-28 10:50:56

JavaJVM優化

2015-07-28 10:03:19

Java性能優化

2011-07-21 13:51:38

java

2011-07-21 14:15:08

java
點贊
收藏

51CTO技術棧公眾號

欧美一级视频免费| 欧美黑吊大战白妞| 视频在线日韩| 亚洲免费看黄网站| 国产日产精品一区二区三区四区| 可以免费看的av毛片| 精品国产一区二区三区四区 | 亚洲深夜福利视频| 伊人精品视频在线观看| 看黄在线观看| 亚洲免费资源在线播放| 久久影院理伦片| 国产乱码精品一区二区三区精东| 国产欧美日本| 久久久国产成人精品| 亚洲精品乱码久久久久久不卡| 精品久久久网| 日韩欧美在线视频观看| 国产一二三四五| 国产二区视频在线观看| 成人免费毛片片v| 国产日韩在线精品av| 国产无套粉嫩白浆内谢| 99免费精品| 亚洲欧美日韩中文在线| 免费看91视频| 成人动漫视频在线观看| 一本大道av一区二区在线播放| 黄网站色视频免费观看| aaa在线观看| 久久一留热品黄| 精品免费日产一区一区三区免费| 国产又黄又爽视频| 欧美aⅴ一区二区三区视频| 性欧美xxxx| 久久久久人妻一区精品色欧美| 久久五月天小说| 国产一区二区三区视频在线观看| 久久福利小视频| 77成人影视| 日韩欧美一区二区视频| 天天综合天天添夜夜添狠狠添| 欧美激情喷水| 色噜噜狠狠色综合中国| 国产黄色一级网站| www.com.cn成人| 富二代精品短视频| 国产成人无码精品久久久性色| 欧美6一10sex性hd| 一区二区三区在线免费观看 | 亚洲午夜激情在线| 九色91av视频| 精品视频一区二区在线观看| 欧美日韩蜜桃| 午夜精品久久久久久久男人的天堂| 欧产日产国产v| 狠狠色丁香久久综合频道| 欧美成人午夜影院| 九九精品在线观看视频 | 国产女大学生av| av免费不卡国产观看| 午夜精品在线视频一区| 黄色一级视频在线播放| 密臀av在线播放| 色香色香欲天天天影视综合网| 国产xxxxx在线观看| 中文字幕乱码在线播放| 色欧美片视频在线观看| 午夜在线观看av| 免费日韩成人| 欧美一区二区在线视频| 中文字幕99页| 五月天亚洲色图| 伊人激情综合网| 欧美日韩午夜视频| 激情婷婷久久| 国产精品99免视看9| 亚洲一区在线观| 国产麻豆视频一区| 精品欧美一区二区在线观看视频| 黄色免费在线播放| 中文字幕在线观看不卡| 成人黄色片免费| 美女福利一区二区| 欧美挠脚心视频网站| 九色91porny| 亚洲日产av中文字幕| 中日韩美女免费视频网址在线观看| 欧美性猛交xxxx乱大交少妇| 激情av一区| 国产精品av免费在线观看| 国产又黄又猛又爽| 99re这里只有精品视频首页| 色狠狠久久av五月综合|| 成人日日夜夜| 欧美性极品xxxx做受| caoporm在线视频| 日韩一级电影| 久久在线视频在线| 日日摸天天添天天添破| 韩国女主播成人在线| 精品视频一区二区| 久操视频在线| 色菇凉天天综合网| gogo亚洲国模私拍人体| 欧美色图激情小说| 欧美精品激情在线| 亚洲特级黄色片| av一区二区三区| 不卡中文字幕在线| 成人免费看黄| 精品国产区一区| 久久99久久99精品免费看小说| 国产欧美精品| 不卡的av一区| 快射av在线播放一区| 日本久久一区二区三区| 逼特逼视频在线观看| 欧美国产一级| 国产精品第一视频| 色一情一乱一乱一区91av| 成人免费在线播放视频| 激情五月婷婷久久| 欧美大胆a级| 欧美国产日韩精品| av中文字幕免费在线观看| 国产午夜精品理论片a级大结局| 国产va亚洲va在线va| 日韩电影精品| 最新日韩中文字幕| 黄色av一区二区| 91麻豆免费观看| 女人天堂av手机在线| 99久久免费精品国产72精品九九| 日韩中文字幕网| 国产精品51麻豆cm传媒| 久久日一线二线三线suv| 日韩欧美亚洲天堂| 国产欧美自拍一区| 国内成人精品一区| 人人妻人人澡人人爽精品日本| 亚洲欧美国产毛片在线| 午夜视频在线观| 91久久国产| 91九色精品视频| 黄色成年人视频在线观看| 欧美日本国产视频| 国产又粗又猛又爽又黄的视频小说| 日韩精品视频网| 亚洲精品成人三区| 欧美大片网站| 久久亚洲一区二区三区四区五区高| 亚洲中文字幕在线观看| 国产精品久久午夜| 午夜天堂在线视频| 国内精品福利| 国产日韩欧美一区二区| 性欧美xxx69hd高清| 亚洲免费中文字幕| 国产字幕在线观看| 欧美国产精品一区二区| 色噜噜狠狠一区二区| 欧美大片aaaa| 亚洲专区中文字幕| 国产激情视频在线看| 日韩av在线网址| 免费又黄又爽又猛大片午夜| 中文字幕欧美日本乱码一线二线| 天堂在线资源视频| 国产精品成人a在线观看| 亚洲自拍av在线| 成年男女免费视频网站不卡| 亚洲精品色婷婷福利天堂| 青青草视频在线观看免费| 国产精品丝袜一区| 日本一二三区在线| 99在线精品免费视频九九视 | 国产99视频在线观看| av网站大全在线观看| 5566中文字幕一区二区电影| 国产一级生活片| 久久奇米777| 午夜视频你懂的| 午夜日韩激情| 欧美在线播放一区| 国产精品视频一区二区三区| 97国产精品视频人人做人人爱| 免费毛片在线| 日韩一区二区在线观看视频| 手机在线看片1024| 亚洲色图欧美在线| 国产夫妻性爱视频| 国内成人精品2018免费看| 男女视频网站在线观看| 大片网站久久| 国产免费一区| 亚洲精品无播放器在线播放| 3344国产精品免费看| 欧美日韩在线资源| 日韩精品视频在线观看免费| 国产精品熟女久久久久久| 午夜精品福利在线| 亚洲人与黑人屁股眼交| 99国产精品国产精品毛片| 亚洲高清在线不卡| 久久久www| 欧美精品自拍视频| 国产精品7m凸凹视频分类| 久久久综合香蕉尹人综合网| 精品国产一区二区三区2021| 国产成人久久久| 成入视频在线观看| 超碰91人人草人人干| 二区三区在线| 日韩电影免费观看中文字幕| 国产日产亚洲系列最新| 在线精品视频免费播放| 国产一级特黄aaa大片| 日韩理论在线观看| 老头老太做爰xxx视频| 99精品一区二区三区| 久久久精品人妻一区二区三区| 九色综合国产一区二区三区| 国产天堂在线播放| 亚洲伊人观看| 日本wwwcom| 伊人久久大香线| 亚洲在线欧美| 欧美少妇xxxx| 婷婷久久五月天| 九九热线有精品视频99| 久久国产日韩欧美| 欧美激情极品| 国产一区二区中文字幕免费看| 日本一区二区三区视频在线看| 国产精品亚洲欧美导航| 国产成人精品亚洲日本在线观看| 欧美一区二区色| 色戒汤唯在线观看| 欧美专区在线播放| 特黄毛片在线观看| 欧美又大又硬又粗bbbbb| www在线观看黄色| 久久久久免费视频| 成人免费一区二区三区牛牛| 九色91av视频| 波多野结衣在线播放| 国模gogo一区二区大胆私拍| 91黄页在线观看| 国产91精品高潮白浆喷水| 中文字幕乱码中文乱码51精品| 日本精品性网站在线观看| 中国色在线日|韩| 91国在线精品国内播放| 亚洲国产成人二区| 国产97在线播放| 欧美一区二区三区婷婷| 成人av番号网| 一区二区三区亚洲变态调教大结局 | 每日在线观看av| 亚洲神马久久| 牛夜精品久久久久久久| 激情小说亚洲一区| 免费在线观看日韩av| 97久久超碰精品国产| 成人精品在线观看视频| 国产视频一区不卡| 顶级黑人搡bbw搡bbbb搡| 亚洲欧美另类图片小说| 欧美成人精品一区二区免费看片| 亚洲一区二区三区四区五区黄| 国产一级精品视频| 欧美日韩一区中文字幕| 国产精品一品二区三区的使用体验| 欧美成人性福生活免费看| 午夜福利视频一区二区| 国产一区二区三区在线观看视频| 九色porny在线| 久久久噜久噜久久综合| 日韩影片中文字幕| 91精品啪在线观看麻豆免费| www.神马久久| 午夜一区二区三区| 午夜久久福利| 亚洲精品怡红院| 国产成人av资源| 亚洲精品国产精品国自产网站| 亚洲免费观看高清完整 | 欧美网站大全在线观看| www.色日本| 国产亚洲精品91在线| 欧美人与牲禽动交com | 欧美日韩在线一| 久久99久久99| 丰满少妇高潮一区二区| 一区二区三区不卡视频在线观看| 国产成人精品777777| 日韩欧美中文字幕制服| 麻豆av电影在线观看| 欧美日本国产在线| 成人国产精品| 国产综合欧美在线看| 围产精品久久久久久久| 鲁一鲁一鲁一鲁一澡| 国产麻豆视频一区| 国产精品情侣呻吟对白视频| 亚洲午夜免费电影| 亚洲综合视频在线播放| 日韩精品在线观看一区| 成人在线视频亚洲| 国产精品视频在线观看| 久久99精品国产自在现线| 免费成人深夜夜行网站视频| 久久精品麻豆| 日本黄色动态图| 夜夜亚洲天天久久| aaa一区二区| 中文字幕亚洲欧美日韩高清| 久久久久久久| 久久国产精品精品国产色婷婷| 国产字幕视频一区二区| 四虎1515hh.com| 国产精品久久久久婷婷| 无码人妻丰满熟妇精品| 亚洲精品suv精品一区二区| 色哟哟免费在线观看 | 天天爽夜夜爽人人爽| 亚洲第一区在线| 久久不射影院| 99国产精品久久久久老师| 999国产精品999久久久久久| 亚洲一区二区三区四区五区xx| 9人人澡人人爽人人精品| 国产一级黄色av| 欧美成人女星排名| 99在线视频观看| 91超碰在线电影| 欧美激情亚洲| 久久久男人的天堂| 一区二区三区精密机械公司| 亚洲成人av综合| 欧美激情免费观看| 伊人久久亚洲| 性高湖久久久久久久久aaaaa| 国产高清在线观看免费不卡| 国产一二三区精品| 欧美一区二区三区视频| 成人video亚洲精品| 91视频99| av成人国产| 国产ts丝袜人妖系列视频| 色综合久久久久综合| 国产一级片在线播放| 国产精品丝袜久久久久久高清| 不卡一区2区| 亚洲天堂av一区二区| 亚洲色图.com| 性生交大片免费看女人按摩| 亚州av一区二区| 教室别恋欧美无删减版| 久久久精品麻豆| 亚洲日本青草视频在线怡红院| 国产欧美综合视频| 欧美极品美女电影一区| 亚洲成a人片77777在线播放| 精品久久久久av| 国产精品久久久久久久午夜片| 国产精品毛片一区视频播| 欧美精品videossex88| 亚洲精品播放| 三级av免费观看| 亚洲国产一区视频| 青梅竹马是消防员在线| 国产精品久久久久久久久久久久久| 小处雏高清一区二区三区| 性色av浪潮av| 欧美丝袜一区二区三区| 尤物网在线观看| 亚洲qvod图片区电影| 99热精品在线| 成人做爰视频网站| 亚洲精品videossex少妇| 国产美女久久| 国产精品久久..4399| 国产精品少妇自拍| 风流老熟女一区二区三区| 国产成人在线一区二区| 欧美在线首页| 男女做爰猛烈刺激| 日韩精品一区二区三区视频播放| 婷婷六月国产精品久久不卡| 中文字幕一区二区三区精彩视频 | 国产亚洲精品久久久久婷婷瑜伽| 中国女人特级毛片| 精品国产乱码久久久久久牛牛| yw.尤物在线精品视频| 加勒比成人在线| 国产精品久久久久久久久久免费看| 国模人体一区二区| 国产精品一区av|