色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何讓接口吞吐量提升10多倍

Android編程精選 ? 來源:掘金 ? 2023-01-17 10:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

公司的一個ToB系統,因為客戶使用的也不多,沒啥并發要求,就一直沒有經過壓測。這兩天來了一個“大客戶”,對并發量提出了要求:核心接口與幾個重點使用場景單節點吞吐量要滿足最低500/s的要求。

當時一想,500/s吞吐量還不簡單。Tomcat按照100個線程,那就是單線程1S內處理5個請求,200ms處理一個請求即可。這個沒有問題,平時接口響應時間大部分都100ms左右,還不是分分鐘滿足的事情。

然而壓測一開,100 的并發,吞吐量居然只有 50 ...

而且再一查,100的并發,CPU使用率居然接近 80% ...

從上圖可以看到幾個重要的信息。

最小值: 表示我們非并發場景單次接口響應時長。還不足100ms。挺好!

最大值: 并發場景下,由于各種鎖或者其他串行操作,導致部分請求等待時長增加,接口整體響應時間變長。5秒鐘。有點過分了!!!

再一看百分位,大部分的請求響應時間都在4s。無語了!!!

所以 1s鐘的 吞吐量 單節點只有 50 。距離 500 差了10倍。 難受!!!!

分析過程

定位“慢”原因

?

這里暫時先忽略 CPU 占用率高的問題

?

首先平均響應時間這么慢,肯定是有阻塞。先確定阻塞位置。重點檢查幾處:

鎖 (同步鎖、分布式鎖、數據庫鎖)

耗時操作 (鏈接耗時、SQL耗時)

結合這些先配置耗時埋點。

接口響應時長統計。超過500ms打印告警日志。

接口內部遠程調用耗時統計。200ms打印告警日志。

Redis訪問耗時。超過10ms打印告警日志。

SQL執行耗時。超過100ms打印告警日志。

上述配置生效后,通過日志排查到接口存在慢SQL。具體SQL類似與這種:

updatetablesetfield=field-1wheretype=1andfiled>1;

上述SQL相當于并發操作同一條數據,肯定存在鎖等待。日志顯示此處的等待耗時占接口總耗時 80% 以上。

二話不說先改為敬。因為是壓測環境,直接改為異步執行,確認一下效果。

?

PS:當時心里是這么想的: 妥了,大功告成。就是這里的問題!絕壁是這個原因!優化一下就解決了。當然,如果這么簡單就沒有必要寫這篇文章了...

?

優化后的效果:

ec8ac674-95aa-11ed-bfe3-dac502259ad0.png

嗯...

emm...

好! 這個優化還是很明顯的,提升提升了近2倍。

此時已經感覺到有些不對了,慢SQL已經解決了(異步了~ 隨便吧~ 你執行 10s我也不管了),雖然對吞吐量的提升沒有預期的效果。但是數據是不會騙人的。

最大值: 已經從 5s -> 2s

百分位值: 4s -> 1s

這已經是很大的提升了。

繼續定位“慢”的原因

通過第一階段的“優化”,我們距離目標近了很多。廢話不多說,繼續下一步的排查。

我們繼續看日志,此時日志出現類似下邊這種情況:

2023-01-041505:347INFO**.**.**.***.50[TID:1s22s72s8ws9w00]********************** 2023-01-041505:348INFO**.**.**.***.21[TID:1s22s72s8ws9w00]********************** 2023-01-041505:350INFO**.**.**.***.47[TID:1s22s72s8ws9w00]********************** 2023-01-041505:465INFO**.**.**.***.234[TID:1s22s72s8ws9w00]********************** 2023-01-041505:467INFO**.**.**.***.123[TID:1s22s72s8ws9w00]********************** 2023-01-041505:581INFO**.**.**.***.451[TID:1s22s72s8ws9w00]********************** 2023-01-041505:702INFO**.**.**.***.72[TID:1s22s72s8ws9w00]**********************

前三行info日志沒有問題,間隔很小。第4 ~ 第5,第6 ~ 第7,第7 ~ 第8 很明顯有百毫秒的耗時。檢查代碼發現,這部分沒有任何耗時操作。那么這段時間干什么了呢?

發生了線程切換,換其他線程執行其他任務了。(線程太多了)

日志打印太多了,壓測5分鐘日志量500M。(記得日志打印太多是有很大影響的)

STW。(但是日志還在輸出,所以前兩種可能性很高,而且一般不會停頓百毫秒)

按照這三個思路做了以下操作:

首先,提升日志打印級別到DEBUG。emm... 提升不大,好像增加了10左右。

然后,拆線程 @Async 注解使用線程池,控制代碼線程池數量(之前存在3個線程池,統一配置的核心線程數為100)結合業務,服務總核心線程數控制在50以內,同步增加阻塞最大大小。結果還可以,提升了50,接近200了。

最后,觀察JVM的GC日志,發現YGC頻次4/s,沒有FGC。1分鐘內GC時間不到1s,很明顯不是GC問題,不過發現JVM內存太小只有512M,直接給了4G。吞吐量沒啥提升,YGC頻次降低為2秒1次。

唉,一頓操作猛如虎。

?

PS:其實中間還對數據庫參數一通瞎搞,這里不多說了。

?

其實也不是沒有收獲,至少在減少服務線程數量后還是有一定收獲的。

另外,已經關注到了另外一個點:CPU使用率,減少了線程數量后,CPU的使用率并沒有明顯的下降,這里是很有問題的,當時認為CPU的使用率主要與開啟的線程數量有關,之前線程多,CPU使用率較高可以理解。但是,在砍掉了一大半的線程后,依然居高不下這就很奇怪了。

此時關注的重點開始從代碼“慢”方向轉移到“CPU高”方向。

定位CPU使用率高的原因

CPU的使用率高,通常與線程數相關肯定是沒有問題的。當時對居高不下的原因考慮可能有以下兩點:

有額外的線程存在。

代碼有部分CPU密集操作。

然后繼續一頓操作:

觀察服務活躍線程數。

觀察有無CPU占用率較高線程。

在觀察過程中發現,沒有明顯CPU占用較高線程。所有線程基本都在10%以內。類似于下圖,不過有很多線程。

ec9ac07e-95aa-11ed-bfe3-dac502259ad0.png

沒有很高就證明大家都很正常,只是多而已...

此時沒有下一步的排查思路了。當時想著,算了打印一下堆棧看看吧,看看到底干了啥~

在看的過程中發現這段日志:

"http-nio-6071-exec-9"#82daemonprio=5os_prio=0tid=0x00007fea9aed1000nid=0x62runnable[0x00007fe934cf4000] java.lang.Thread.State:RUNNABLE atorg.springframework.core.annotation.AnnotationUtils.getValue(AnnotationUtils.java:1058) atorg.springframework.aop.aspectj.annotation.AbstractAspectJAdvisorFactory$AspectJAnnotation.resolveExpression(AbstractAspectJAdvisorFactory.java:216) atorg.springframework.aop.aspectj.annotation.AbstractAspectJAdvisorFactory$AspectJAnnotation.(AbstractAspectJAdvisorFactory.java:197) atorg.springframework.aop.aspectj.annotation.AbstractAspectJAdvisorFactory.findAnnotation(AbstractAspectJAdvisorFactory.java:147) atorg.springframework.aop.aspectj.annotation.AbstractAspectJAdvisorFactory.findAspectJAnnotationOnMethod(AbstractAspectJAdvisorFactory.java:135) atorg.springframework.aop.aspectj.annotation.ReflectiveAspectJAdvisorFactory.getAdvice(ReflectiveAspectJAdvisorFactory.java:244) atorg.springframework.aop.aspectj.annotation.InstantiationModelAwarePointcutAdvisorImpl.instantiateAdvice(InstantiationModelAwarePointcutAdvisorImpl.java:149) atorg.springframework.aop.aspectj.annotation.InstantiationModelAwarePointcutAdvisorImpl.(InstantiationModelAwarePointcutAdvisorImpl.java:113) atorg.springframework.aop.aspectj.annotation.ReflectiveAspectJAdvisorFactory.getAdvisor(ReflectiveAspectJAdvisorFactory.java:213) atorg.springframework.aop.aspectj.annotation.ReflectiveAspectJAdvisorFactory.getAdvisors(ReflectiveAspectJAdvisorFactory.java:144) atorg.springframework.aop.aspectj.annotation.BeanFactoryAspectJAdvisorsBuilder.buildAspectJAdvisors(BeanFactoryAspectJAdvisorsBuilder.java:149) atorg.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator.findCandidateAdvisors(AnnotationAwareAspectJAutoProxyCreator.java:95) atorg.springframework.aop.aspectj.autoproxy.AspectJAwareAdvisorAutoProxyCreator.shouldSkip(AspectJAwareAdvisorAutoProxyCreator.java:101) atorg.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.wrapIfNecessary(AbstractAutoProxyCreator.java:333) atorg.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.postProcessAfterInitialization(AbstractAutoProxyCreator.java:291) atorg.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:455) atorg.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1808) atorg.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) atorg.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) atorg.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:353) atorg.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:233) atorg.springframework.beans.factory.support.DefaultListableBeanFactory.resolveNamedBean(DefaultListableBeanFactory.java:1282) atorg.springframework.beans.factory.support.DefaultListableBeanFactory.resolveNamedBean(DefaultListableBeanFactory.java:1243) atorg.springframework.beans.factory.support.DefaultListableBeanFactory.resolveBean(DefaultListableBeanFactory.java:494) atorg.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:349) atorg.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:342) atcn.hutool.extra.spring.SpringUtil.getBean(SpringUtil.java:117) ...... ......

上邊的堆棧發現了一個點: 在執行getBean的時候,執行了createBean方法。我們都知道Spring托管的Bean都是提前實例化好放在IOC容器中的。createBean要做的事情有很多,比如Bean的初始化,依賴注入其他類,而且中間還有一些前后置處理器執行、代理檢查等等,總之是一個耗時方法,所以都是在程序啟動時去掃描,加載,完成Bean的初始化。

而我們在運行程序線程堆棧中發現了這個操作。而且通過檢索發現竟然有近200處。

通過堆棧信息很快定位到執行位置:

RedisToolredisTool=BeanUtils.getBean(RedisMaster.class);

而RedisMaster類

@Component @Scope("prototype") publicclassRedisMasterimplementsIRedisTool{ //...... }

沒錯就是用了多例。而且使用的地方是Redis(系統使用Jedis客戶端,Jedis并非線程安全,每次使用都需要新的實例),接口對Redis的使用還是比較頻繁的,一個接口得有10次左右獲取Redis數據。也就是說執行10次左右的createBean邏輯 ...

嘆氣!!!

趕緊改代碼,直接使用萬能的 new 。

在看結果之前還有一點需要提一下,由于系統有大量統計耗時的操作。實現方式是通過:

longstart=System.currentTimeMillis(); //...... longend=System.currentTimeMillis(); longrunTime=start-end;

或者Hutool提供的StopWatch:

這里感謝一下huoger 同學的評論,當時還誤以為該方式能夠降低性能的影響,但是實際上也只是一層封裝。底層使用的是 System.nanoTime()。

StopWatchwatch=newStopWatch(); watch.start(); //...... watch.stop(); System.out.println(watch.getTotalTimeMillis());

而這種在并發量高的情況下,對性能影響還是比較大的,特別在服務器使用了一些特定時鐘的情況下。這里就不多說,感興趣的可以自行搜索一下。

最終結果:

ecab8378-95aa-11ed-bfe3-dac502259ad0.png

排查涉及的命令如下:

查詢服務進程CPU情況: top–Hp pid

查詢JVM GC相關參數:jstat -gc pid 2000 (對 pid [進程號] 每隔 2s 輸出一次日志)

打印當前堆棧信息: jstack -l pid >> stack.log

總結

結果是好的,過程是曲折的。總的來說還是知識的欠缺,文章看起來還算順暢,但都是事后諸葛亮,不對,應該是時候臭皮匠。基本都是邊查資料邊分析邊操作,前后花費了4天時間,嘗試了很多。

「Mysql :」Buffer Pool 、Change Buffer 、Redo Log 大小、雙一配置...

「代碼 :」異步執行,線程池參數調整,tomcat 配置,Druid連接池配置...

「JVM :」內存大小,分配,垃圾收集器都想換...

總歸一通瞎搞,能想到的都試試。

后續還需要多了解一些性能優化知識,至少要做到排查思路清晰,不瞎搞。

最后5行代碼有哪些:

「new Redis實例:」1

「耗時統計:」3

「SQL異步執行 @Async:」1

上圖最終的結果是包含該部分的,時間原因未對SQL進行處理,后續會考慮Redis原子操作+定時同步數據庫方式來進行,避免同時操數據庫

TODO

問題雖然解決了。但是原理還不清楚,需要繼續深挖。

「為什么createBean對性能影響這么大?」

如果影響這么大,Spring為什么還要有多例?

首先非并發場景速度還是很快的。這個毋庸置疑。畢竟接口響應時間不足50ms。

所以問題一定出在,并發createBean同一對象的鎖等待場景。根據堆棧日志,翻了一下Spring源碼,果然發現這里出現了同步鎖。相信鎖肯定不止一處。

ecd3fe5c-95aa-11ed-bfe3-dac502259ad0.png

org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory#doCreateBean

ed0a1eba-95aa-11ed-bfe3-dac502259ad0.png

「System.currentTimeMillis并發度多少才會對性能產生影響,影響有多大?」

很多公司(包括大廠)在業務代碼中,還是會頻繁的使用System.currentTimeMillis獲取時間戳。比如:時間字段賦值場景。所以,性能影響肯定會有,但是影響的門檻是不是很高。

「繼續學習性能優化知識」

吞吐量與什么有關?

首先,接口響應時長。直接影響因素還是接口響應時長,響應時間越短,吞吐量越高。一個接口響應時間100ms,那么1s就能處理10次。

其次,線程數。現在都是多線程環境,如果同時10個線程處理請求,那么吞吐量又能增加10倍。當然由于CPU資源有限,所以線程數也會受限。理論上,在 CPU 資源利用率較低的場景,調大tomcat線程數,以及并發數,能夠有效的提升吞吐量。

最后,高性能代碼。無論接口響應時長,還是 CPU 資源利用率,都依賴于我們的代碼,要做高性能的方案設計,以及高性能的代碼實現,任重而道遠。

CPU使用率的高低與哪些因素有關?

CPU使用率的高低,本質還是由線程數,以及CPU使用時間決定的。

假如一臺10核的機器,運行一個單線程的應用程序。正常這個單線程的應用程序會交給一個CPU核心去運行,此時占用率就是10%。而現在應用程序都是多線程的,因此一個應用程序可能需要全部的CPU核心來執行,此時就會達到100%。

此外,以單線程應用程序為例,大部分情況下,我們還涉及到訪問Redis/Mysql、RPC請求等一些阻塞等待操作,那么CPU就不是時刻在工作的。

所以阻塞等待的時間越長,CPU利用率也會越低。也正是因為如此,為了充分的利用CPU資源,多線程也就應運而生(一個線程雖然阻塞了,但是CPU別閑著,趕緊去運行其他的線程)。

一個服務線程數在多少比較合適(算上Tomcat,最終的線程數量是226),執行過程中發現即使tomcat線程數量是100,活躍線程數也很少超過50,整個壓測過程基本維持在20左右。

作者:FishBones

編輯:何安

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4907

    瀏覽量

    71225
  • 后端
    +關注

    關注

    0

    文章

    32

    瀏覽量

    2424

原文標題:高端操作,只改了五行代碼接口吞吐量提升了10多倍

文章出處:【微信號:AndroidPush,微信公眾號:Android編程精選】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何提高CYBT-243053-02吞吐量

    你好我們一直在使用“EZ-Serial Firmware: v1.4.13.13 Sep 22 2023 10:24:41”測試“CYBT-243053-02”,我們得到的吞吐量比 PUART 高
    發表于 02-27 06:56

    網卡吞吐量測試解決方案

    隨著互聯網的迅速發展,計算機日益成為人們生活中不可或缺的部分。伴隨著網絡業務的豐富,用戶對計算機網卡的要求也越來也高。如何對計算機網卡吞吐量進行合理的測試,已越來越成為眾多計算機網卡生產廠家日益關注
    發表于 12-23 11:07

    無線測試之吞吐量測試

    無線網絡測試之無線吞吐量測試方法、步驟
    發表于 06-25 08:40

    iperf固定吞吐量測試如何設置

    我有兩個CYW43907演示,并下載控制臺項目。我想使用IpFF命令來測試固定的UDP吞吐量。示例:IPEF-C 192.1680.1-P 5001 -I 2 -T 30 -U-B 60M,但客戶端
    發表于 11-06 14:09

    USB CDC吞吐量問題

    我從論壇上閱讀CDC的所有內容中得知,我的申請應該只是學術性的,并且遲疑不決。我的實時要求是在250毫秒內傳輸115200字節(吞吐量460800字節/秒)。從PIC32到PC。客戶需要他們的PC
    發表于 10-14 15:52

    如何計算延遲和吞吐量

    如何計算延遲和吞吐量?在ISE時序報告中,我們發現一個名為“最大組合路徑延遲”的參數是否與最大時鐘頻率有關?
    發表于 03-19 08:55

    提高BLE吞吐量的可行辦法

    提高BLE吞吐量的可行辦法如何實現更快的BLE吞吐量
    發表于 01-18 06:26

    如何通過觸發模型提高吞吐量

    如何通過觸發模型提高吞吐量
    發表于 05-11 07:00

    防火墻術語-吞吐量

    防火墻術語-吞吐量  術語名稱:吞吐量 術語解釋:網絡中的數據是由一個個數據包組成,防火
    發表于 02-24 11:06 ?1596次閱讀

    NI_LabVIEW三大關鍵技術提升測試速度與吞吐量

    NI LabVIEW三大關鍵技術提升測試速度與吞吐量
    發表于 03-22 15:02 ?0次下載

    debug 吞吐量的辦法

    Debug 網絡質量的時候,我們一般會關注兩個因素:延遲和吞吐量(帶寬)。延遲比較好驗證,Ping 一下或者 mtr[1] 一下就能看出來。這篇文章分享一個 debug 吞吐量的辦法。
    的頭像 發表于 08-23 09:17 ?1261次閱讀

    debug 吞吐量的辦法

    Debug 網絡質量的時候,我們一般會關注兩個因素:延遲和吞吐量(帶寬)。延遲比較好驗證,Ping 一下或者 mtr[1] 一下就能看出來。這篇文章分享一個 debug 吞吐量的辦法。
    的頭像 發表于 09-02 09:36 ?1154次閱讀

    iperf吞吐量的測試流程

    iperf吞吐量測試指南
    發表于 04-03 15:40 ?2次下載

    如何顯著提高ATE電源吞吐量

    作為一名測試工程師,你的工作并不容易。降低成本和提高系統吞吐量的壓力一直存在。本文中,我們將討論影響系統吞吐量的關鍵因素以及如何降低ATE測試成本。
    的頭像 發表于 11-08 14:59 ?1034次閱讀
    如何顯著提高ATE電源<b class='flag-5'>吞吐量</b>?

    影響ATE電源系統吞吐量的關鍵因素

    從串行設備測試改變為并行設備測試可以顯著地增加測試系統吞吐量。測試執行活動的大部分可能涉及使用DC電源設置條件和進行測量。配置測試系統,使其能夠使用多個直流電源同時對多個設備執行測試,是顯著提高測試吞吐量的一種經濟有效的方法。
    發表于 11-29 12:36 ?777次閱讀
    影響ATE電源系統<b class='flag-5'>吞吐量</b>的關鍵因素
    主站蜘蛛池模板: 精品视频第一页 | 99久久精品国产同性同志 | 久久av喷吹av高潮av萌白 | 2020天天谢天天吃天天麻豆v | 热热色原网址 | 久久久夜夜夜 | 亚洲国产精品第一区二区 | 韩国三级中文字幕hd浴缸戏 | 欧美久久久久久久 | 国产欧美精品区一区二区三区 | 国产mv欧美mv日产mv免费 | 国语自产拍91在线a拍拍 | 国产高清在线a视频大全 | 人人人妻人人人妻人人人 | 白晶晶果冻传媒国产今日推荐 | 7799国产精品久久99 | 天堂中文网 | 中国丰满老妇xxxxx交性 | 欧美色综合网站 | 最新在线视频 | 人妻少妇久久中文字幕 | 国产九九九精品 | 国产在线麻豆精品观看 | 一区二区免费在线观看视频 | 欧美色五月 | 蜜桃av噜噜一区二区三区策驰 | 久久狼人亚洲精品一区 | 91成人网页 | 久久日韩乱码一二三四区别 | 国产a国产国产片 | 99riav国产 | 国产精品无码永久免费888 | 国产美女裸体无遮挡免费视频 | 亚洲爆乳精品无码一区二区三区 | 久久综合九色综合欧美狠狠 | 国产69精品久久久久毛片 | 五月丁香综合激情六月久久 | 成人一区二区三区四区 | 欧美日韩不卡一区二区 | 少妇久久人人爽人人爽人人片欧美 | 大陆一级黄色片 | 午夜免费视频网站 | 91欧美在线 | 精精国产xxxx视频在线播放 | 国产一区二区网 | 成人免费黄色大片 | 国内精品视频在线 | 天天看天天操 | 免费a级 | y111111少妇蜜桃视频 | 久久久精品国产免费观看一区二区 | gv手机在线观看 | 成人性生交大片免费看r老牛网站 | 四虎视频在线观看 | 国产在线视频一区 | 国产第8页 | 全肉高h后宫gl | 欧美午夜精品久久久久免费视 | 无码熟妇αⅴ人妻又粗又大 | 特级黄色视频毛片 | 人人妻人人做人人爽 | 日本美女黄色 | 一个人在线观看免费视频www | 乱码av | 国产欧美一区二区三区在线看 | 亚洲亚洲人成综合网络 | 香港三日三级少妇三级99 | 台湾女老板性三级 | 国产aⅴ夜夜欢一区二区三区 | 日本久久久久久 | 337p粉嫩大胆噜噜噜 | 中国人与拘一级毛片 | 成人男同在线观看 | 精品久久久久久中文字幕2017 | 国产精品免费一区二区三区四区 | 无码人妻久久一区二区三区不卡 | 老司机67194精品线观看 | 色站在线 | 日本免费黄色 | 四川农村妇女野外毛片bd | 又黄又爽又高潮免费毛片 | 青青久操 | 亚洲精品久久久久久蜜桃 | 天堂乱码一二三区 | 天天色天天爽 | 色哟哟在线观看视频 | 日韩国产激情 | 亚洲欧洲在线视频 | 国产高潮又爽又刺激的视频免费 | 亚洲人成色77777在线观看 | 综合久久久久久久 | 国产人成看黄久久久久久久久 | 精品少妇ay一区二区三区 | 国产真实伦视频 | 久久亚洲a v | 国精产品999国精产品蜜臀 | 佐佐木希av一区二区三区 | 国产日批视频在线观看 | 成人免费播放 | 99精品视频在线观看 | 亚洲乱码一区av春药高潮 | 精品国产视频 | 伊人手机视频 | 丝袜 中出 制服 人妻 美腿 | 国产乱码77777777 | 91蜜桃 | 痞帅大猛xnxx精品打桩 | 欧美精品动漫 | 无码av动漫精品一区二区免费 | 人妻少妇精品视频二区 | 少妇特黄a一区二区三区 | 亚洲欧洲综合 | 亚洲一区二区激情 | a级片在线看 | 浴室人妻的情欲hd三级国产 | 夜色综合网 | 日本不卡一区二区三区 | 亚洲暴爽av天天爽日日碰 | 视频二区欧美 | 国产又黄又大视频 | 三级一区二区 | 国产熟妇乱xxxxx大屁股网 | 欧美日韩少妇精品 | 最新中文字幕av无码不卡 | 欧美大胆a视频 | 18黄暴禁片在线观看 | 高h全肉老汉嫩草文 | yy成人综合网 | 久久久九九九热 | 成人做爰www免费看视频网站 | 黄色网视频 | 美玉足脚交一区二区三区图片 | 日韩在线一区二区三区四区 | 永久免费网站直接看 | 啪啪av| 国产精品国产成人国产三级 | 999久久久免费看 | 国产a国产片国产 | 毛片在线免费播放 | 久久国产精品99国产精 | 午夜精品久久99蜜桃的功能介绍 | 国产老太婆免费交性大片 | 精品国产999久久久免费 | 狠狠搞av | 成人免费毛片果冻 | 伊人自拍视频 | 欧美大肥婆大肥bbbbb | 国产淫视 | 男人猛吃奶女人爽视频 | 亚洲精品一区二区三区丝袜 | 狠狠躁天天躁中文字幕 | 国产一级一片免费播放 | 鲁丝一区二区三区 | 中文字幕亚洲国产 | 国产偷v国产偷∨精品视频 国产偷v国产偷v精品视频 | 狠狠撸视频 | 李丽珍a级裸体啪啪 | 亚洲乱码国产乱码 | 国内精品久久久人妻中文字幕 | 国产精品久久久久久久久久久不卡 | 精品卡一卡二卡3卡高清乱码 | 51视频精品全部免费 | www.色就是色 | 久久精品无码免费不卡 | 欧美天堂色 | 日韩精品1 | 日韩欧美不卡视频 | 调教女少妇二区三区视频 | 色国产精品一区在线观看 | 亚洲色欲色欲欲www在线 | 国产一区调教91鞭打 | av一级二级 | 国产理论在线 | 国产性色强伦免费视频 | 少妇无码一区二区二三区 | 国产精品一区二区久久乐夜夜嗨 | 欧美噜噜久久久xxx 久久精品一区二区免费播放 | 亚欧美无遮挡hd高清在线视频 | 日韩高清在线 | 2021国产在线视频 | 成人免费午夜视频69影院 | 国产欧美一区二区三区免费看 | 中文字幕涩涩久久乱小说 | 亚洲乱码国产乱码精品精网站 | av网站大全免费 | 日韩国产精品一区二区 | 国产精品 高清 尿 小便 嘘嘘 | 亚洲 视频 一区 | 久久高清内射无套 | 精品999视频 | 欧美精品亚洲一区 | 亚洲成人一区在线 | 99精品人妻国产毛片 | 国产精品久久一区二区三区动漫 | 亚洲二区在线视频 | 老司机伊人 | 少妇熟女久久综合网色欲 | 日本视频中文字幕 | 免费看涩涩视频软件 | 麻豆av福利av久久av | 久久免费播放 | 国产农村妇女毛片精品久久麻豆 | 国产精品99久久久久久夜夜嗨 | 成人开心网 | 亚洲va韩国va欧美va精品 | 国产欧美日韩精品一区 | 成人91视频 | 日韩无 | 午夜窝窝 | 亚洲乱码国产乱码精品精剪 | 国产综合在线播放 | 99成人在线 | 亚洲视频欧美 | 欧洲熟妇色xxxxx视频 | 免费精品视频在线观看 | 一区亚洲 | 性欧美videos另类艳妇3d | 天天爽夜夜爽一区二区三区 | 日韩黄页在线观看 | 国产精品 欧美日韩 | 99在线国产| 嫩草影院在线视频 | 国产肥白大熟妇bbbb | 久久久久久a | 日本三级香港三级三级人!妇久 | 粉嫩av国产一区二区三区 | 九九自拍 | 久久99草 | 天堂а√在线中文在线新版 | 俄罗斯黄色录像 | 亚洲19禁大尺度做爰无遮挡 | 国产精品人妻一区夜夜爱 | 青青草久久 | 欧美性色视频 | 精品欧美小视频在线观看 | 夜色一区| 色播在线播放 | 韩国三级国产 | 军人粗大的内捧猛烈进出视频 | 密桃成熟时在线观看 | 夜噜噜| 第一福利在线观看 | 好看的黄色录像 | 国产精品成人久久久久久久 | 国产高潮流白浆喷水视频 | 国模私拍av | 国产偷久久一区精品69 | 少妇性色av | 欧美色综合天天久久综合精品 | 哺乳一区二区三区中文视频 | 国外亚洲成av人片在线观看 | 俺去俺来也在线www色官网 | 欧美精品乱码久久久久久按摩 | 精品一区二区三区无码免费视频 | 激情小说在线 | 国产毛片久久久久久美女视频 | 国产区一区 | h亚洲| 欧美性猛交xxxx乱大交3 | 草草影院在线观看视频 | 又爽又色禁片1000视频免费看 | 亚洲激情在线播放 | 午夜影院免费观看 | 狠狠色噜噜狠狠狠狠999米奇 | 亚洲日韩中文第一精品 | 一二三四国产精品 | 国产精品自拍在线观看 | 久久久无码精品亚洲日韩蜜桃 | 高级会所人妻互换94部分 | 亚洲欧美色图视频 | 天堂禾欧美城网站 | 国自产拍偷拍精品啪啪一区二区 | 免费一区二区三区 | 亚洲高清在线 | 成人性生交大片免费看r老牛网站 | 91视频com| 人人妻人人藻人人爽欧美一区 | 天天躁日日躁狠狠躁av麻豆 | 天天噜天天干 | 欧美人与禽zozzo禽性配 | 日本男人激烈吮乳吃奶 | 一本一生久久a久久精品综合蜜 | 人人澡 人人澡 人人看 | 国产精品免费久久久久 | 国产免费一区二区三区免费视频 | 狠狠色伊人亚洲综合成人 | 69精产国品一二三产区视频 | 国产精品爽爽久久 | 黄色免费的视频 | 国产九九 | 少妇高潮太爽了在线观看 | 色婷婷综合久久久中文字幕 | 欧美成人午夜影院 | 国产精品高潮呻吟久久久久久 | 熟女人妻aⅴ一区二区三区60路 | 91亚洲国产 | 九九久久国产精品 | 国产在线视频www色 日韩精品av一区二区三区 | 日本一级特黄高潮 | 国产91天堂素人搭讪系列 | 国产精品国产免费无码专区不卡 | 一级片在线视频 | 欧美激情国产精品 | 国产午夜禁区精品视频 | www桃色av嫩草com | 精品无码中文字幕在线 | 五月激情六月婷婷 | 免费观看又色又爽又黄动态 | 久久天天躁夜夜躁狠狠85麻豆 | 继室辣文h1v1| 可以免费看成人啪啪过程的软件 | 欧美大尺度床戏做爰 | 中文字幕精品无码一区二区三区 | 欧洲国产视频 | 午夜毛片 | 91精品国产一区二区 | 欧美v亚洲v综合ⅴ国产v | 国产在线不卡视频 | xxx在线视频| 成人看的羞羞视频免费观看 | 国产精品露脸视频 | 日本黄色性视频 | 又黄又爽又色的免费软件 | 日韩精品久久久肉伦网站 | 香蕉婷婷| 国产激情综合五月久久 | 一个色在线视频 | 九九热在线免费视频 | 伊人久久大香线蕉综合网站 | 四虎国产精品成人 | 婷婷激情四射 | 日本人xxxxxxxxx19 | 看全色黄大色黄大片大学生 | 久久中文一区 | 中国黄色一级大片 | 欧美精品在线看 | 午夜快播 | 免费一区二区三区四区 | 91porn国产成人福利论坛 | 免费看欧美黑人毛片 | 91精品久久久久久久99软件 | 国产成人精品一区二三区在线观看 | 色偷偷偷久久伊人大杳蕉 | 婷婷情更久日本久久久片 | 波多野成人无码精品电影 | 久久亚洲综合 | 99九九精品视频 | 成人免费av网址 | 欧美一区二区三区喷汁尤物 | 最新中文字幕免费视频 | 国产精品一区二区三区四区五区 | 亚洲一区二区福利视频 | 可以免费看的黄色网址 | 国产精品久久久久久久蜜臀 | 亚洲综合天堂一区二区三区 | 亚洲一区国产精品 | 操碰97| 懂色av一区 | 日本无码欧美一区精品久久 | 婷婷精品国产一区二区三区日韩 | 久久人人爽爽人人爽人人片av | 精品一区二区三区视频 | 综合网日日天干夜夜久久 | 国产偷自拍 | 亚洲欧美激情精品一区二区 | 国产精品亚洲а∨天堂2021 | 亚洲欧美久久 | 男人av在线 | 日本一区午夜艳熟免费 | 在线毛片观看 | 亚洲天堂久久新 | 欧美精品亚洲精品日韩专区 | 91精品老司机久久一区啪 | 国偷自产一区二区三区蜜臀 | 美女国产精品视频 | 一区二区免费看 | 久久精品福利视频 | 成人资源在线观看 | 99干99 | 少妇精xxxxx 少妇精品 | 青草伊人网 | 91性视频| 最新福利在线 | 免费在线观看av网站 | 亚洲人体视频 | 午夜福利理论片高清在线 | 亚洲欧美一区二区三区三高潮 | 鲁丝片一区二区三区 | 天天操天天操天天操天天操 | 亚洲啪啪少妇裸体艺术 | 特级毛片在线大全免费播放 | 国产片淫级awww | 亚洲国产精华液网站w | 日韩色道| 国产精品一区二区三区在线播放 | 自拍视频一区二区 | 好大好湿好硬顶到了好爽视频 | 国产又粗又猛又爽69xx | 波多野结衣av无码 | 欧美xxxxxxxxx | 丁香在线视频 | 免费观看羞羞视频网站 | 永久免费观看av | 亚洲国产成人久久精品大牛影视 | 亚洲一区二区无码偷拍 | 日韩福利一区二区 | 中文字幕啪啪 | yy111111少妇影院免费观看 | 欧美不卡在线视频 | 亚洲欧美另类视频 | 五月婷婷爱爱 | 精品人妻无码一区二区色欲产成人 | 亚洲欧洲日韩综合 | 91麻豆精品国产91久久久点播时间 | 老头老太吃奶xb视频 | 亚洲一级二级三级 | 99久久精品日本一区二区免费 | 特黄特色大片免费播放叫疼 | 15—16女人毛片 | 国内自拍视频一区二区三区 | 国产一级片视频 | 一区二区在线播放视频 | 毛片黄片免费看 | h文日记高h污肉1v1 | 久久久久久九九99精品 | www.久久成人 | 亚洲欧美日韩综合一区二区 | 男人扒开添女人下部免费视频 | 国产白丝无码免费视频 | 三级欧美视频 | 视频一区二区欧美 | 91超薄肉色丝袜交足高跟凉鞋 | 日韩免费黄色 | 国产在线视频99 | 欧美极品少妇xxx | 午夜性爽| 山村大伦淫第1部分阅读小说 | 亚洲日韩国产精品第一页一区 | 日本 在线 | 色妞色综合久久夜夜 | 日本高清视频一区 | 色翁荡熄又大又硬又粗又视频 | 琪琪色av| 久久亚洲精品ab无码播放 | 国产无遮挡无码视频免费软件 | 健美女人做爰视频 | 成人精品视频网站 | 在线观看视频毛片 | 97久久天天综合色天天综合色hd | 夜夜操夜夜骑 | 午夜激情影院在线观看 | 超碰在线人人干 | 色偷偷噜噜噜亚洲男人 | 亚洲日本欧美日韩高观看 | 亚洲精品高清在线观看 | 亚洲国产aaa | 久久国产精品精品国产色婷婷 | 51成人做爰www免费看网站 | 波多野结衣av高清一区二区三区 | 国产精品九九九九九 | 天天看片天天av免费观看 | 又色又爽又黄18禁美女裸身无遮挡 | 国产精品香蕉在线观看 | 欧美性受xxxx狂喷水 | 99在线视频观看 | 欧美在线视频一区 | 亚洲精品久久久久久久久久久久久久 | 亚洲精品一区二三区 | 国产秋霞 | 国产精品99久久99久久久动漫 | 亚洲天堂男人影院 | 人人看超碰 | 91精品国产91久久久久久黑人 | 国产精品毛片完整版视频 | 色中色综合 | 欧美乱插| 九色网站在线观看 | 人妻熟女一区二区三区app下载 | www.亚洲视频 | 欧美特级aaa | 欧美人与动牲交a精品 | 欧美成人午夜精品 | 国产成人精品久久亚洲高清不卡 | 麻豆视频在线 | 精品国产1区 | 国产不卡视频在线观看 | 亚洲色偷偷色噜噜狠狠99网 | 99热免费精品 | 成人动漫在线免费观看 | 国产老头和老太xxxxx视频 | 久久久国产视频 | 国产乱女淫av麻豆国产 | 欧美一级不卡 | 在线天堂视频 | 一本大道久久a久久精二百 一本大道久久a久久精品综合1 | 精品欧美色视频网站在线观看 | 青青青草视频在线 | 久久久久久久免费 | 中文字幕丰满伦子无码 | 亚洲免费视频网站 | 日韩国产欧美精品 | 黑人中文字幕一区二区三区 | 水蜜桃91 | 日本不卡一区二区三区 | 狠狠爱综合| 国产丝袜美女精品av | 欧美视频在线观看,亚洲欧 欧美视频在线观看视频 | 精品不卡视频 | 成人在线免费高清视频 | 亚洲人成无码网站18禁10 | 亚洲区免费中文字幕影片|高清在线观看 | 男人天堂网址 | 91夫妻论坛| 九色精品在线 | 中国白嫩丰满人妻videos | 成人免费视频7778 | 毛片网站网址 | 国产黄色在线看 | 中文在线a天堂 | 97视频人人 | 国产一区二区日本 | 尤物99国产成人精品视频 | 日本熟妇丰满大白屁毛片 | 欧美色欧美亚洲另类七区 | 侵犯亲女在线播放视频 | 六姐妹免费在线观看 | 国语对白做受69 | 黑人做爰xxxⅹ性欧美有限公司 | 韩国甜性涩爱 | 日本三级免费看 | 国产av激情久久无码天堂 | 手机免费av片 | 国产在线精品观看 | 欧美在线激情视频 | 国产精品第1页 | 欧美成人黑人xx视频免费观看 | 久久99国内精品自在现线 | 国产午夜视频在线观看 | 午夜成人免费影院 | 男人天堂社区 | 熟妇人妻激情偷爽文 | 99视频精品全部免费免费观看 | 亚洲中文字幕av无码区 | 国产精品国产三级国产普通 | 亚洲人成色7777在线观看不卡 | 成人影片网址 | 欧美一区二区三区影院 | 无遮无挡爽爽免费视频 | 狠狠色成色综合网 | 国产一区二区精品久久岳 | av免费不卡国产观看 | 法国伦理少妇愉情 | 色屁屁草草影院ccyycom | 欧美综合天天夜夜久久 | 无码国产精品一区二区免费3p | 成人免费ā片在线观看 | 日韩在线精品强乱中文字幕 | 欧美性视频在线播放 | 久久午夜伦理 | 欧美老熟妇牲交 | 欧美激情综合五月色丁香小说 | 第一136av福利视频导航 | 久久艹精品 | 亚洲男人天堂网 | 久久精品一二 | a级在线观看视频 | 天天爽夜夜爽夜夜爽精品视频 | 超碰免费97 | 黄色小说在线免费观看 | 古代性色禁片在线播放 | 成人性生活免费看 | 夜影影视剧大全在线观看 | 天堂资源在线www在线观看 | 国产裸体美女永久免费无遮挡 | 久久久久久一级片 | 婷婷综合久久 | 日韩激情第一页 | 色八戒av| 免费国偷自产拍精品视频 | 在线三级网址 | 天堂av2019| 日韩视频在线观看 | 久久久视频在线 | 国产精品99999 | 蜜臀av在线播放一区二区三区 | v片在线观看 | 久久精品中文闷骚内射 | 黑色丝袜国产精品 | 国产伦精品一区二区三区四区 | 成人h免费观看视频 | 影音先锋中文字幕资源 | 亚洲熟女乱色一区二区三区 | 一级黄色短视频 | 葵司av三级在线看 | 成人性视频欧美一区二区三区 | 日韩欧美性视频 | 欧美日韩 一区二区三区 | 青青草免费在线视频 | 久久久久久久久久久久久久久 | 99精品欧美一区二区三区综合在线 | 性感美女一级片 | 国产无区一区二区三麻豆 | 99色综合 | 亚洲日本欧美在线 | 成人爽a毛片在线视频 | 精品在线一区二区三区 | 午夜av免费在线观看 | 天堂а√在线最新版中文在线 | 美女天天干 | 亚洲卡一卡二 | 美女性感毛片 | 天天澡天天狠天干天 | 国产影片中文字幕 | www久久国产 | 四虎影视成人永久免费观看视频 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品