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

提升 Node.js 應(yīng)用性能的 5 個技巧

開發(fā) 前端
本文介紹了一些最重要的可以在Node.js應(yīng)用程序布置的性能改進。它著重于添加到應(yīng)用程序的NGINX以及Node.js——通過使用 NGINX作為反向代理服務(wù)器,緩存靜態(tài)文件,負載均衡,代理WebSocket連接,并終止SSL / TLS和HTTP / 2協(xié)議。

“如果nginx沒有在你的節(jié)點服務(wù)器之前,那么你可能就錯了。”Bryan Hughes在Twitter上說

Node.js是全球領(lǐng)先的用JavaScript——世界上最流行的編程語言創(chuàng)建服務(wù)器應(yīng)用程序的工具。提供web服務(wù)器和應(yīng)用服務(wù)器的功能,Node.js被認為是各種以微服務(wù)為基礎(chǔ)的開發(fā)和交付的關(guān)鍵工具。 (下載關(guān)于Node.js和NGINX的免費Forrester報告。)

Node.js可以替代或增強Java和.NET用于后端應(yīng)用程序的開發(fā)。

Node.js是單線程的,并且使用非阻塞I / O,允許它擴展并支持數(shù)以萬計的并行操作。它和NGINX共享這些架構(gòu)特性,并解決C10K問題——支持超過10000個并發(fā)連接——NGINX也可以解 決并行操作問題。 Node.js以它的高性能和高開發(fā)效率享譽全球。

那么,哪里會出問題呢?

Node.js有一些薄弱環(huán)節(jié)和漏洞,這些薄弱環(huán)節(jié)和漏洞會使得基于Node的系統(tǒng)容易出現(xiàn)性能不佳,甚至崩潰的現(xiàn)象。尤其是當基于Node.js的web應(yīng)用程序碰到訪問量高速增長的時候,問題就會出現(xiàn)得更加頻繁。

此外,Node.js是用于創(chuàng)建和運行產(chǎn)生核心可變網(wǎng)頁內(nèi)容邏輯的強大工具。但它在服務(wù)靜態(tài)內(nèi)容——例如圖像和JavaScript文件——以及平衡多個服務(wù)器上的負載這些方面還沒那么強大。

為了最有效地使用Node.js,你需要緩存靜態(tài)內(nèi)容,代理和平衡多個應(yīng)用程序服務(wù)器負載,并管理客戶端、Node.js和助手——如運行 Socket.IO的服務(wù)器——之間的端口競爭。 NGINX可用于解決這些問題,從而使得它成為了一個Node.js性能優(yōu)化的偉大工具。

使用這些技巧可以提高Node.js應(yīng)用性能:

  1. 實現(xiàn)反向代理服務(wù)器

  2. 緩存靜態(tài)文件

  3. 多服務(wù)器的負載均衡

  4. 代理WebSocket連接

  5. 實現(xiàn)SSL / TLS和HTTP / 2

注:Node.js應(yīng)用性能的快速解決辦法是修改你的Node.js配置,以充分利用現(xiàn)代多核服務(wù)器的優(yōu)勢。你也可以讀一讀另一篇關(guān)于如何讓Node.js生成單獨子進程的文章

1.實現(xiàn)反向代理服務(wù)器

我們在NGINX.Inc的時候,如果看到有應(yīng)用程序服務(wù)器直接接觸傳入的訪問流量,用于高性能網(wǎng)站核心的時候,總會不自覺地有點擔(dān)憂。這包括許多基于WordPress的網(wǎng)站,也包括Node.js網(wǎng)站。

Node.js專為可擴展性而設(shè)計,它比大多數(shù)應(yīng)用服務(wù)器更易于擴展,它的web服務(wù)器端可以處理好大量的訪問流量。但是web服務(wù)并不是Node.js存在的理由——Node.js并不是因為這個目的而被構(gòu)建的。

如果你有一個大流量網(wǎng)站,提高應(yīng)用程序性能的第一步是在你的Node.js服務(wù)器前放一個反向代理服務(wù)器。這樣可以保護Node.js服務(wù)器直接接觸外部訪問流量,還能讓你靈活使用多個應(yīng)用程序服務(wù)器,平衡負載服務(wù)器,緩存內(nèi)容。

在現(xiàn)有的服務(wù)器設(shè)置前放NGINX作為一個反向代理服務(wù)器,是NGINX的核心用例,全世界各地已經(jīng)有數(shù)以千萬計的網(wǎng)站實施了。

使用NGINX作為Node.js的反向代理服務(wù)器還有一些特定的優(yōu)勢,其中包括:

  • 簡化操作權(quán)限和端口分配

  • 更有效地服務(wù)于靜態(tài)圖像(見第二個小竅門)

  • 成功管理Node.js崩潰的情況

  • 減輕DoS攻擊

注意:這些教程介紹了如何使用NGINX作為在Ubuntu 14.04或CentOS環(huán)境中的反向代理服務(wù)器,而且可以總覽NGINX置于node.js之前的整體情況。

2.緩存靜態(tài)文件

隨著基于Node.js的網(wǎng)站的使用量的增長,服務(wù)器的壓力開始越來越大。這時候你要做這兩件事情:

  1. 充分利用Node.js服務(wù)器。

  2. 使得添加應(yīng)用程序服務(wù)器和負載均衡變得容易。

這其實是很容易做到的。一開始就實施NGINX作為反向代理服務(wù)器,就像第一點技巧中所描述的那樣。這樣就能輕易實現(xiàn)高速緩存、負載平衡(如果有多個Node.js服務(wù)器的話)等。

針對Modulus,一個應(yīng)用程序容器平臺,有一篇非常有用的關(guān)于利用NGINX增壓Node.js應(yīng)用程序性能的文章。由于Node.js都是靠 自己完成所有的工作的,所以我們的網(wǎng)站平均每秒只能服務(wù)將近900個請求。使用NGINX作為反向代理服務(wù)器,提供靜態(tài)內(nèi)容,一個站點每秒可服務(wù)超過 1600個請求——性能提升了近2倍。

性能的提升能讓你有時間采取額外措施以適應(yīng)進訪問量的增長,如審查(或提高)網(wǎng)站設(shè)計,優(yōu)化程序代碼,部署更多的應(yīng)用程序服務(wù)器。

以下配置代碼適用運行于Modulus的網(wǎng)站:

  1. server { 
  2.   listen 80
  3.   server_name static-test-47242.onmodulus.net; 
  4.   root /mnt/app; 
  5.   index index.html index.htm; 
  6.   location /static/ { 
  7.    try_files $uri $uri/ =404
  8.   } 
  9.   location /api/ { 
  10.    proxy_pass http://node-test-45750.onmodulus.net; 
  11.   } 

例如,在Nginx位置塊中,你可能不想要緩存某些內(nèi)容。例如,你通常不會想要緩存博客平臺的管理界面的。以下就是禁用[或免除]緩存Ghost管理界面的配置代碼:

  1. location ~ ^/(?:ghost|signout) { 
  2.         proxy_set_header X-Real-IP $remote_addr; 
  3.         proxy_set_header Host $http_host; 
  4.         proxy_pass http://ghost_upstream; 
  5.         add_header Cache-Control "no-cache, private, no-store, 
  6.         must-revalidate, max-stale=0, post-check=0, pre-check=0"; 
  7.     } 

緩存NGINX服務(wù)器上的靜態(tài)文件可以顯著減輕Node.js應(yīng)用程序服務(wù)器的負載,讓它能夠達到更佳性能。

3.實現(xiàn)Node.js負載平衡

Node.js應(yīng)用高性能的真正關(guān)鍵運行多個應(yīng)用程序服務(wù)器和平衡負載。

Node.js負載平衡可能特別棘手,因為Node.js允許運行在web瀏覽器上的JavaScript代碼和運行在Node.js應(yīng)用服務(wù)器上 的JavaScript代碼做高水平的交互,同時使用JSON對象作為數(shù)據(jù)交換的介質(zhì)。這意味著,一個給定的客戶會話會持續(xù)運行在特定的應(yīng)用程序服務(wù)器 上,并且會話持久性用多個應(yīng)用程序服務(wù)器天然地難以實現(xiàn)。

Internet和web的主要優(yōu)點之一就是高度無國界,其中包括通過任意服務(wù)器訪問請求文件來滿足客戶端請求。Node.js顛覆了無國界,并且在有狀態(tài)的環(huán)境中——同一服務(wù)器始終如一地響應(yīng)來自任意特定客戶端的請求——效果最好。

通過NGINX Plus,而非開源NGINX軟件,可以最好地滿足這個需求。NGINX的兩個版本頗為相似,但一個主要區(qū)別就是它們對負載平衡算法的支持不同。

NGINX支持無狀態(tài)的負載均衡方法:

  • 循環(huán)。新的請求會去往列表中的下一個服務(wù)器。

  • 最少的連接。新的請求會去到活躍連接最少的服務(wù)器。

  • IP Hash。新的請求會去往哈希分配客戶端IP地址的服務(wù)器。

只是這些方法中的一種,IP Hash,可靠地發(fā)送指定客戶端請求到同一服務(wù)器,有利于Node.js應(yīng)用程序。然而,IP Hash很容易導(dǎo)致某 臺服務(wù)器收到的請求數(shù)量不成比例,在犧牲其他服務(wù)器的代價下,正如這一篇博客中描述的負載均衡技術(shù)那樣。此方法支持的有狀態(tài)是以犧牲潛在不理想的跨服務(wù)器 資源的請求分配為代價的。

不同于NGINX,NGINX Plus支持會話持久性。在使用會話持久性的時候,同一服務(wù)器還能可靠地接收來自指定客戶端的所有請求。 Node.js的優(yōu)勢——在客戶端和服務(wù)器之間有狀態(tài)的通信,以及NGINX Plus的優(yōu)勢——高級負載均衡能力,都達到最大化。

所以,你可以使用NGINX或NGINX Plus來支持多個Node.js服務(wù)器的負載均衡。只有NGINX才有可能讓你最大化地實現(xiàn)負載均衡性能和友好的Node.js有狀態(tài)性。內(nèi)置于NGINX的應(yīng)用健康檢查以及監(jiān)控功能也很有用。

NGINX Plus還支持會話維持,因此允許應(yīng)用程序服務(wù)器在它采取停止服務(wù)的請求之后,還能優(yōu)雅地完成當前會話。

4.代理WebSocket連接

HTTP,在所有版本里,是專為“pull”通信——來自于服務(wù)器的客戶端請求文件設(shè)計的。WebSocket是一個允許“push”和“push/pull”通信的工具,即服務(wù)器可以主動發(fā)送客戶端沒有請求的文件。

WebSocket協(xié)議可以更容易地支持客戶端和服務(wù)器之間更堅固的相互作用,同時減少傳輸?shù)臄?shù)據(jù)量并最小化等待時間。當需要時,可以實現(xiàn)全雙工傳輸連接,也就是說根據(jù)需要客戶和服務(wù)器都可以發(fā)起并接收請求。

WebSocket協(xié)議具有強大的JavaScript接口,因此非常適合作為應(yīng)用服務(wù)器的Node.js——而且,對于事務(wù)量不多的web應(yīng)用程 序,也可以作為web服務(wù)器。當事務(wù)量增加,那么在客戶端和Node.js web服務(wù)器之間,多個應(yīng)用服務(wù)器之間使用NGINX或NGINX Plus插入NGINX就有必要了。

Node.js通常與Socket.IO聯(lián)合使用,Socket.IO是一個WebSocket API,它在Node.js應(yīng)用程序中很受歡迎。這可能會導(dǎo)致port 80(對于HTTP)或port 443(對于HTTPS)變得相當擁擠,而解決方法就是代理Socket.IO服務(wù)器。你可以使用NGINX作為代理服務(wù)器中,就像前面說的那樣,并且還 獲得其他的功能,例如靜態(tài)文件緩存,負載均衡等。

以下就是作為server.js node應(yīng)用程序文件監(jiān)聽port 5000的代碼。它擔(dān)當了代理服務(wù)器(而不是web服務(wù)器)的角色,并路由請求到正確的端口:

  1. var io = require('socket.io').listen(5000); 
  2. io.sockets.on('connection', function (socket) { 
  3.   socket.on('set nickname', function (name) { 
  4.     socket.set('nickname', name, function () { 
  5.       socket.emit('ready'); 
  6.     }); 
  7.   }); 
  8.   socket.on('msg', function () { 
  9.     socket.get('nickname', function (err, name) { 
  10.       console.log('Chat message by ', name); 
  11.     }); 
  12.   }); 
  13. }); 

var socket = io(); // 這是你的初始化代碼。

有關(guān)完整的介紹,包括NGINX配置,請參閱此博客文章。有關(guān)這一類更深入的web應(yīng)用程序潛在架構(gòu)和基礎(chǔ)設(shè)施問題,請參閱此博客文章

5.實現(xiàn)SSL / TLS和HTTP / 2

越來越多的網(wǎng)站使用SSL / TLS來保護網(wǎng)站上所有用戶的交互。你可以決定是否以及何時做出這個舉動,但如果你選擇了這么做,那么NGINX有兩種方式來支持這個轉(zhuǎn)變:

  1. 你可以在NGINX里終止SSL / TLS連接到客戶端,如果你設(shè)置了NGINX作為反向代理的話。 Node.js服務(wù)器使用Nginx反向代理服務(wù)器來來回回地發(fā)送和接收未加密的請求和內(nèi)容。

  2. 早期跡象表明,使用HTTP / 2——新的HTTP協(xié)議的新版本——可以在很大程度上或完全抵消使用SSL / TLS強加的性能損失。 NGINX支持HTTP / 2,你可以終止HTTP / 2和SSL,而在Node.js應(yīng)用服務(wù)器中無需做任何改變。

在你采取這些實現(xiàn)步驟的時候,你還需要更新在Node.js配置文件中的URL,建立和完善在NGINX配置中的安全連接,必要時還可以使用 SPDY或HTTP / 2。添加HTTP / 2支持意味著瀏覽器版本使用新的協(xié)議支持HTTP / 2與應(yīng)用程序進行通信:老版本的瀏覽器使用HTTP / 1.x。

下面的配置代碼適用于使用SPDY的Ghost博客。它包括一些高級功能,如OCSP stapling。使用NGINX用于SSL終端,包括OCSP stapling選項,看這里。對于同一主題的概述,看這里。

你需要做的輕微改動就是配置Node.js應(yīng)用程序,從SPDY升級到HTTP / 2,時間可以是現(xiàn)在,也可以是2016年初SPDY支持消失的時候。

  1. server { 
  2.    server_name domain.com; 
  3.    listen 443 ssl spdy; 
  4.    spdy_headers_comp 6
  5.    spdy_keepalive_timeout 300
  6.    keepalive_timeout 300
  7.    ssl_certificate_key /etc/nginx/ssl/domain.key; 
  8.    ssl_certificate /etc/nginx/ssl/domain.crt; 
  9.    ssl_session_cache shared:SSL:10m;  
  10.    ssl_session_timeout 24h;           
  11.    ssl_buffer_size 1400;              
  12.    ssl_stapling on; 
  13.    ssl_stapling_verify on; 
  14.    ssl_trusted_certificate /etc/nginx/ssl/trust.crt; 
  15.    resolver 8.8.8.8 8.8.4.4 valid=300s; 
  16.    add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains'
  17.    add_header X-Cache $upstream_cache_status; 
  18.    location / { 
  19.         proxy_cache STATIC; 
  20.         proxy_cache_valid 200 30m; 
  21.         proxy_cache_valid 404 1m; 
  22.         proxy_pass http://ghost_upstream; 
  23.         proxy_ignore_headers X-Accel-Expires Expires Cache-Control; 
  24.         proxy_ignore_headers Set-Cookie; 
  25.         proxy_hide_header Set-Cookie; 
  26.         proxy_hide_header X-powered-by; 
  27.         proxy_set_header X-Real-IP $remote_addr; 
  28.         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
  29.         proxy_set_header X-Forwarded-Proto https; 
  30.         proxy_set_header Host $http_host; 
  31.         expires 10m; 
  32.     } 
  33.     location /content/images { 
  34.         alias /path/to/ghost/content/images; 
  35.         access_log off; 
  36.         expires max; 
  37.     } 
  38.     location /assets { 
  39.         alias /path/to/ghost/themes/uno-master/assets; 
  40.         access_log off; 
  41.         expires max; 
  42.     } 
  43.     location /public { 
  44.         alias /path/to/ghost/built/public
  45.         access_log off; 
  46.         expires max; 
  47.     } 
  48.     location /ghost/scripts { 
  49.         alias /path/to/ghost/core/built/scripts; 
  50.         access_log off; 
  51.         expires max; 
  52.     } 
  53.     location ~ ^/(?:ghost|signout) { 
  54.         proxy_set_header X-Real-IP $remote_addr; 
  55.         proxy_set_header Host $http_host; 
  56.         proxy_pass http://ghost_upstream; 
  57.         add_header Cache-Control "no-cache, private, no-store, 
  58.         must-revalidate, max-stale=0, post-check=0, pre-check=0"; 
  59.         proxy_set_header X-Forwarded-Proto https; 
  60.     } 

結(jié)論

本文介紹了一些最重要的可以在Node.js應(yīng)用程序布置的性能改進。它著重于添加到應(yīng)用程序的NGINX以及Node.js——通過使用 NGINX作為反向代理服務(wù)器,緩存靜態(tài)文件,負載均衡,代理WebSocket連接,并終止SSL / TLS和HTTP / 2協(xié)議。

NGINX和Node.js的結(jié)合,被廣泛認為是一種創(chuàng)建新的微服務(wù)型應(yīng)用程序或增加靈活性和性能到現(xiàn)有的基于SOA的使用Java或 Microsoft .NET應(yīng)用的方法。這篇文章可以幫助你優(yōu)化Node.js應(yīng)用程序,讓Node.js和NGINX的伙伴關(guān)系為你所用。

譯文鏈接:http://www.codeceo.com/article/5-tips-nodejs-performance.html
英文原文:5 Tips to Increase Node.js Application Performance

責(zé)任編輯:王雪燕 來源: 碼農(nóng)網(wǎng)
相關(guān)推薦

2015-11-04 09:18:41

Node.js應(yīng)用性能

2025-07-21 01:00:00

UDP性能QPS

2025-05-15 04:00:55

2014-08-28 09:35:32

Node.js前端開發(fā)

2013-08-09 14:18:33

2014-04-24 10:11:17

iOS性能調(diào)優(yōu)

2022-05-25 10:04:43

Go編程

2020-05-29 15:33:28

Node.js框架JavaScript

2015-06-25 12:41:53

實時 Node應(yīng)用性能監(jiān)測

2018-08-23 17:45:52

2017-11-27 11:59:40

Node.JSChrome調(diào)試程序

2019-07-09 14:50:15

Node.js前端工具

2011-11-10 11:08:34

Node.js

2021-12-01 00:05:03

Js應(yīng)用Ebpf

2021-05-11 12:30:21

PyTorch代碼Python

2015-03-10 10:59:18

Node.js開發(fā)指南基礎(chǔ)介紹

2013-11-01 09:34:56

Node.js技術(shù)

2020-12-28 08:48:44

JS工具fastify

2020-12-14 15:40:59

Nodefastifyjs

2023-11-06 08:01:09

Go同步異步
點贊
收藏

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

1024日韩| 清纯唯美激情亚洲| 欧美国产欧美亚州国产日韩mv天天看完整| 国产精品成人国产乱一区| 在线观看亚洲大片短视频| 久久爱www.| 色爱区综合激月婷婷| www.-级毛片线天内射视视| 秋霞网一区二区| 奇米四色…亚洲| 欧美日本国产在线| 天天干天天舔天天操| 国产一区二区三区免费观看在线 | 欧美一区二区三区日韩| 欧美综合在线播放| 黄色av免费在线| 久久综合成人精品亚洲另类欧美| 国产日韩在线亚洲字幕中文| 久草国产精品视频| 亚洲香蕉av| 国产亚洲精品久久久久动| 亚洲熟妇一区二区| 欧美视频免费看| 色综合中文字幕| 精品一二三四五区| 麻豆视频在线| 中文av一区二区| 久久国产精品一区二区三区四区 | 永久久久久久| 欧美日韩在线中文字幕| 国产成人av网站| 91精品久久久久久| 日本成人一级片| 亚洲综合国产| 4p变态网欧美系列| 国产一级片免费观看| 久久久国产精品| 影音先锋欧美精品| 波多野吉衣中文字幕| 欧美特黄不卡| 欧美一区二区三区四区视频| 免费看污黄网站| 波多野结衣亚洲一二三| 午夜免费久久看| 日韩美女爱爱视频| 免费在线中文字幕| 亚洲精品国产一区二区精华液| 亚洲国产精品www| av小片在线| 国产欧美精品国产国产专区| 日本精品一区二区三区不卡无字幕| 成人免费一级视频| 成+人+亚洲+综合天堂| 成人av片网址| 韩国av在线免费观看| 成人高清视频在线| 狠狠色伊人亚洲综合网站色| 狠狠躁夜夜躁av无码中文幕| 成人国产免费视频| 精品乱码一区| 美国成人毛片| 国产欧美日韩精品a在线观看| 日本高清一区| 日本www在线观看视频| 成人欧美一区二区三区小说| 一本一道久久a久久精品综合 | 欧美激情亚洲视频| 久草成人在线视频| 亚洲久久一区| 日韩av免费在线播放| 久久久精品毛片| 美女性感视频久久| 亚洲一区免费网站| 日本精品久久久久| 国产午夜精品福利| 久久久成人精品一区二区三区| 菠萝蜜视频国产在线播放| 一区二区三区欧美日| 日韩久久久久久久久久久久| 182在线播放| 在线影视一区二区三区| 色天使在线观看| 国产精品网在线观看| 精品无人区乱码1区2区3区在线 | 国产欧美精品一二三| 亚洲1区在线观看| 亚洲精品99久久久久| 国产高清一区二区三区四区| 欧美韩国日本在线| 国产调教视频在线观看| 一区二区欧美国产| 日韩网址在线观看| 亚洲成a人片777777久久| 精品国产精品网麻豆系列 | 国产农村妇女毛片精品久久麻豆 | 最新中文字幕视频| 日本一二区不卡| 久久久欧美精品| 亚洲精品一区二区二区| 成人精品国产一区二区4080| 视频一区在线免费观看| 先锋成人av| 欧美亚洲高清一区| 久久久久无码国产精品一区李宗瑞| 亚洲人成网亚洲欧洲无码| 久久精彩免费视频| 麻豆成人免费视频| 国产不卡一区视频| 五月天丁香综合久久国产| 欧美极品少妇videossex| 欧美性一级生活| 精品1卡二卡三卡四卡老狼| 色一区二区三区四区| 欧美一级免费视频| 国产按摩一区二区三区| 国产婷婷色一区二区三区在线| 777久久精品一区二区三区无码 | www.4hu95.com四虎| 黄色成人在线网站| 成人精品视频99在线观看免费| 日本黄色免费视频| 亚洲免费av观看| 亚洲影院色无极综合| 日韩精品免费播放| 日本在线一区二区| 亚洲欧美在线播放| 日本一级淫片免费放| 国产一区二区精品久久91| 日本一区二区视频| 在线人成日本视频| 欧美精品一区二区蜜臀亚洲| 伊人在线视频观看| 美女一区二区视频| 亚洲国产高清国产精品| 春暖花开亚洲一区二区三区| 日韩av在线导航| 国产一级特黄aaa大片| 国产乱子伦视频一区二区三区| 亚洲欧美日产图| 日韩欧美精品一区二区综合视频| 亚洲黄色片网站| 中文字幕一区二区三区手机版 | 老司机免费在线视频| 欧美亚洲综合一区| 在线观看亚洲大片短视频| 日本大胆欧美人术艺术动态| 欧美日韩一区二区三| 午夜欧美激情| 亚洲欧美日韩中文视频| 欧美一级高清免费| 91九色丨porny丨肉丝| 成人黄色小视频在线观看| 成年人看的毛片| 久久人人爽人人爽人人片av不| 久久91亚洲精品中文字幕奶水| 国产浮力第一页| 亚洲久草在线视频| 三上悠亚 电影| 亚洲午夜精品久久久久久app| 成人av资源网| 美女91在线| 亚洲经典中文字幕| 国产亚洲欧美在线精品| 久久久亚洲高清| 午夜免费一区二区| 成人情趣视频| 91久久久久久久久久久久久| www在线视频| 欧美精品一区二区三区在线播放| 日本少妇在线观看| 久久久影视传媒| 五月婷婷深爱五月| 欧美好骚综合网| 91青青草免费在线看| 国产亚av手机在线观看| 日韩va亚洲va欧洲va国产| 精人妻无码一区二区三区| 亚洲国产电影在线观看| 两女双腿交缠激烈磨豆腐| 99精品国产在热久久| 国产成人av资源| av不卡在线免费观看| 亚洲**毛片| 秋霞成人午夜鲁丝一区二区三区| av小片在线| 精品国产区一区| 男人天堂视频在线| 一区二区三区中文字幕电影 | 亚洲永久精品视频| 亚洲一区二区av电影| 亚洲AV无码国产成人久久| 另类小说综合欧美亚洲| 99在线免费视频观看| 教室别恋欧美无删减版| 99久久精品免费看国产一区二区三区| 国产伦子伦对白在线播放观看| 一本色道久久88精品综合| 国产成年妇视频| 色综合久久久网| 91视频综合网| 国产亚洲视频系列| 国产精品无码自拍| 久久精品国产色蜜蜜麻豆| 男人日女人视频网站| 日韩精品dvd| 精品一区久久久久久| 91成人小视频| 国产999精品视频| 国模雨婷捆绑高清在线| 秋霞在线一区| 欧美精品做受xxx性少妇| 免费在线一级视频| 欧美videos中文字幕| 在线免费观看一级片| 天天色图综合网| 欧美特级一级片| 中文久久乱码一区二区| 先锋资源av在线| 国产大陆精品国产| 亚洲娇小娇小娇小| 丝袜亚洲另类丝袜在线| 亚洲国产精品无码av| 亚洲人metart人体| 亚洲欧洲国产精品久久| 天海翼亚洲一区二区三区| 亚洲自拍偷拍视频| 四虎影视国产精品| 国产精品99一区| 欧美粗大gay| 国产91精品不卡视频| 丁香花在线电影| www.亚洲男人天堂| 中文日本在线观看| 一区二区三区久久精品| 青青青草网站免费视频在线观看| 精品久久一二三区| www.国产三级| 欧美xxx久久| 精品人妻一区二区三区换脸明星| 欧美日韩一区在线| 亚洲天堂中文网| 欧美色精品在线视频| 丰满人妻一区二区三区四区| 色88888久久久久久影院按摩| 久久久久久91亚洲精品中文字幕| 亚洲超碰精品一区二区| 国产午夜视频在线播放| 亚洲一区二区三区视频在线播放| 欧美久久久久久久久久久久| 亚洲欧美日韩综合aⅴ视频| 亚洲欧美小视频| 亚洲尤物视频在线| 日本一区二区三区四区五区| 亚洲成人av福利| 久草国产精品视频| 色综合色综合色综合色综合色综合 | 国产欧美自拍一区| 国产伦精品一区二区三区四区免费 | 精品国产欧美一区二区| 日韩一级在线播放| 日韩精品极品在线观看播放免费视频| 视频一区二区三区在线看免费看| 日韩av在线免费| 福利视频在线看| 日韩有码在线电影| 日本在线观看| 色综合久久悠悠| а√天堂中文在线资源8| 69av在线视频| 2021中文字幕在线| 97超碰国产精品女人人人爽| 国产精品剧情| 欧美国产极速在线| 性欧美1819sex性高清大胸| 欧美激情中文字幕在线| 第一av在线| 欧美在线一区二区视频| 日韩欧美一区二区三区在线观看 | 亚洲一二三四| 国产99视频在线观看| 欧亚一区二区| 成人在线一区二区| 911精品国产| 欧美日韩视频在线一区二区观看视频| 色135综合网| 国产毛片久久久久久国产毛片| 99精品国产福利在线观看免费 | 韩国三级在线一区| 在线xxxxx| 久久精品在线免费观看| 午夜激情福利电影| 香蕉影视欧美成人| 中文资源在线播放| 欧美tk—视频vk| 男人的天堂在线视频| 久久视频国产精品免费视频在线 | 亚洲精品国产成人久久av盗摄| 国产精彩视频在线| 色婷婷精品大在线视频| av综合在线观看| 国产视频亚洲精品| 黄色网页在线播放| 欧美在线不卡区| 色噜噜成人av在线| 久久久婷婷一区二区三区不卡| 99久久综合狠狠综合久久aⅴ| 久久99中文字幕| 精品一区在线看| 久久久久久久久免费看无码| 日韩美女视频一区二区| 久久不卡免费视频| 日韩一区二区三区在线视频| 欧洲综合视频| 欧美精品激情视频| 国产一区二区三区四区五区3d| 国内一区在线| 91精品综合| 少妇性l交大片| youjizz久久| 91在线播放观看| 欧美性大战久久久久久久蜜臀| 免费国产黄色片| 久久天天躁狠狠躁老女人| 国产一区二区三区朝在线观看| 国内精品二区| 国产精品v亚洲精品v日韩精品| 午夜精品久久久久久久99热影院| 久久久精品中文字幕麻豆发布| 国产第一页第二页| 日韩一级视频免费观看在线| 日本在线免费看| 国产精品尤物福利片在线观看| 狠狠色狠狠色综合婷婷tag| 国产精品专区在线| 岛国av在线一区| 欧美黑人性猛交xxx| 欧美日韩国产高清一区二区三区| 国产资源在线观看| 欧美日韩色图| 91香蕉视频网址| 男人的j进女人的j一区| 久久精品成人av| 欧美日韩亚洲视频| 少妇又色又爽又黄的视频| 欧美高清视频一区二区| 2023国产精华国产精品| 波多野结衣 作品| 国产精品亚洲综合一区在线观看| 国产精品免费在线视频| 欧美三级电影网站| 午夜av免费观看| 97视频在线观看免费| 黄色欧美网站| 男女高潮又爽又黄又无遮挡| 91香蕉视频黄| 久久久黄色大片| 亚洲人永久免费| 3d欧美精品动漫xxxx无尽| 蜜桃传媒视频麻豆第一区免费观看 | 日韩高清欧美激情| 免费观看a级片| 欧美在线色视频| 伊人在线视频| 亚洲在线免费视频| 欧美精品一级| 少妇性l交大片| 欧美高清在线精品一区| 一本到在线视频| 欧美激情啊啊啊| 亚洲欧美tv| 日韩av片专区| 亚洲一区二三区| 日本aaa在线观看| 国产精品免费观看在线| 香蕉av一区二区| 波多野结衣办公室双飞| 色综合色狠狠综合色| 伊人免费在线| 成人黄动漫网站免费| 午夜一区在线| 日本 欧美 国产| 亚洲国产精品久久久久秋霞蜜臀 | 欧美性猛交xxxx乱大交| 1024国产在线| 动漫精品视频| 日日夜夜免费精品| 538精品在线视频| 日韩黄色av网站| 香蕉成人在线| 欧美 丝袜 自拍 制服 另类| 国产欧美一二三区| 性生活三级视频| 日韩av手机在线观看| 牛牛国产精品| 久久久久久久久久久久久久久| 欧美一区二区三区精品| 少妇视频在线观看| 国产树林野战在线播放| 久久综合久久综合久久综合| aaa国产视频|