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

提升Node.js服務(wù)穩(wěn)定性,需要關(guān)注哪些指標(biāo)?

開(kāi)發(fā) 前端
本篇文章我先給大家介紹一些在服務(wù)端穩(wěn)定性上面我會(huì)關(guān)注的一些指標(biāo)。

本文轉(zhuǎn)載自微信公眾號(hào)“code秘密花園”(code_mmhy)。

作為一個(gè)前端工程師,大家日常也會(huì)維護(hù)一些 Node.js 服務(wù),對(duì)于一個(gè)服務(wù)我們首先要關(guān)注的就是它的穩(wěn)定性,可能大部分同學(xué)對(duì)服務(wù)端的很多概念不會(huì)理解的特別深刻,所以在穩(wěn)定性上面也不知道去關(guān)注什么。

本篇文章我先給大家介紹一些在服務(wù)端穩(wěn)定性上面我會(huì)關(guān)注的一些指標(biāo)。

整體分為兩個(gè)大的方面:

  • 資源穩(wěn)定性:即當(dāng)前服務(wù)所處的運(yùn)行環(huán)境的一些指標(biāo),一般如果資源穩(wěn)定性的指標(biāo)除了問(wèn)題,那么服務(wù)有可能已經(jīng)有了大問(wèn)題,甚至處于不可用狀態(tài)。
  • 服務(wù)運(yùn)行穩(wěn)定性:服務(wù)運(yùn)行過(guò)程中產(chǎn)生的異常、日志、延遲等等。

[[376610]]

一、資源穩(wěn)定性

1. CPU

(1) CPU Load

CPU Load 即 CPU 的負(fù)載,表示在一段時(shí)間內(nèi) CPU 正在處理以及等待 CPU 處理的進(jìn)程數(shù)之和的統(tǒng)計(jì)信息。CPU 完全空閑時(shí),CPU Load 為0,CPU 工作越飽和,CPU Load越大。

如果 CPU 每分鐘最多處理 100 個(gè)進(jìn)程,系統(tǒng)負(fù)荷0.2,意味著 CPU 在這1分鐘里只處理20個(gè)進(jìn)程。

下面借用下阮一峰的例子:我們把 CPU 想象成一座大橋,橋上只有一根車道,所有車輛都必須從這根車道上通過(guò)。系統(tǒng)負(fù)荷為0,意味著大橋上一輛車也沒(méi)有。系統(tǒng)負(fù)荷為0.5,意味著大橋一半的路段有車。

系統(tǒng)負(fù)荷為 1.0,意味著大橋的所有路段都有車,也就是說(shuō)大橋已經(jīng)"滿"了。但是必須注意的是,直到此時(shí)大橋還是能順暢通行的。系統(tǒng)負(fù)荷為 1.7,意味著車輛太多了,大橋已經(jīng)被占滿了(100%),后面等著上橋的車輛為橋面車輛的70%。

如果容器有 2個(gè)CPU 表明系統(tǒng)負(fù)荷可以達(dá)到2.0,此時(shí)每個(gè)CPU都達(dá)到100%的工作量。推廣開(kāi)來(lái),n個(gè)CPU的電腦,可接受的系統(tǒng)負(fù)荷最大為n。多核CPU與多CPU效果類似,所以考慮系統(tǒng)負(fù)荷的時(shí)候,必須考慮這臺(tái)電腦有幾個(gè)CPU、每個(gè)CPU有幾個(gè)核心。

(2) CPU Usage

CPU Usage 代表了程序?qū)?CPU 時(shí)間片的占用情況,也就是我們常說(shuō)的 CPU 利用率,它可以反應(yīng)某個(gè)采樣時(shí)間內(nèi) CPU 的使用情況,是否處于持續(xù)工作狀態(tài),可以從 CPU 核心、占用率百分比兩個(gè)角度來(lái)看。

正常情況下,CPU Usage 高,CPU Load 也會(huì)比較高。CPU Usage 低,CPU Load也會(huì)比較低。也有例外情況:

CPU Load 低,CPU Usage 高:如果 CPU 執(zhí)行的任務(wù)數(shù)很少,則 CPU Load 會(huì)低,但是這些任務(wù)都是CPU密集型,那么利用率就會(huì)高。

CPU Load 高,CPU Usage 低:如果CPU執(zhí)行的任務(wù)數(shù)很多,則 CPU Load 會(huì)高,但是在任務(wù)執(zhí)行過(guò)程中 CPU 經(jīng)??臻e(比如等待IO),那么利用率就會(huì)低。

2. 內(nèi)存

(1) 內(nèi)存 RSS

RSS :常駐內(nèi)存集(Resident Set Size)用于表示系統(tǒng)有多少內(nèi)存分配給當(dāng)前進(jìn)程,它能包括所有堆棧和堆內(nèi)存,是 OOM 主要參考的指標(biāo)。

(1) 內(nèi)存 V8 Heap

表示 JavaScript 代碼執(zhí)行占用的內(nèi)存。

一般我們可以看到 V8 Heap 區(qū)分了 Used 和 Total,這里是主要是因?yàn)?V8 的內(nèi)存回機(jī)制,在進(jìn)程中有一些內(nèi)存是可回收并且沒(méi)有馬上被回收的,Total - Used 實(shí)際上是指當(dāng)前可以回收但沒(méi)有回收的內(nèi)存。

(3) 內(nèi)存 max-old-space-size

V8 允許的最大的老生代內(nèi)存大小,可以簡(jiǎn)單認(rèn)為是一個(gè) Node.js 進(jìn)程長(zhǎng)期可維持的最大內(nèi)存大小。進(jìn)程的 HeapTotal 接近這個(gè)值時(shí),進(jìn)程很可能會(huì)因?yàn)?V8 abort 而退出。

(4) 內(nèi)存 External

Node.js 中的 Buffer 是基于 V8 Uint8Array 的封裝,因此在 Node.js 中使用 Buffer 時(shí),其內(nèi)存占用量會(huì)被記錄到 External 中。

加之 external string 在 Node.js 中使用的得很少,因此我們可以認(rèn)為對(duì)一個(gè)常見(jiàn)的 Node.js web 應(yīng)用來(lái)說(shuō),process.memoryUsage() 中 的 External 主要指的就是Buffer占用的內(nèi)存量。Buffer經(jīng)常被用在 Node.js 中與 IO 相關(guān)的 api 上,如:文件操作、網(wǎng)絡(luò)通信等。

3. Libuv

Libuv 是跨平臺(tái)的、封裝操作系統(tǒng) IO 操作的庫(kù)。Node.js 使用 Libuv 作為自己的 event loop,并由 uv 負(fù)責(zé) IO 操作,諸如:net、dgram、fs、tty 等模塊,以及 Timer 等類都可以認(rèn)為是基于 uv 的封裝。因此與 uv 相關(guān)的數(shù)據(jù)指標(biāo)可以一定程度上反應(yīng)出 Node.js 應(yīng)用的穩(wěn)定性。

(1) Libuv Handles

libuv handles 指示了 Node.js 進(jìn)程中各種IO對(duì)象(tcp, udp, fs, timer 等對(duì)象)的數(shù)量。對(duì)于常見(jiàn)的 web 應(yīng)用來(lái)說(shuō), libuv handles 較高通常意味著當(dāng)前請(qǐng)求量較大或者有 tcp 連接等未被正確釋放。之前在線上業(yè)務(wù)中還會(huì)經(jīng)常發(fā)現(xiàn)有 handle 沒(méi)有被關(guān)閉,如:tcp、udp socket 不斷被創(chuàng)建,并且沒(méi)有被關(guān)閉,導(dǎo)致操作系統(tǒng)的端口被耗盡的問(wèn)題出現(xiàn)。

(2) Libuv Latency

libuv latency 并不是 libuv 或 Node.js API 中可以直接獲取到的數(shù)據(jù)。目前主流的、對(duì) libuv latency 的計(jì)算方式,都是通過(guò) setTimeout() 來(lái)設(shè)置 timer ,并記錄回調(diào)函數(shù)被調(diào)用時(shí)所消耗的時(shí)間和預(yù)計(jì)消耗的時(shí)間之間的差值作為 latency ,如:

  1. const kInterval = 1000
  2. const start = getCurrentTs(); 
  3. setTimeout(() => { 
  4.     const delay = Math.max(getCurrentTs() - start - kInterval, 0); 
  5. }, kInterval); 

latency 數(shù)值較高通常意味著當(dāng)前應(yīng)用的 eventloop 過(guò)于繁忙,導(dǎo)致簡(jiǎn)單的操作也不能按時(shí)完成。而對(duì)于 Node.js 進(jìn)程來(lái)說(shuō),這類情況很可能是由調(diào)用了耗時(shí)較長(zhǎng)的同步函數(shù)或是阻塞的 IO 操作導(dǎo)致。

發(fā)生這類問(wèn)題時(shí),對(duì)應(yīng)的線程將沒(méi)辦法進(jìn)行正常的服務(wù),比如對(duì)于 http server 來(lái)說(shuō),在這段時(shí)間內(nèi)的請(qǐng)求會(huì)得不到響應(yīng)。因此我們需要保證主線程的 libuv latency盡可能的小。

二、服務(wù)運(yùn)行穩(wěn)定性

1. 狀態(tài)碼

這個(gè)應(yīng)該不用多說(shuō),對(duì)于服務(wù)產(chǎn)生的所有 5xx 的狀態(tài)碼都屬于服務(wù)器在嘗試處理請(qǐng)求時(shí)發(fā)生內(nèi)部錯(cuò)誤,這些錯(cuò)誤可能是服務(wù)器本身的錯(cuò)誤,而不是請(qǐng)求出錯(cuò),都是需要我們關(guān)注的:

  • 500 (服務(wù)器內(nèi)部錯(cuò)誤) 服務(wù)器遇到錯(cuò)誤,無(wú)法完成請(qǐng)求。
  • 501 (尚未實(shí)施) 服務(wù)器不具備完成請(qǐng)求的功能。例如,服務(wù)器無(wú)法識(shí)別請(qǐng)求方法時(shí)可能會(huì)返回此代碼。
  • 502 (錯(cuò)誤網(wǎng)關(guān)) 服務(wù)器作為網(wǎng)關(guān)或代理,從上游服務(wù)器收到無(wú)效響應(yīng)。
  • 503 (服務(wù)不可用) 服務(wù)器目前無(wú)法使用(由于超載或停機(jī)維護(hù))。通常,這只是暫時(shí)狀態(tài)。
  • 504 (網(wǎng)關(guān)超時(shí)) 服務(wù)器作為網(wǎng)關(guān)或代理,但是沒(méi)有及時(shí)從上游服務(wù)器收到請(qǐng)求。
  • 505 (HTTP 版本不受支持) 服務(wù)器不支持請(qǐng)求中所用的 HTTP 協(xié)議版本。
  • 506 由《透明內(nèi)容協(xié)商協(xié)議》(RFC 2295)擴(kuò)展,代表服務(wù)器存在內(nèi)部配置錯(cuò)誤:被請(qǐng)求的協(xié)商變?cè)Y源被配置為在透明內(nèi)容協(xié)商中使用自己,因此在一個(gè)協(xié)商處理中不是一個(gè)合適的重點(diǎn)。
  • 507 服務(wù)器無(wú)法存儲(chǔ)完成請(qǐng)求所必須的內(nèi)容。這個(gè)狀況被認(rèn)為是臨時(shí)的。
  • 509 服務(wù)器達(dá)到帶寬限制。這不是一個(gè)官方的狀態(tài)碼,但是仍被廣泛使用。
  • 510 獲取資源所需要的策略并沒(méi)有沒(méi)滿足。

錯(cuò)誤日志服務(wù)運(yùn)行過(guò)程中產(chǎn)生的錯(cuò)誤日志數(shù)量也是衡量一個(gè)服務(wù)是否穩(wěn)定的重要指標(biāo),對(duì)于錯(cuò)誤日志上報(bào),不同公司的業(yè)務(wù)可能有不同的實(shí)現(xiàn),但是應(yīng)該大同小異,一般日志都分為 INFO、WARN、ERROR 幾個(gè)級(jí)別,我們需要關(guān)注的是 ERROR 及以上級(jí)別的日志。

一般在我們的業(yè)務(wù)邏輯中,都需要對(duì)服務(wù)運(yùn)行的過(guò)程中產(chǎn)生的異常進(jìn)行捕獲以及日志上報(bào),但是我們不可能在所有程序運(yùn)行的節(jié)點(diǎn)進(jìn)行異常捕獲,另外 try catch 也不是萬(wàn)能的,它并不能捕獲異步異常,所以我們一般在我們使用的 Node.js 框架中的關(guān)鍵節(jié)點(diǎn)也會(huì)集成日志的上報(bào),以 KOA 為例,我們需要監(jiān)聽(tīng) app 的 error 事件:

  1. this.on('error', (error, ctx) => { 
  2.     if (error.status === 404) { 
  3.         return; 
  4.     } 
  5.     const message = error.stack || error.message; 
  6.     log(message); 
  7. }); 

另外,我們還需要在 uncaughtException、unhandledRejection 中進(jìn)行異常上報(bào):

  1. process.on('unhandledRejection', (error) => { 
  2.     if (error) { 
  3.         log({ 
  4.             level: 'error', 
  5.             location: '[gulu-core]::UnhandledRejection', 
  6.             message: error.stack || error.message, 
  7.         }); 
  8.     } 
  9. }); 
  10. process.on('uncaughtException', (error) => { 
  11.     log({ 
  12.         level: 'error', 
  13.         location: '[gulu-core]::UncaughtException', 
  14.         message: error.stack || error.message, 
  15.     }); 
  16.     process.exit(1); 
  17. }); 

進(jìn)行了這樣的操作后,所有在你的業(yè)務(wù)邏輯中產(chǎn)生的異常都會(huì)被捕獲并上報(bào),所以對(duì)于你想了解到的異常你不應(yīng)該手動(dòng)進(jìn)行 try catch,而是將它們拋出到框架進(jìn)行捕獲上報(bào)。

2. pm2 日志

對(duì)于程序中我們自己打印出的一些 console ,一般生產(chǎn)環(huán)境是默認(rèn)不會(huì)被記錄的。例如某些程序異常我們可能自己通過(guò) try catch 進(jìn)行了捕獲,并使用 console 輸出了 ERROR INFO ,這樣的異常并不會(huì)被當(dāng)作錯(cuò)誤日志進(jìn)行捕獲。

一般在線上運(yùn)行的 Node 服務(wù)都是使用 PM2 啟動(dòng)的。PM2 是 node 進(jìn)程管理工具,可以利用它來(lái)簡(jiǎn)化很多 node 應(yīng)用管理的繁瑣任務(wù),如性能監(jiān)控、自動(dòng)重啟、負(fù)載均衡等。

我們可以通過(guò) pm2 log 命令來(lái)查看當(dāng)前程序運(yùn)行的實(shí)時(shí)日志,注意這個(gè)日志是包括開(kāi)發(fā)者自己打出來(lái)的一些 console 的。

另外 pm2 也支持查看所有歷史產(chǎn)生的日志,我們可以通過(guò)一些 Error 之類的關(guān)鍵字去檢索錯(cuò)誤日志。

3. 延時(shí)

延時(shí)情況也是衡量一個(gè)服務(wù)穩(wěn)定性的重要指標(biāo),一些非常慢的接口除了會(huì)影響用戶體驗(yàn),還有可能會(huì)影響數(shù)據(jù)庫(kù)的穩(wěn)定性,一般我們?cè)诮涌诘难訒r(shí)和數(shù)據(jù)庫(kù)的延時(shí)兩個(gè)方面關(guān)注服務(wù)延時(shí),這個(gè)比較好理解,這里我就不再多說(shuō)了。

4. QPS

QPS:全名 Queries Per Second,意思是“每秒查詢率”,是一臺(tái)服務(wù)器每秒能夠響應(yīng)的查詢次數(shù),是對(duì)一個(gè)特定的查詢服務(wù)器在規(guī)定 Queries Per Second 時(shí)間內(nèi)所處理流量多少的衡量標(biāo)準(zhǔn)。簡(jiǎn)單的說(shuō),QPS = req / sec = 請(qǐng)求數(shù)/秒。它代表的是服務(wù)器的機(jī)器的性能最大吞吐能力。

正常來(lái)講服務(wù)的 QPS 可能隨著時(shí)間的變化進(jìn)行有規(guī)律的增長(zhǎng)或減小,但是如果在某段時(shí)間內(nèi) QPS 發(fā)生了成倍的數(shù)量級(jí)的增長(zhǎng),那么有可能你的服務(wù)正在遭受 DDoS 攻擊,或者正在被非法調(diào)用。

 

責(zé)任編輯:趙寧寧 來(lái)源: code秘密花園
相關(guān)推薦

2020-07-28 08:07:14

ElasticSear

2024-07-30 15:02:44

2011-07-28 16:17:10

2013-05-23 16:00:20

負(fù)載均衡網(wǎng)絡(luò)優(yōu)化網(wǎng)絡(luò)升級(jí)

2023-04-26 18:36:13

2022-05-09 09:00:43

軟件項(xiàng)目軟件系統(tǒng)軟件尅發(fā)

2024-11-05 16:45:02

2010-08-11 09:08:51

KDE 4.5.0

2009-02-04 09:22:40

穩(wěn)定性服務(wù)器測(cè)試

2022-12-15 09:56:27

2018-06-27 16:54:11

紅帽Linux 6.10企業(yè)

2025-07-21 01:00:00

UDP性能QPS

2011-12-05 09:39:57

Node.js

2012-07-12 10:15:15

Node.js

2012-04-12 13:48:37

無(wú)線網(wǎng)絡(luò)

2016-10-18 13:31:23

CronPaxos服務(wù)

2023-06-30 08:43:36

2022-09-15 08:33:27

安全生產(chǎn)系統(tǒng)Review

2010-02-23 13:36:00

2023-05-25 21:35:00

穩(wěn)定性建設(shè)前端
點(diǎn)贊
收藏

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

男女啪啪999亚洲精品| 国产午夜在线视频| 日韩一级在线| 亚洲欧美中文日韩在线v日本| 在线观看av日韩| 永久免费网站在线| 91麻豆国产精品久久| 国产精品视频一| 精品无码av在线| 成人看的羞羞网站| 欧美大片一区二区| 三级a在线观看| 国产福利在线免费观看| 国产精品三级视频| 国产精品一区二区三区四区五区| 高潮毛片又色又爽免费| 欧美日韩国产一区精品一区| 国产亚洲欧美日韩美女| 成人啪啪18免费游戏链接| 88xx成人网| 亚洲成在人线在线播放| 亚洲精品国产精品久久| 日韩专区第一页| 国产综合色产在线精品| 国产va免费精品高清在线观看| 国产三级国产精品国产国在线观看| 最近国产精品视频| 日韩一区二区三区电影在线观看| 国内外免费激情视频| a毛片不卡免费看片| 亚洲日本中文字幕区| 性刺激综合网| 黄色av网站在线| 成人国产精品免费观看动漫 | 美女福利视频在线观看| 国产日产一区| 亚洲精品综合精品自拍| 中文字幕18页| 亚洲经典视频| 欧美日韩不卡一区| 天天爽人人爽夜夜爽| 三上悠亚激情av一区二区三区 | 97视频一区| 欧美久久久久中文字幕| 天天综合网久久| 成人国产综合| 欧美日韩在线播放一区| 爱情岛论坛vip永久入口| 成人影院大全| 日韩欧美国产一区二区| 一女被多男玩喷潮视频| 国产资源在线观看入口av| 亚洲国产精品一区二区尤物区| 亚洲天堂第一区| www在线免费观看视频| 亚洲丝袜美腿综合| 精品日韩在线播放| 在线观看中文字幕的网站| 一区二区三区在线播放| 久久久亚洲国产精品| a毛片不卡免费看片| 无吗不卡中文字幕| 春日野结衣av| 日韩在线短视频| 欧美日韩专区在线| 欧美精品 - 色网| 亚洲**毛片| 亚洲国产高清福利视频| 国产在线观看无码免费视频| 亚洲精品无吗| 日韩在线免费av| 91在线播放观看| 欧美日本一区二区视频在线观看| 欧美精品激情在线| 国产原创视频在线| 日韩电影免费在线| 国产主播欧美精品| 亚洲精品字幕在线观看| 99免费精品视频| 热re99久久精品国99热蜜月| 天堂中文8资源在线8| 亚洲美女视频一区| 国产 日韩 亚洲 欧美| 怡红院成人在线| 91精品在线麻豆| 亚洲婷婷在线观看| 成人激情电影在线| 久久99国产精品久久久久久久久| 日韩av女优在线观看| 日韩精品一区第一页| 91超碰在线免费观看| 艳母动漫在线看| 国产精品国产三级国产a| 欧美a级免费视频| 成人黄色免费短视频| 91精品国产综合久久久蜜臀粉嫩| 精品人妻在线视频| 日韩精品看片| 午夜精品久久久久久99热| 亚洲午夜无码久久久久| 国产不卡视频一区二区三区| 日本不卡二区| 国产探花视频在线观看| 91官网在线免费观看| 极品人妻一区二区| 精品一区不卡| 午夜精品三级视频福利| 在线观看国产精品视频| 北条麻妃一区二区三区| 中文字幕一区综合| 成人午夜视屏| 欧美精品一区二区久久婷婷| av黄色免费在线观看| 中文欧美日韩| 成人3d动漫一区二区三区91| 77导航福利在线| 欧美性xxxx极品hd欧美风情| 欧美一级大片免费看| 日韩在线第七页| 欧美一级电影久久| 粉嫩av一区二区夜夜嗨| 亚洲天堂av一区| 黄色片在线免费| 亚洲va久久久噜噜噜久久| 欧美黄色性视频| 91国在线视频| 亚洲国产成人午夜在线一区| 激情六月丁香婷婷| 老司机aⅴ在线精品导航| 久久的精品视频| 依依成人在线视频| 国产亚洲短视频| 欧美三级午夜理伦三级| 欧美电影在线观看完整版| 欧美激情二区三区| 国产高清精品软件丝瓜软件| 中文字幕日本不卡| 国产原创精品在线| 欧美综合在线视频观看 | 性无码专区无码| 成人免费av资源| 青春草国产视频| 网站一区二区| 欧美国产精品va在线观看| 国产高清精品软件丝瓜软件| 日韩理论片中文av| 午夜激情影院在线观看| 亚洲情侣在线| 3d动漫精品啪啪一区二区三区免费| 日本免费在线视频| 欧美精选一区二区| www.xxxx日本| 国产成人亚洲综合a∨婷婷| 中国女人做爰视频| 涩涩屋成人免费视频软件| 欧美高清自拍一区| 天天操天天干天天爱| 精品久久香蕉国产线看观看gif| 国产污在线观看| 亚洲女优在线| 色姑娘综合网| 亚洲国产天堂| 欧美大片在线影院| 天天操天天干天天插| 色先锋aa成人| 污污视频网站在线免费观看| 九色综合狠狠综合久久| 国产成人生活片| 欧美性生活一级片| 国产精品91在线| 男人影院在线观看| 精品日韩在线观看| 欧美性猛交bbbbb精品| 久久久午夜电影| 日韩肉感妇bbwbbwbbw| 亚洲精品一区二区在线看| yy111111少妇影院日韩夜片| а√在线天堂官网| 一区二区三区 在线观看视| 国产又粗又大又黄| 亚洲一区二区偷拍精品| 性色av蜜臀av色欲av| 奇米影视在线99精品| 青青草视频在线视频| 亚洲精品中文字幕99999| 国产欧美久久久久久| 国产精品国精产品一二| 国产一区二区三区三区在线观看| 一级全黄少妇性色生活片| 亚洲图片欧美一区| 一二三四在线观看视频| 国产激情偷乱视频一区二区三区 | 极品盗摄国产盗摄合集| www.性欧美| 亚洲一区二区三区观看| 国产日本精品| 久久久成人精品一区二区三区 | 一区二区三区四区五区精品 | 日本精品一区| 亚洲高清999| 国产高清在线不卡| 久久亚洲资源| 日韩一区视频在线| 亚洲av成人精品毛片| 91.成人天堂一区| 国产精品一区无码| 亚洲一卡二卡三卡四卡无卡久久 | 亚洲色图88| 欧美一区二区三区在线免费观看| 精品国产欧美| 国产精品美乳在线观看| а√天堂资源官网在线资源| 美日韩精品免费视频| 国产69久久| 日韩av在线免费看| 成人h动漫精品一区二区无码| 欧美性大战xxxxx久久久| 久久久久久久极品| 一区二区成人在线| 国产性生活大片| 国产日韩欧美亚洲| mm131美女视频| 成人午夜精品在线| 国产成人av免费观看| 狠狠色狠狠色合久久伊人| 国内自拍视频一区| 先锋a资源在线看亚洲| 欧美成人精品免费| 国产综合自拍| 国产又粗又大又爽的视频| 日韩电影免费在线观看| 欧美午夜精品理论片a级大开眼界| 国产美女撒尿一区二区| 99re国产视频| 视频一区中文字幕精品| 国产精品影院在线观看| 福利一区二区免费视频| 国产精品69久久| 成人精品电影在线| 国产成人综合精品在线| 韩国久久久久久| 欧美孕妇与黑人孕交| 男人天堂视频在线观看| 国语自产偷拍精品视频偷| 国产蜜臀在线| 久久全国免费视频| av女在线播放| 欧美最猛性xxxxx亚洲精品| 女海盗2成人h版中文字幕| 91精品国产777在线观看| 白白色在线观看| 17婷婷久久www| 亚洲国产福利| 国产精品久久久久99| 99久久综合国产精品二区| 国产精品视频中文字幕91| 日本免费成人| 91久久精品一区二区别| **爰片久久毛片| 国产日韩在线一区二区三区| 全国精品免费看| 欧美自拍资源在线| 久久视频国产| 乱熟女高潮一区二区在线| 99精品视频免费观看视频| 亚洲色欲综合一区二区三区| 日本中文一区二区三区| 中文字幕22页| 国产99精品视频| 人妻少妇一区二区| 国产精品欧美经典| 欧美成人一区二区三区高清| 午夜精品久久久久久久久久久 | 后入内射无码人妻一区| 亚洲麻豆国产自偷在线| 五月天婷婷丁香| 日韩欧美亚洲一二三区| 中文字幕乱码在线观看| 欧美一卡二卡在线| 五月婷婷狠狠干| 最近2019中文字幕mv免费看| 免费在线看污片| 日本久久中文字幕| 国产精品一区免费在线| 精品国产乱码久久久久久久软件| 精品国产一区二区三区av片| www.-级毛片线天内射视视| 日韩视频精品在线观看| 亚洲人辣妹窥探嘘嘘| 国产**成人网毛片九色 | 亚洲男人的天堂在线aⅴ视频| 日本三级午夜理伦三级三| 欧美自拍偷拍午夜视频| www.蜜桃av.com| 一区二区三区亚洲| 国模雨婷捆绑高清在线| 国产精品久久久久久久久久小说| 日韩高清在线观看一区二区| 欧美日韩一区二区三区免费| 国产综合婷婷| 爱爱爱爱免费视频| 久久久久久久久久美女| 九九久久免费视频| 欧美日韩在线亚洲一区蜜芽| 天天干天天做天天操| 久久国产精品久久久久久| 欧美精品高清| 国产美女精品在线观看| 99久久九九| aaa毛片在线观看| 成人aaaa免费全部观看| 夫妻性生活毛片| 欧美最新大片在线看| 图片区 小说区 区 亚洲五月| 久久夜色撩人精品| 成人国产精品| 欧美日韩一区二区视频在线| 亚洲黄色精品| 欧美69精品久久久久久不卡| 中文字幕日本乱码精品影院| 黄色大全在线观看| 国产丝袜一区视频在线观看 | 色噜噜夜夜夜综合网| 亚洲国产www| 久久夜色撩人精品| 日本午夜免费一区二区| 日本三级中国三级99人妇网站| 狠狠入ady亚洲精品经典电影| 小早川怜子一区二区三区| 中文欧美字幕免费| 99成人精品视频| 日韩高清av一区二区三区| 国产丝袜在线播放| 国产精品二区在线观看| 欧美xxx在线观看| 亚洲热在线视频| 亚洲欧美色一区| 国产男女无套免费网站| 日韩在线资源网| 日韩三级成人| 中文字幕一区二区三区5566| 久久99九九99精品| 久久嫩草捆绑紧缚| 欧美日韩免费观看一区三区| 91精品专区| 国产在线观看91精品一区| 欧美独立站高清久久| 手机av在线免费| 亚洲男人电影天堂| 高清乱码毛片入口| 久久久久亚洲精品国产| 国产精品毛片久久久| 色欲色香天天天综合网www| 99久久婷婷国产精品综合| 成年免费在线观看| 亚洲欧美三级伦理| 电影亚洲一区| 波多野结衣激情| 国产成人精品影视| 日韩精品国产一区二区| 国产丝袜一区二区| 日韩精品免费观看视频| 亚洲电影网站| 国产精品系列在线播放| 久久久精品一区二区涩爱| 亚洲高清不卡av| 成人勉费视频| 亚洲国产日韩综合一区| 激情久久五月天| 国产在线成人精品午夜| 亚洲高清在线观看| 国产精品亚洲一区二区三区在线观看| 丝袜足脚交91精品| 国产精品一区二区免费不卡| 日韩精品一区二区av| 国产亚洲成精品久久| 超碰国产精品一区二页| 国产日韩欧美精品在线观看| 久久在线免费观看| 一区二区国产欧美| 97免费视频在线| 日韩免费av| 人妻体内射精一区二区三区| 在线观看91精品国产入口| 国产成人l区| 久久av一区二区| 久久精品国产成人一区二区三区| 欧美日韩免费做爰视频| 日韩成人在线观看| 日本免费一区二区三区等视频| 成人在线播放网址| 久久久久88色偷偷免费| 国内精品国产成人国产三级| 日韩av电影手机在线| 中文字幕一区二区精品区| 黄色短视频在线观看| 日韩久久精品一区| 91久久久久久白丝白浆欲热蜜臀| 欧美一区二区视频在线播放| 国产蜜臀97一区二区三区|