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

【死磕JVM】什么是JVM調(diào)優(yōu)?

云計(jì)算 虛擬化
虛擬機(jī)參數(shù)分為基本和擴(kuò)展兩類(lèi),在命令行中輸入 JAVA_HOME\bin\java就可得到基本參數(shù)列表。在命令行輸入 JAVA_HOME\bin\java–X就可得到擴(kuò)展參數(shù)列表。

[[403435]]

本文轉(zhuǎn)載自微信公眾號(hào)「牧小農(nóng)」,作者牧小農(nóng)。轉(zhuǎn)載本文請(qǐng)聯(lián)系牧小農(nóng)公眾號(hào)。

想要學(xué)習(xí)JVM調(diào)優(yōu),我們必須提前知道他們的一些參數(shù),這樣才方便我們更好的去使用他們

JVM常用命令行參數(shù)

JVM的命令行參數(shù)參考: https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html

1. 查看參數(shù)列表

虛擬機(jī)參數(shù)分為基本和擴(kuò)展兩類(lèi),在命令行中輸入 JAVA_HOME\bin\java就可得到基本參數(shù)列表。在命令行輸入 JAVA_HOME\bin\java–X就可得到擴(kuò)展參數(shù)列表。

2. 基本參數(shù)說(shuō)明:

  • -client,-server: 兩種Java虛擬機(jī)啟動(dòng)方式,client模式啟動(dòng)比較快,但是性能和內(nèi)存管理相對(duì)較差,server模式啟動(dòng)比較慢,但是運(yùn)行性能比較高,windos上采用的是client模式,Linux采用server模式
  • -classpath -cp: 虛擬機(jī)在運(yùn)行一個(gè)類(lèi)的時(shí)候,需要將其轉(zhuǎn)入內(nèi)存中,虛擬機(jī)搜索類(lèi)的方式和順序:Bootstrap classes、Extension classes、User classes。Bootstrap 中的路徑是虛擬機(jī)自帶的 jar 或 zip 文件,虛擬機(jī)首先搜索這些包文件,用System.getProperty("sun.boot.class.path")可得到虛擬機(jī)搜索的包名。Extension 是位于 jre\lib\ext 目錄下的 jar 文件,虛擬機(jī)在搜索完 Bootstrap 后就搜索該目錄下的 jar 文件。用 System. getProperty("java.ext.dirs”)可得到虛擬機(jī)使用 Extension 搜索路徑。User classes 搜索順序?yàn)楫?dāng)前目錄、環(huán)境變量 CLASSPATH、-classpath。
  • -classpath: 告訴虛擬機(jī)搜索目錄名、jar文檔名、zip文檔名
  • -verbose[:class|gc|jni]: 在輸出設(shè)備上顯示虛擬機(jī)運(yùn)行信息 -verbose:class 輸出虛擬機(jī)裝入的類(lèi)的信息 -verbose:gc 在虛擬機(jī)發(fā)生內(nèi)存回收時(shí)輸出設(shè)備信息,用來(lái)監(jiān)視虛擬機(jī)內(nèi)存回收的情況 -verbose:jni 虛擬機(jī)調(diào)用native方法時(shí)輸出設(shè)置顯示信息,用來(lái)監(jiān)視虛擬機(jī)調(diào)用本地方法的情況
  • -version:顯示可運(yùn)行的虛擬機(jī)版本信息
  • -showversion:顯示版本信息以及幫助信息

3. 擴(kuò)展參數(shù)說(shuō)明:

  • -Xmixed: 設(shè)置 -client 模式虛擬機(jī)對(duì)使用頻率高的方式進(jìn)行 Just-In-Time 編譯和執(zhí)行,對(duì)其他方法使用解釋方式執(zhí)行,該方式是虛擬機(jī)缺省模式
  • -Xint: 設(shè)置-client模式下運(yùn)行的虛擬機(jī)以解釋方式執(zhí)行類(lèi)的字節(jié)碼,不將字節(jié)碼編譯為本機(jī)碼,有可能會(huì)損失性能
  • -Xbootclasspath:path、-Xbootclasspath/a:path、-Xbootclasspath/p:path: 改變虛擬機(jī)裝載系統(tǒng)運(yùn)行包 rt.jar,而從-Xbootclasspath 中設(shè)定的搜索路徑中裝載系統(tǒng)運(yùn)行類(lèi)。除非你自己能寫(xiě)一個(gè)運(yùn)行時(shí),否則不會(huì)用到該參數(shù)。/a:將在缺省搜索路徑后加上 path 中的搜索路徑。/p:在缺省搜索路徑前先搜索 path 中的搜索路徑。
  • -Xnoclassgc: 關(guān)閉虛擬機(jī)對(duì) class 的垃圾回收功能,有可能會(huì)導(dǎo)致OutOfMemoryError
  • -Xincgc: 啟動(dòng)增量垃圾收集器,缺省是關(guān)閉的,增量垃圾收集器能減少偶然發(fā)生的長(zhǎng)時(shí)間的垃圾回收造成的暫停時(shí)間,但增量垃圾收集器和應(yīng)用程序并發(fā)執(zhí)行,會(huì)占用部分CPU在應(yīng)用程序上的功能
  • -Xloggc:file: 將虛擬機(jī)每次垃圾回收的信息寫(xiě)到日志文件中,文件名由file指定,文件格式是平文件,內(nèi)容和-verbose:gc 輸出內(nèi)容相同
  • -Xms20M: 設(shè)置虛擬機(jī)可用內(nèi)存堆的初始大小為20M,大小為1024的整數(shù)倍并且要大于1MB,可用K或者M(jìn)為單位來(lái)設(shè)置較大內(nèi)存數(shù),初始堆大小為2MB,例如:-Xms256M
  • -Xmx20M: 設(shè)置虛擬機(jī)內(nèi)存堆的最大可用大小,該值必須為1024的整數(shù)倍,并且要大于2MB,可用K或者M(jìn)為單位來(lái)設(shè)置較大的內(nèi)存數(shù),例如:-Xmx81920K,-Xmx80M,當(dāng)應(yīng)用程序申請(qǐng)了大內(nèi)存運(yùn)行時(shí)虛擬機(jī)拋出 java.lang.OutOfMemoryError,就需要使用-Xmx來(lái)設(shè)置了
  • -Xss128K: 設(shè)置線程棧的大小,和-Xmx類(lèi)似,可以用K或M來(lái)設(shè)置較大的值,也可以在Java中創(chuàng)建線程對(duì)象時(shí)設(shè)置棧的大小
  • -Xoss128k: 設(shè)置本地方法棧的大小為128K,不過(guò)HotSpot不區(qū)分虛擬機(jī)棧和本地方法棧,所以這個(gè)參數(shù)對(duì)于HotSpot是無(wú)效的
  • -XX:PermSize=10M: 表示JVM初始分配的永久代的容量,必須以M為單位
  • -XX:MaxPermSize=10M: 表示JVM允許分配的永久代的最大容量,必須以M為單位,大部分情況下這個(gè)參數(shù)默認(rèn)為64M
  • -XX:NewRatio=4: 表示設(shè)置年輕代:老年代的大小比值為1:4,這意味著年輕代占整個(gè)堆的1/5
  • -XX:SurvivorRatio=8: 表示設(shè)置2個(gè)Survivor區(qū):1個(gè)Eden區(qū)的大小比值為2:8,這意味著Survivor區(qū)占整個(gè)年輕代的1/5,這個(gè)參數(shù)默認(rèn)為8
  • -Xmn20M: 表示設(shè)置年輕代的大小為20M
  • -XX:+HeapDumpOnOutOfMemoryError: 表示可以讓虛擬機(jī)在出現(xiàn)內(nèi)存溢出異常時(shí)Dump出當(dāng)前的堆內(nèi)存轉(zhuǎn)儲(chǔ)快照
  • -XX:+UseG1GC: 表示讓JVM使用G1垃圾收集器
  • -XX:+PrintGCDetails: 表示在控制臺(tái)上打印出GC具體細(xì)節(jié)
  • -XX:+PrintGC: 表示在控制臺(tái)上打印出GC信息
  • -XX:PretenureSizeThreshold=3145728 表示對(duì)象大于3145728(3M)時(shí)直接進(jìn)入老年代分配,這里只能以字節(jié)作為單位
  • -XX:MaxTenuringThreshold=1: 表示對(duì)象年齡大于1,自動(dòng)進(jìn)入老年代

虛擬機(jī)參數(shù)分類(lèi)

標(biāo)準(zhǔn):- 開(kāi)頭,所有的HotSpot都支持 非標(biāo)準(zhǔn):-X 開(kāi)頭,特定版本HotSpot支持特定命令 不穩(wěn)定:-XX 開(kāi)頭,下個(gè)版本可能取消

例如:java -version、java -X

  1. import java.util.List; 
  2.  
  3. import java.util.LinkedList; 
  4.  
  5.  
  6.  
  7.  
  8. public class HelloGC { 
  9.  
  10. public static void main(String[] args) { 
  11.  
  12. System.out.println("HelloGC!"); 
  13.  
  14. List list = new LinkedList(); 
  15.  
  16. for(;;) { 
  17.  
  18. byte[] b = new byte[1024*1024]; 
  19.  
  20. list.add(b); 
  21.  
  22.  
  23.  

  • 區(qū)分概念:內(nèi)存泄漏memory leak,內(nèi)存溢出out of memory
  • java -XX:+PrintCommandLineFlags HelloGC
  • java -Xmn10M -Xms40M -Xmx60M -XX:+PrintCommandLineFlags -XX:+PrintGC HelloGC
  • PrintGCDetails PrintGCTimeStamps PrintGCCauses
  • java -XX:+UseConcMarkSweepGC -XX:+PrintCommandLineFlags HelloGC
  • java -XX:+PrintFlagsInitial 默認(rèn)參數(shù)值
  • java -XX:+PrintFlagsFinal 最終參數(shù)值
  • java -XX:+PrintFlagsFinal | grep xxx 找到對(duì)應(yīng)的參數(shù)
  • java -XX:+PrintFlagsFinal -version |grep GC

調(diào)優(yōu)前的基礎(chǔ)概念

1. 吞吐量: 用戶代碼時(shí)間 /(用戶代碼執(zhí)行時(shí)間 + 垃圾回收時(shí)間)

2. 響應(yīng)時(shí)間: STW(Stop The World)越短,響應(yīng)時(shí)間越好

所謂的調(diào)優(yōu),首先自己要明確,想要的是什么,是吞吐量還是響應(yīng)時(shí)間,還是在滿足一定的響應(yīng)時(shí)間的情況下,要求達(dá)到多大的吞吐量,一般來(lái)說(shuō)根據(jù)業(yè)務(wù)類(lèi)型去選擇對(duì)應(yīng)的調(diào)優(yōu)方式,比如網(wǎng)站需要的是響應(yīng)時(shí)間優(yōu)先,JDK1.8盡量選G1,那如果是數(shù)據(jù)挖掘的需要使用的是吞吐量。

什么是調(diào)優(yōu)

在沒(méi)有接觸過(guò)調(diào)優(yōu)之前我們理解的JVM調(diào)優(yōu)就是解決OOM問(wèn)題,OOM只是JVM調(diào)優(yōu)的一部分

  • 一般是根據(jù)需求進(jìn)行JVM規(guī)劃和預(yù)調(diào)優(yōu)
  • 優(yōu)化運(yùn)行JVM運(yùn)行環(huán)境(慢,卡頓)
  • 解決JVM運(yùn)行過(guò)程中出現(xiàn)的各種問(wèn)題(OOM)

首先的話,調(diào)優(yōu)是從業(yè)務(wù)場(chǎng)景開(kāi)始的,如果沒(méi)有業(yè)務(wù)場(chǎng)景的JVM調(diào)優(yōu)都是不靠譜的,比如有時(shí)間在實(shí)際項(xiàng)目中,有很多個(gè)類(lèi),成千上萬(wàn)個(gè)代碼,你怎么知道具體是哪個(gè)代碼有問(wèn)題,就算我們知道有段代碼頻繁的full gc,但是可能過(guò)一段時(shí)間就OOM了。

調(diào)優(yōu)步驟:

  • 熟悉業(yè)務(wù)場(chǎng)景,選定垃圾回收器(沒(méi)有最好的垃圾回收器,只有最合適的垃圾回收器)

響應(yīng)時(shí)間、停頓時(shí)間 [CMS G1 ZGC] (需要給用戶作響應(yīng))

吞吐量 = 用戶時(shí)間 /( 用戶時(shí)間 + GC時(shí)間) [PS]

  • 選擇回收器組合
  • 計(jì)算內(nèi)存需求(設(shè)置內(nèi)存大小 1.5G 16G)
  • 選定CPU:越高越好
  • 設(shè)定年代大小、升級(jí)年齡
  • 設(shè)定日志參數(shù)

1.-Xloggc:/opt/xxx/logs/xxx-xxx-gc-%t.log -

XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -

XX:GCLogFileSize=20M -XX:+PrintGCDetails -

XX:+PrintGCDateStamps -XX:+PrintGCCause

2.或者每天產(chǎn)生一個(gè)日志文件

在生產(chǎn)環(huán)境中日志文件,后面日志名字,按照系統(tǒng)時(shí)間產(chǎn)生,循環(huán)產(chǎn)生,日志個(gè)數(shù)五個(gè),每個(gè)大小20M,這樣的好處在于整體大小100M,能 控制整體文件大小

觀察日志情況

調(diào)優(yōu)案例

案例一

垂直電商,最高每日百萬(wàn)訂單,處理訂單系統(tǒng)需要什么樣的服務(wù)器配置

這個(gè)問(wèn)題比較雞肋,因?yàn)楹芏嗖煌姆?wù)器配置都能夠支撐

比如有一百萬(wàn)個(gè)訂單,每個(gè)小時(shí)不會(huì)產(chǎn)生很高的并發(fā)量,我們尋找高峰時(shí)間,做一個(gè)假設(shè)100W訂單有72W訂單在高峰期產(chǎn)生,比如一個(gè)小時(shí)平均36W訂單,所以我們內(nèi)存選擇大小是按照巔峰時(shí)間選擇的,很多時(shí)間我們可能就是去做壓測(cè),實(shí)在不行就添加CPU和內(nèi)存

案例二

12306遭遇春節(jié)大規(guī)模搶票應(yīng)該如何支撐 訂單信息每天固定,可以丟到緩存中,不同的業(yè)務(wù)邏輯有不同的業(yè)務(wù)設(shè)計(jì),12306應(yīng)該是中國(guó)并發(fā)量最大的秒殺網(wǎng)站,號(hào)稱(chēng)并發(fā)100W,就是說(shuō)每秒進(jìn)行百萬(wàn)次的業(yè)務(wù)邏輯的處理,估計(jì)淘寶一年最高的是54W并發(fā)。

如果解決這個(gè)問(wèn)題呢,看下面所示:

CDN -》 LVS -》 NGINX -》 業(yè)務(wù)系統(tǒng) -》每臺(tái)機(jī)器1W并發(fā)

普通電商的下單流程一般是:

訂單 -》下單-》 訂單系統(tǒng)減庫(kù)存 -》 等待用戶付款 這個(gè)事務(wù)如果同步的方式完成,TPS是支撐不了多長(zhǎng)時(shí)間的

但是在12306里面的模型是 下單-》 減庫(kù)存和訂單同時(shí)異步進(jìn)行 -》 等待付款 異步是當(dāng)你下完訂單之后,它一個(gè)線程去減庫(kù)存,另外一個(gè)線程直接把你下單的信息扔到kafka或者redis里面直接返回OK,你下單成功后等待你付款,什么時(shí)候你付款完成后面那些個(gè)訂單處理線程就會(huì)去里面拿數(shù)據(jù),這個(gè)處理完了就會(huì)持久化到Hbase或者是mysql,一般大流量的處理方法核心思想就是:分而治之

JVM優(yōu)化

比如我有一個(gè)50萬(wàn)PV的資料類(lèi)網(wǎng)站(從磁盤(pán)提取文檔到內(nèi)存)原服務(wù)器32位,1.5G的堆,用戶反饋網(wǎng)站比較緩慢,如果對(duì)它進(jìn)行升級(jí),新服務(wù)器64位,16G的堆內(nèi)存,用戶還是反饋卡頓,而且還比之前更嚴(yán)重,這個(gè)是因?yàn)槭裁茨?一般來(lái)說(shuō)很多用戶去瀏覽數(shù)據(jù),很多數(shù)據(jù)會(huì)load到內(nèi)存中,導(dǎo)致內(nèi)存不足,頻繁的GC,STW時(shí)間過(guò)長(zhǎng),響應(yīng)時(shí)間就會(huì)變慢,那我們應(yīng)該怎么辦呢,使用 PS-> PN+CMS或者G1。

還有一個(gè)就是系統(tǒng)CPU經(jīng)常100%,我們要如何進(jìn)行調(diào)優(yōu)呢?

首先我們可以想到CPU100%那么一定有線程在占用系統(tǒng)資源

找出哪個(gè)進(jìn)程CPU高 (top命令)

該進(jìn)程中的哪個(gè)線程CPU高(top -Hp)

導(dǎo)出該線程的堆棧

查找哪個(gè)方法(棧掙)比較消耗時(shí)間

工作線程占比高 | 垃圾回收線程占比高

總結(jié)

今天我們只是講解了一些基本的操作,具體怎么操作該怎么辦呢?這一部分小農(nóng)會(huì)在下一部分中進(jìn)行講解,今天主要帶大家了解一些常用的參數(shù),告訴大家怎么去使用和一些前置知識(shí),下面我會(huì)對(duì)這些問(wèn)題做一個(gè)實(shí)戰(zhàn)性的講解,感興趣的小伙伴記得來(lái)個(gè)一鍵三連,感謝大家。

 

責(zé)任編輯:武曉燕 來(lái)源: 牧小農(nóng)
相關(guān)推薦

2021-02-25 07:21:00

JVMJavaava虛擬機(jī)

2021-06-01 09:29:43

ArthasJVM內(nèi)存

2021-06-09 07:56:51

JvmJVM面試題Java

2023-11-11 19:07:23

JVMJava

2021-05-25 09:56:42

Jvm類(lèi)加載機(jī)制Java

2021-02-28 11:58:33

JVM機(jī)制語(yǔ)言

2012-01-10 14:35:08

JavaJVM

2017-07-21 08:55:13

TomcatJVM容器

2017-09-22 15:15:23

jvm調(diào)優(yōu)命令

2017-10-17 14:02:30

jvm調(diào)優(yōu)工具

2010-09-26 13:39:46

JVM調(diào)優(yōu)

2010-09-26 09:08:17

JVM調(diào)優(yōu)

2012-01-10 15:13:56

JavaJVM

2010-09-27 09:23:42

JVM調(diào)優(yōu)

2021-11-21 23:03:38

jvm調(diào)優(yōu)虛擬機(jī)

2024-12-04 15:49:29

2010-09-26 10:53:00

JVM內(nèi)存調(diào)優(yōu)設(shè)置

2010-09-25 13:05:07

JVM參數(shù)

2023-11-10 11:23:20

JVM內(nèi)存

2010-03-04 10:56:52

JVM參數(shù)
點(diǎn)贊
收藏

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

久久精品亚洲国产| 欧美亚洲图片小说| 国内精品**久久毛片app| 国产精品久久久久久人| 国产真实有声精品录音| 欧美一区二区在线视频| 你懂的av在线| 欧美黄色激情| 国产精品69久久久久水密桃 | 极品久久久久久| 日韩电影精品| 天天av天天翘天天综合网色鬼国产| 欧美夜福利tv在线| 亚洲一二三四五六区| 国产美女撒尿一区二区| 欧美无乱码久久久免费午夜一区| 久久伊人一区二区| 国产一区二区三区中文字幕| 国产在线不卡| 最近2019中文字幕mv免费看 | 91嫩草国产线观看亚洲一区二区| 久久精品亚洲一区二区三区浴池| 久久久久久久久久久91| 深爱五月激情网| 日韩最新av| 欧美色图12p| 91猫先生在线| 欧美大胆的人体xxxx| 亚洲国产高清aⅴ视频| 国内精品久久久久久久果冻传媒| 男女视频免费看| 亚洲成人精品| 中文字幕亚洲色图| www.久久av| 日韩精品丝袜美腿| 日韩视频一区二区三区| 国产裸体免费无遮挡| 国产理论在线| 亚洲超碰精品一区二区| 亚洲精品少妇一区二区| 黄色免费网站在线观看| 国产欧美精品一区二区色综合朱莉| 国产精品99久久99久久久二8| 免费a级黄色片| 老色鬼在线视频| 亚洲小说欧美激情另类| 成人在线视频一区二区三区| 免费a级在线播放| 国产精品美女久久久久久| 日韩一区二区三区资源| 蝌蚪视频在线播放| 久久久久99精品一区| 欧美日韩另类综合| 欧美一区二区少妇| 久久夜色精品国产噜噜av| 国产精品久久久久久久久久久久午夜片 | 欧美国产禁国产网站cc| 免费在线一区二区| 欧美女子与性| 久久精品一区二区三区不卡| 日韩高清国产一区在线观看| 高清中文字幕一区二区三区| 国产日韩三级在线| 日韩精品在在线一区二区中文| 国产美女精品视频国产| 国产美女久久久久| 91九色在线观看| 亚洲国产精彩视频| av一区二区三区四区| 国产91免费视频| 天天爱天天干天天操| 91麻豆国产福利在线观看| 九九九九九精品| 可以直接在线观看的av| 欧美极品aⅴ影院| 黄频视频在线观看| 青青青国内视频在线观看软件| 91丨九色丨国产丨porny| 激情小说综合区| 内衣办公室在线| 中文字幕乱码一区二区免费| 一区二区三区国| 日韩精品亚洲人成在线观看| 精品女同一区二区三区在线播放| 特级西西444| 丁香花视频在线观看| 日韩欧美极品在线观看| 亚洲欧洲日本精品| 99精品国产一区二区三区2021| 精品污污网站免费看| 亚洲精品在线视频播放| 老牛精品亚洲成av人片| 一区二区三区亚洲| www.99re7| 亚洲综合三区| 成人国产精品一区二区| 午夜激情小视频| 亚洲国产成人自拍| 国产日韩av网站| julia一区二区三区中文字幕| 欧美日韩在线免费观看| 激情五月婷婷基地| 日韩精品免费一区二区夜夜嗨| 日韩欧美高清dvd碟片| 好吊日免费视频| 久久久久久久久久久久久久| 欧美一级免费视频| 国产熟女一区二区三区五月婷| 免费成人在线网站| 成人欧美一区二区三区黑人免费| 国产成人精品a视频| 久久久久国产成人精品亚洲午夜| 欧美一区观看| 成人av影院在线观看| 欧美性videosxxxxx| 久久人妻少妇嫩草av无码专区| 一区二区三区在线免费看 | 一区在线播放视频| 精品少妇一区二区三区在线| 香蕉久久一区| 亚洲系列中文字幕| 精品人妻在线播放| 激情六月婷婷久久| 日本精品一区二区三区视频| 欧美xxxx免费虐| 欧美精品亚洲二区| 波多野在线播放| 国产日韩精品视频一区二区三区 | 亚洲精品大全| 亚洲欧洲视频在线| 国产网址在线观看| 国产乱码精品一区二区三| 亚洲国内在线| 新片速递亚洲合集欧美合集| 亚洲国产精品视频在线观看| 欧美三级在线免费观看| 狠狠色伊人亚洲综合成人| 三区精品视频| 日本精品另类| 亚洲日本欧美日韩高观看| 日韩欧美国产亚洲| 成人av资源在线观看| 国产成人永久免费视频| 欧美一区一区| 欧美精品一区二区三区国产精品| 日本一区二区免费在线观看| 国产不卡视频一区| 国产av不卡一区二区| 97精品资源在线观看| 日韩在线中文字幕| 国产精品怡红院| 亚洲欧洲韩国日本视频| 黄色一级片免费播放| 亚洲国产一区二区三区在线播放 | 玖玖爱免费视频| 国产美女精品人人做人人爽| 91视频成人免费| 中文在线综合| 97在线视频免费播放| 污视频网站免费观看| 色综合久久综合网欧美综合网| 五月激情婷婷在线| 久久久久蜜桃| 高清国语自产拍免费一区二区三区| 每日更新av在线播放| 日本韩国一区二区| 变态另类ts人妖一区二区| 免费观看久久久4p| 国产日产欧美一区二区| 国产福利一区二区精品秒拍| 91av视频在线免费观看| 嫩草精品影院| 在线不卡免费欧美| 久青草免费视频| www.欧美色图| 免费大片在线观看| 欧美丰满老妇| 国产成人看片| 中文字幕在线免费观看视频| 永久免费看mv网站入口亚洲| 国产毛片毛片毛片毛片毛片| 午夜久久电影网| 日韩一区二区a片免费观看| 毛片基地黄久久久久久天堂| 草草草视频在线观看| 亚洲三级性片| 91在线视频导航| 97天天综合网| 在线精品国产成人综合| 国产极品久久久| 色噜噜狠狠成人网p站| 一起操在线播放| 99久久免费视频.com| www.精品在线| 99国产精品久久久久久久| 先锋影音日韩| 高清精品xnxxcom| 国产精品丝袜高跟| av影院在线| 中文字幕日韩欧美在线| 免费av网站在线播放| 欧美无砖专区一中文字| 国产成人精品亚洲男人的天堂| 国产精品主播直播| 97视频在线免费播放| 97视频精品| 欧美18视频| 一区二区三区四区视频免费观看| 欧美日本高清一区| 超碰免费97在线观看| 日韩欧美视频一区| 中文字幕人妻精品一区| 午夜精品福利在线| 日韩三级久久久| 久久影院电视剧免费观看| 日本高清免费在线视频| 美女日韩在线中文字幕| 福利视频一二区| 亚洲九九在线| 亚洲国产日韩欧美| 欧美美女在线直播| 超碰97国产在线| 欧美一级网址| 国产精品久久久久免费a∨| a国产在线视频| 欧美国产一区二区三区| 国产精品一区二区三区视频网站| 日韩午夜激情av| 最近中文字幕免费观看| 欧美日韩国产精品一区二区三区四区 | 高h放荡受浪受bl| 91精品国产综合久久精品麻豆 | 欧美男男同志| 亚洲第一区中文字幕| 国产99999| 日韩视频在线观看一区二区| 91在线观看喷潮| 欧美日韩中文字幕一区| 国产精品成人久久久| 色激情天天射综合网| 中文字幕精品三级久久久 | 九九热精彩视频| 亚洲欧美偷拍卡通变态| 天堂在线中文视频| 国产目拍亚洲精品99久久精品| 在线一区二区不卡| 久久国产婷婷国产香蕉| 中文av一区二区三区| 青青草97国产精品免费观看 | 日本天码aⅴ片在线电影网站| 亚洲а∨天堂久久精品9966 | 日本成人在线视频网站| 久久久久久久午夜| 午夜亚洲精品| 国产精品亚洲a| 日韩影院免费视频| 污视频网站观看| 国产在线精品一区二区不卡了| 成 年 人 黄 色 大 片大 全| 风间由美一区二区av101| 操一操视频一区| 亚洲国产合集| 日韩在线电影一区| 国产精品videosex性欧美| 中文字幕免费高| 国内精品久久久久久久影视蜜臀 | 精品人妻一区二区三区视频| 2023国产精品| 国产一二三四视频| 亚洲精选在线视频| 91看片在线播放| 欧美亚洲综合另类| 国产成人a人亚洲精品无码| 亚洲电影免费观看高清完整版在线观看 | 久久99精品国产91久久来源| 成年人三级黄色片| 国产激情一区二区三区桃花岛亚洲| 亚洲色精品三区二区一区| 免费在线成人网| 国产又粗又猛大又黄又爽| 国产大陆精品国产| 黄色工厂在线观看| 国产精品久久久久久久久快鸭| 波多野结衣视频播放| 91色九色蝌蚪| 强制高潮抽搐sm调教高h| 一区二区视频在线看| av大片在线免费观看| 欧美福利视频导航| 亚洲av成人精品一区二区三区在线播放 | 瑟瑟在线观看| 播播国产欧美激情| 超碰资源在线| 国产精品十八以下禁看| 综合成人在线| 视频一区视频二区视频三区高| 欧美三级午夜理伦三级在线观看 | 亚洲欧美激情在线观看| 日韩电影中文字幕av| 日本免费视频在线观看| 国内精品小视频| 欧美啪啪网站| 久久精品日产第一区二区三区精品版 | 欧美一卡二卡三卡| 国产私拍精品| 国产69精品久久久| 国产高清亚洲| 日本一区高清在线视频| 伊人影院久久| 日本中文字幕二区| 久久久三级国产网站| 久草视频手机在线观看| 欧美日精品一区视频| 青青免费在线视频| 欧美激情一二区| 成人精品在线| 亚洲啪啪av| 噜噜噜躁狠狠躁狠狠精品视频 | 日本免费久久| 国产精品久久久久免费| 99视频精品全国免费| 日本三级免费观看| 成人黄色网址在线观看| 欧美 日韩 国产 一区二区三区| 亚洲美女视频在线| 中文字幕91爱爱| 亚洲欧美在线免费观看| 九色porny丨首页入口在线| 91蜜桃网站免费观看| 天天综合亚洲| 国产美女18xxxx免费视频| 99国产精品国产精品毛片| 国产一级做a爱免费视频| 在线不卡一区二区| 黄色精品免费看| 91麻豆国产精品| 天天av综合| 国产免费中文字幕| 国产精品久99| 亚洲一卡二卡在线观看| 中文字幕在线视频日韩| 免费污视频在线一区| 秋霞毛片久久久久久久久| 国产精品日韩精品欧美精品| av网站有哪些| 欧美性精品220| 欧美老女人性开放| 人人爽久久涩噜噜噜网站| 一呦二呦三呦国产精品| 日本中文字幕片| 国产欧美一区二区精品性色超碰| 国产极品国产极品| 欧美剧情片在线观看| 久久精品视频免费看| 成人妇女免费播放久久久| 希岛爱理av一区二区三区| 亚洲一区二区偷拍| 亚洲一线二线三线视频| 亚洲精品18p| 97在线观看免费高清| 亚洲精品国产动漫| 成人亚洲视频在线观看| 欧美国产激情一区二区三区蜜月| 国产午夜精品无码| 亚洲精品久久久久| 欧美xoxoxo| 亚洲乱码国产乱码精品天美传媒| 亚洲经典三级| 亚洲av无码一区二区三区观看| 亚洲日本中文字幕区| 国产三级午夜理伦三级| 久久久久久久久久久久久久久久久久av | 成人国产亚洲精品a区天堂华泰| 久久大胆人体视频| 欧美一级黄色片视频| 欧美国产日韩在线观看| 99久久久国产精品无码网爆| 久久久人成影片一区二区三区观看| 成人看片毛片免费播放器| 中日韩在线视频| 国产高清不卡二三区| 日日夜夜综合网| 色老头一区二区三区| 99精品在免费线中文字幕网站一区| 国产大尺度在线观看| 成人a区在线观看| 五月婷婷丁香在线| 欧美福利在线观看| 国产免费久久| 又黄又爽又色的视频| 欧美日韩亚洲高清| 里番在线观看网站| 国产精品手机在线| 日韩成人精品在线| 国产一级生活片| 视频直播国产精品| 欧美美女啪啪| 黄色片免费网址| 色哦色哦哦色天天综合| 青春草在线视频|