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

Serverless 工程實踐|Serverless 應用優化與調試秘訣

網絡
前言:本文將以阿里云函數計算為例,提供了在線調試、本地調試等多種應用優化與調試方案。

Serverless 應用調試秘訣

在應用開發過程中,或者應用開發完成,所執行結果不符合預期時,我們要進行一定的調試工作。但是在 Serverless 架構下,調試往往會受到極大的環境限制,出現所開發的應用在本地可以健康、符合預期的運行,但是在 FaaS 平臺上發生一些不可預測的問題的情況。而且在一些特殊環境下,本地沒有辦法模擬線上環境,難以進行項目的開發和調試。

Serverless 應用的調試一直都是備受詬病的,但是各個云廠商并沒有因此放棄在調試方向的深入探索。以阿里云函數計算為例,其提供了在線調試、本地調試等多種調試方案。

在線調試

1.簡單調試

所謂的簡單調試,就是在控制臺進行調試。以阿里云函數計算為例,其可以在控制臺通過“執行”按鈕,進行基本的調試,如圖所示。

函數在線簡單調試頁面

必要的時候,我們也可以通過設置 Event 來模擬一些事件,如圖所示。

通過設置 Event 模擬事件

在線調試的好處是,可以使用線上的一些環境進行代碼的測試。當線上環境擁有 VPC 等資源時,在本地環境是很難進行調試的,例如數據庫需要通過 VPC 訪問,或者有對象存儲觸發器的業務邏輯等。

2.斷點調試

除了簡單的調試之外,部分云廠商也支持斷點調試,例如阿里云函數計算的遠程調試、騰訊云云函數的遠程調試等。以阿里云函數計算遠程調試為例,其可以通過控制臺進行函數的在線調試。當創建好函數之后,用戶可以選擇遠程調試,并點擊“開啟調試”按鈕,如圖所示。

函數在線斷點調試頁面(一)

開啟調試之后,稍等片刻,系統將會進入遠程調試界面,如圖所示。

函數在線斷點調試頁面(二)

此時可以進行一些斷點調試,如圖所示。

函數在線斷點調試頁面(三)

本地調試

1.命令行工具

就目前來看,大部分 FaaS 平臺都會為用戶提供相對完備的命令行工具,包括 AWS 的SAM CLI、阿里云的 Funcraft,同時也有一些開源項目例如 Serverless Framework、Serverless Devs 等對多云廠商的支持。通過命令行工具進行代碼調試的方法很簡單。以 Serverless Devs 為例,本地調試阿里云函數計算。

首先確保本地擁有一個函數計算的項目,如圖所示。

本地函數計算項目

然后在項目下執行調試指令,例如在 Docker 中進行調試,如圖所示。

命令行工具調試函數計算

2.編輯器插件

以 VScode 插件為例,當下載好阿里云函數計算的 VSCode 插件,并且配置好賬號信息之后,可以在本地新建函數,并且在打點之后可以進行斷點調試,如圖所示。

VSCode 插件調試函數計算

當函數調試完成之后,執行部署等操作。

其他調試方案

1.Web 框架的本地調試

在阿里云 FaaS 平臺開發傳統 Web 框架,以 Python 語言編寫的 Bottle 框架為例,可以增加以下代碼:

  1. app = bottle.default_app()并且對run方法進行條件限制 (if __name__ == '__main__'):if __name__ == '__main__':    bottle.run(host='localhost', port=8080, debug=True)例如:# index.pyimport bottle@bottle.route('/hello/<name>')def index(name):    return "Hello world"app = bottle.default_app()if __name__ == '__main__':    bottle.run(host='localhost', port=8080, debug=True) 

當部署應用到線上時,只需要在入口方法處填寫 ndex.app,即可實現平滑部署。

2.本地模擬事件調試

針對非 Web 框架,我們可以在本地構建一個方法,例如要調試對象存儲觸發器:

  1. import jsondef handler(event, context):    print(event)def test():    event = {        "events": [            {                "eventName""ObjectCreated:PutObject",                "eventSource""acs:oss",                "eventTime""2017-04-21T12:46:37.000Z",                "eventVersion""1.0",                "oss": {                    "bucket": {                        "arn""acs:oss:cn-shanghai:123456789:bucketname",                        "name""testbucket",                        "ownerIdentity""123456789",                        "virtualBucket"""                    },                    "object": {                        "deltaSize"122539,                        "eTag""688A7BF4F233DC9C88A80BF985AB7329",                        "key""image/a.jpg",                        "size"122539                    },                    "ossSchemaVersion""1.0",                    "ruleId""9adac8e253828f4f7c0466d941fa3db81161****"                },                "region""cn-shanghai",                "requestParameters": {                    "sourceIPAddress""140.205.***.***"                },                "responseElements": {                    "requestId""58F9FF2D3DF792092E12044C"                },                "userIdentity": {                    "principalId""123456789"                }            }        ]    }    handler(json.dumps(event), None)if __name__ == "__main__":    print(test()) 

這樣,通過構造一個 event 對象,即可實現模擬事件觸發。

Serverless 應用優化

資源評估依舊重要

Serverless 架構雖然是按量付費的,但是并不代表它就一定比傳統的服務器租用費用低。如果對自己的項目評估不準確,對一些指標設置不合理,Serverless 架構所產生的費用可能是巨大的。

一般情況下,FaaS 平臺的收費和三個指標有直接關系,即所配置的函數規格(例如內存規格等)、程序所消耗的時間以及產生的流量費用。通常情況下,程序所消耗的時間可能與內存規格、程序本身所處理的業務邏輯有關。流量費用與程序本身和客戶端交互的數據包大小有關。所以在這三個常見的指標中,可能因為配置不規范導致計費出現比較大偏差的就是內存規格。以阿里云函數計算為例,假設有一個 Hello World 程序,每天都會被執行 10000 次,不同規格的內存所產生的費用(不包括網絡費用)如表所示。

通過表中可以看到,當程序在 128MB 規格的內存中可以正常執行,如果錯誤地將內存規格設置成 3072MB,可能每月產生的費用將會暴漲 25 倍!所以在上線 Serverless 應用之前,要對資源進行評估,以便以更合理的配置來進一步降低成本。

合理的代碼包規格

各個云廠商的 FaaS 平臺中都對代碼包大小有著限制。拋掉云廠商對代碼包的限制,單純地說代碼包的規格可能會產生的影響,通過函數的冷啟動流程可以看到,如圖所示。

函數冷啟動流程簡圖

在函數冷啟動過程中,當所上傳的代碼包過大,或者文件過多導致解壓速度過慢,就會使加載代碼過程變長,進一步導致冷啟動時間變久。

設想一下,當有兩個壓縮包,一個是只有 100KB 的代碼壓縮包,另一個是 200MB 的代碼壓縮包,兩者同時在千兆的內網帶寬下理想化(即不考慮磁盤的存儲速度等)下載,即使最大速度可以達到 125MB/s,那么前者的下載時間只有不到 0.01 秒,后者需要 1.6 秒。除了下載時間之外,加上文件的解壓時間,那么兩者的冷啟動時間可能就相差 2 秒。一般情況下,對于傳統的 Web 接口,如果要 2 秒以上的響應時間,實際上對很多業務來說是不能接受的,所以在打包代碼時就要盡可能地降低壓縮包大小。以 Node.js 項目為例,打包代碼包時,我們可以采用 Webpack 等方法來壓縮依賴包大小,進一步降低整體代碼包的規格,提升函數的冷啟動效率。

合理復用實例

為了更好地解決冷啟動的問題、更合理地利用資源,各個云廠商的 FaaS 平臺中是存在實例復用情況的。所謂的實例復用,就是當一個實例完成一個請求后并不會釋放,而是進入靜默的狀態。在一定時間范圍內,如果有新的請求被分配過來,則會直接調用對應的方法,而不需要再初始化各類資源等,這在很大程度上減少了函數冷啟動的情況出現。為了驗證,我們可以創建兩個函數:

  1. 函數1:# -*- coding: utf-8 -*-def handler(event, context):    print("Test")    return 'hello world'函數2:# -*- coding: utf-8 -*-print("Test")def handler(event, context):    return 'hello world' 

在控制臺點擊“測試”按鈕,對上述兩個函數進行測試,判斷其是否在日志中輸出了 “Test”,統計結果如表所示。

函數復用記錄

可以看到,其實實例復用的情況是存在的。進一步思考,如果 print("Test") 語句是一個初始化數據庫連接,或者是函數 1 和函數 2 加載了一個深度學習模型,是不是函數 1 就是每次請求都會執行,而函數 2 可以復用已有對象?

所以在實際的項目中,有一些初始化操作是可以按照函數 2 實現的,例如:

在機器學習場景下,在初始化的時候加載模型,避免每次函數被觸發都會加載模型。
在初始化的時候建立鏈接對象,避免每次請求都創建鏈接對象。
其他一些需要首次加載時下載、加載的文件在初始化時實現,提高實例復用效率。

善于利用函數特性

各個云廠商的 FaaS 平臺都有一些特性。所謂的平臺特性,是指這些功能可能并不是 CNCF WG-Serverless Whitepaper v1.0 中規定的能力或者描述的能力,僅僅是作為云平臺根據自身業務發展和訴求從用戶角度出發挖掘出來并且實現的功能,可能只是某個云平臺或者某幾個云平臺所擁有的功能。這類功能一般情況下如果利用得當會讓業務性能有質的提升。

1.Pre-freeze & Pre-stop

以阿里云函數計算為例,在平臺發展過程中,用戶痛點(尤其是阻礙傳統應用平滑遷移至 Serverless 架構)如下。

異步背景指標數據延遲或丟失:如果在請求期間沒有發送成功,則可能被延遲至下一次請求,或者數據點被丟棄。
同步發送指標增加延時:如果在每個請求結束后都調用類似 Flush 接口,不僅增加了每個請求的延時,對于后端服務也產生了不必要的壓力。
函數優雅下線:實例關閉時應用有清理連接、關閉進程、上報狀態等需求。在函數計算中實例下線時,開發者無法掌握,也缺少 Webhook 通知函數實例下線事件。
根據這些痛點,阿里云發布了運行時擴展 (Runtime Extensions) 功能。該功能在現有的 HTTP 服務編程模型上擴展,在已有的 HTTP 服務器模型中增加了 PreFreeze 和 PreStop Webhook。擴展開發者負責實現 HTTP handler,監聽函數實例生命周期事件,如圖所示。

擴展編程模型與現有編程模型處理的工作內容簡圖

PreFreeze:在每次函數計算服務決定冷凍當前函數實例前,函數計算服務會調用 HTTP GET/prefreeze 路徑,擴展開發者負責實現相應邏輯以確保完成實例冷凍前的必要操作,例如等待指標發送成功等,如圖所示。函數調用 InvokeFunction 的時間不包含 PreFreeze Hook 的執行時間。

PreFreeze時序圖

PreStop:在每次函數計算決定停止當前函數實例前,函數計算服務會調用 HTTP GET/prestop 路徑,擴展開發者負責實現相應邏輯以確保完成實例釋放前的必要操作,如等待數據庫鏈接關閉,以及上報、更新狀態等,如圖所示。

PreStope 時序圖

2.單實例多并發

眾所周知,各云廠商的函數計算通常是請求級別的隔離,即當客戶端同時發起 3 個請求到函數計算,理論上會產生 3 個實例進行應對,這個時候可能會涉及冷啟動以及請求之間狀態關聯等問題。因此,部分云廠商提供了單實例多并發的能力(例如阿里云函數計算)。該能力允許用戶為函數設置一個實例并發度 (InstanceConcurrency) ,即單個函數實例可以同時處理多個請求,如圖所示。

單實例多并發效果簡圖

如上圖所示,假設同時有 3 個請求需要處理,當實例并發度設置為 1 時,函數計算需要創建 3 個實例來處理這 3 個請求,每個實例分別處理 1 個請求;當實例并發度設置為 10 時(即1個實例可以同時處理 10 個請求),函數計算只需要創建 1 個實例就能處理這 3 個請求。

單實例多并發的優勢如下。

減少執行時長,節省費用。例如,偏 I/O 函數可以在一個實例內并發處理請求,減少了實例數,從而減少總的執行時長。
請求之間可以共享狀態。多個請求可以在一個實例內共用數據庫連接池,從而減少和數據庫之間的連接數。
降低冷啟動概率。由于多個請求可以在一個實例內處理,創建新實例的次數會減少,冷啟動概率降低。
減少占用 VPC IP。在相同負載下,單實例多并發可以降低總的實例數,從而減少 VPC IP 的占用。
單實例多并發的應用場景比較廣泛,例如函數中有較多時間在等待下游服務響應的場景就比較適合使用該功能。單實例多并發也有不適合應用的場景,例如函數中有共享狀態且不能并發訪問時,單個請求的執行要消耗大量 CPU 及內存資源,這時就不適合使用單實例多并發功能。

 

責任編輯:梁菲 來源: 阿里云云棲號
相關推薦

2021-09-18 10:23:43

Serverless

2021-09-08 10:12:39

Serverless 云計算

2021-10-15 10:00:31

Serverless Knative

2021-11-18 09:46:24

ServerlessKubeless 阿里云

2017-05-29 08:18:11

Serverless架構軟件系統

2022-10-27 14:25:46

無服務器Serverless云原生

2016-07-01 14:43:32

DockerServerless

2021-09-06 16:00:39

Serverless當當Knative

2021-09-13 18:09:59

騰訊文檔業務云計算

2020-04-09 08:57:57

Serverless無服務器語言

2021-05-27 11:03:10

飛豬Serverless

2020-05-26 22:23:03

Serverless容器Serverless

2023-06-28 11:55:50

Serverless架構云計算

2017-03-15 19:03:05

云計算

2020-05-06 16:47:59

ServerlessMVC架構

2023-04-25 08:01:23

JavaQuarkusKubernetes

2020-05-09 09:04:23

Serverless運維測試

2023-01-11 08:00:00

云計算Serverless安全

2021-01-29 12:33:21

云計算Serverless架構

2019-03-14 11:02:21

Serverless前端工程師Ajax
點贊
收藏

51CTO技術棧公眾號

一区二区三区高清在线| 国产亚洲精品v| 欧美私人免费视频| 日韩久久久久久久| 国产手机av在线| 日韩国产一区二区| 欧美成va人片在线观看| 久久久久久久久久久免费视频| 成人免费黄色网页| 久久精品999| 国内精品免费午夜毛片| 日本成人午夜影院| 一区中文字幕电影| 色天使色偷偷av一区二区| 亚洲精品一区二区三区四区高清 | 国产女同在线观看| 国产精品片aa在线观看| 日韩免费在线观看| 国产一区二区不卡在线| 主播福利视频一区| 不许穿内裤随时挨c调教h苏绵| 中文字幕在线免费观看视频| 中文字幕一区二区在线播放 | 伊人久久国产精品| 大奶一区二区三区| 黄色欧美日韩| 亚洲色图日韩av| 北条麻妃亚洲一区| 中文字幕高清在线播放| 亚洲免费av网站| 日本一区二区不卡高清更新| 风流老熟女一区二区三区| 日韩成人av影视| 性欧美亚洲xxxx乳在线观看| 97在线观看免费高| 欧美精品尤物在线观看| 日韩av一区在线观看| 亚洲综合20p| 亚洲日本网址| 色一情一乱一乱一91av| www.av毛片| 黄色av电影在线播放| 久久久久88色偷偷免费| 国产伦精品一区二区三区免| 国产伦精品一区二区三区四区 | av有声小说一区二区三区| 亚洲永久免费av| 一级黄色免费在线观看| 国产精品99999| 久久一区二区视频| 久久99精品久久久久子伦 | 亚洲精品v欧美精品v日韩精品| 免费高清视频在线观看| 青青青青在线| 日韩一区二区在线| 日韩精品中文字幕视频在线| 日本50路肥熟bbw| 国产无色aaa| 美女福利一区二区| 欧美午夜激情在线| 少妇高潮喷水在线观看| 成人三级高清视频在线看| 亚洲一区二区精品3399| 800av在线免费观看| 免费人成视频在线播放| **国产精品| 91麻豆精品国产91久久久久久久久 | 日韩av密桃| 精品在线小视频| 熟妇高潮精品一区二区三区| 你懂的视频欧美| 国产一区二区三区18| 日本免费www| 天天综合网91| 欧美激情国产高清| 日本五十熟hd丰满| 欧美特黄一区| 777精品视频| 欧美一级淫片免费视频黄| 日韩精品一二三四| 91久久国产综合久久91精品网站| 99在线精品视频免费观看20| 国产成人亚洲综合a∨猫咪| 俄罗斯精品一区二区三区| 在线成人高清不卡| 国产情侣久久久久aⅴ免费| 日韩免费一区| 天天操天天色综合| 中国丰满人妻videoshd | 成人影院中文字幕| 日韩av一区二区在线| 久久丫精品忘忧草西安产品| 国产又粗又猛又黄又爽| 日韩av在线发布| 国产区精品视频| www.色呦呦| 91亚洲精品乱码久久久久久蜜桃| 色播亚洲婷婷| 手机电影在线观看| 日韩欧美在线免费| 精品久久久久久无码国产| 亚洲成人在线| 日韩精品中文字幕在线不卡尤物| 一二三区视频在线观看| 美女少妇全过程你懂的久久| www.美女亚洲精品| 九九九国产视频| 日本美女一区二区三区视频| 91一区二区三区| 亚洲一区二区三区四区五区xx| 精品三区视频| 欧美不卡在线视频| 亚洲天堂岛国片| 在线成人黄色| 成人高清视频观看www| 午夜小视频免费| 亚洲欧美激情插| 亚洲狼人综合干| 国产suv精品一区| 自拍偷拍亚洲精品| 六月丁香在线视频| 国产高清在线精品| 亚洲一区二区四区| 最近高清中文在线字幕在线观看1| 5月丁香婷婷综合| 欧美大波大乳巨大乳| 雨宫琴音一区二区在线| 91精品在线一区| sese一区| 精品成人av一区| 色18美女社区| 欧美色蜜桃97| 欧美自拍视频在线观看| 亚洲第一色视频| 亚洲色图欧美偷拍| 第四色婷婷基地| 激情五月综合网| 欧美诱惑福利视频| 日本激情一区二区三区| 伊人婷婷欧美激情| 国产一级片中文字幕| 国产精品成人a在线观看| 国产精品大片wwwwww| 天堂а在线中文在线无限看推荐| 一区二区三区美女| 爱情岛论坛亚洲自拍| 99热国内精品| 国产在线视频2019最新视频| 1769视频在线播放免费观看| 欧美亚洲国产另类| 男人操女人动态图| 亚洲国产日韩在线| 高清视频一区| 3d玉蒲团在线观看| 91精品国产色综合久久久蜜香臀| 久久久久麻豆v国产| 喷白浆一区二区| 日本一区二区三区免费观看| 日本丰满少妇裸体自慰| 亚洲第一黄网| 久久精品美女| 玛雅亚洲电影| 国产一级揄自揄精品视频| 成年人视频免费| 欧美国产精品一区二区三区| 欧美精品性生活| 欧美电影一二区| 91免费看国产| 波多野结衣中文字幕久久| 亚洲精品在线三区| 日本道在线观看| 国产日产欧美一区二区三区 | 黄色小网站在线观看| 69堂成人精品免费视频| 久久艹精品视频| av激情亚洲男人天堂| 99色精品视频| 欧美综合久久| 91gao视频| 漫画在线观看av| 国产亚洲欧美视频| 国产普通话bbwbbwbbw| 亚洲自拍偷拍网站| 国产精品无码一区二区三区免费| 久久激情婷婷| 综合一区中文字幕| 国产极品模特精品一二| 国产91色在线|免| 麻豆传媒在线观看| 亚洲经典中文字幕| 一区精品在线观看| 亚洲一区二区三区四区五区黄| 午夜一区二区三区免费| 美女一区二区三区| 日韩极品视频在线观看| 精品国产一区一区二区三亚瑟| 91最新在线免费观看| 婷婷电影在线观看| www.欧美三级电影.com| 视频二区在线观看| 欧美日韩国产系列| 亚洲国产成人精品激情在线| 国产精品免费观看视频| 插我舔内射18免费视频| 另类小说视频一区二区| 鲁一鲁一鲁一鲁一色| 99精品视频在线| 久久久精品国产一区二区三区| 亚洲黑人在线| 日本国产一区二区三区| 怡红院红怡院欧美aⅴ怡春院| 亚洲欧美日韩一区在线| 精品国产av一区二区| 欧美在线色视频| 91看片在线播放| 亚洲精品不卡在线| 欧美 变态 另类 人妖| 美国一区二区三区在线播放 | 1区1区3区4区产品乱码芒果精品| 中文在线最新版地址| 91丨porny丨首页| 男女午夜激情视频| 欧美日韩国内| 亚洲制服欧美久久| 亚洲区小说区图片区qvod按摩 | 国产午夜伦鲁鲁| 中文字幕人成人乱码| 日韩av在线一区二区三区| 成人影院中文字幕| 91视频在线免费观看| 欧美日韩破处视频| 国产精品白丝jk喷水视频一区| 91桃色在线| 欧美寡妇偷汉性猛交| 黄网页在线观看| 中文字幕欧美在线| 国产三级在线免费观看| 亚洲精品资源美女情侣酒店| 色婷婷av一区二区三| 欧美成人一区二区三区片免费 | 亚洲精品97久久| 成人激情四射网| 555www色欧美视频| 国产又粗又黄又爽视频| 欧美日韩另类一区| 怡红院男人天堂| 欧美性做爰猛烈叫床潮| 中文字幕在线播| 色丁香久综合在线久综合在线观看| a v视频在线观看| 精品久久中文字幕久久av| 福利一区二区三区四区| 亚洲午夜在线视频| 国产网友自拍视频| 精品高清一区二区三区| 亚洲第一在线播放| 日韩欧美亚洲范冰冰与中字| 久久亚洲精品石原莉奈| 欧美伊人精品成人久久综合97| 日本h片在线| 无吗不卡中文字幕| 欧美黄色免费看| 亚洲国产一区二区三区青草影视| 精品视频一区二区在线观看| 亚洲一区二区三区在线看| 粉嫩aⅴ一区二区三区| 精品日韩视频在线观看| 久久99国产综合精品免费| 91福利在线播放| 欧美精品久久久久久久久久久| 日韩一区电影| 手机看片日韩国产| 欧美福利专区| 国模吧无码一区二区三区| 日韩精品乱码av一区二区| 美女在线视频一区二区| 中文字幕久久久| 国产第一页在线播放| 一区二区久久久久| 久久夜靖品2区| 在线视频亚洲一区| 91丨porny丨在线中文 | avove在线观看| 一区二区亚洲| 亚洲成熟丰满熟妇高潮xxxxx| 日本欧美一区二区在线观看| 三级av免费看| 91视频91自| 黄色片网站在线播放| 一区二区三区丝袜| 黄色片中文字幕| 欧美日韩精品一区视频| 黄色小视频免费观看| 亚洲摸下面视频| av免费网站在线| 欧美一级黑人aaaaaaa做受| 欧美国产视频| 久久精品日韩精品| 91精品精品| 欧美 国产 小说 另类| 久久精品国产精品青草| 日韩 中文字幕| 亚洲人成网站精品片在线观看| 六月丁香在线视频| 欧美一区二区三区色| 你懂的在线观看| 欧美韩日一区二区| 成人在线视频免费| 国产尤物99| 一区二区三区网站| 国产精品无码专区av在线播放| 国产福利视频一区二区三区| 国产一区二区三区四区五区六区 | 亚洲少妇中文在线| 日韩成人伦理| 91精品美女在线| 精品日韩欧美一区| 热99这里只有精品| 国产成人在线视频播放| 成人黄色a级片| 一本一道久久a久久精品| 亚洲国产精品欧美久久 | 免费av不卡在线观看| 国产精品三级久久久久久电影| 欧美黄色录像| 日b视频免费观看| 国产专区欧美精品| 色www亚洲国产阿娇yao| 色综合久久中文字幕综合网| 日韩一级在线播放| 欧美丰满少妇xxxxx做受| 亚洲伊人伊成久久人综合网| 五码日韩精品一区二区三区视频| 亚洲中午字幕| 国产成人精品无码片区在线| 亚洲综合图片区| 国产视频一区二区三| 日韩中文字幕在线视频| 成人1区2区| 日韩一区不卡| 蜜臀av性久久久久蜜臀aⅴ流畅 | 在线观看精品| 精品国产乱码久久久久久郑州公司| 中文字幕日韩欧美精品高清在线| 中文字幕永久有效| 国产精品卡一卡二卡三| 中文字幕在线视频第一页| 国产乱对白刺激视频不卡| asian性开放少妇pics| 婷婷综合在线观看| 午夜国产在线观看| 97国产suv精品一区二区62| 精品视频高潮| 5月婷婷6月丁香| 久久女同性恋中文字幕| 无码视频在线观看| 伊人一区二区三区久久精品| jizzyou欧美16| 在线免费一区| 国产精品一区二区在线看| 男女免费视频网站| 日韩免费观看高清完整版在线观看| 欧美wwww| 久久久久久久久久久久久久一区| 美女日韩在线中文字幕| 日本少妇xxxxx| 欧美老女人第四色| 青草在线视频| 久久久久久高清| 美美哒免费高清在线观看视频一区二区| 黄色片网站在线播放| 日韩欧美国产系列| 黄色视屏在线免费观看| 欧美下载看逼逼| 久久国产日韩欧美精品| 久草免费在线视频观看| 日韩成人av网| 国产精品久久久久久久久久齐齐| 国产精品av免费| 成人毛片老司机大片| 欧美一级淫片免费视频黄| 久久国内精品一国内精品| 粉嫩久久久久久久极品| 欧美成人精品欧美一级乱| 亚洲欧美激情精品一区二区| 一级黄色片在线看| 久久香蕉国产线看观看av| aaa国产精品| 免费日韩中文字幕| 亚洲色图另类专区| 亚洲日本在线播放| 国产精品香蕉av| 在线精品一区| 九九热久久免费视频| 精品久久久久久最新网址| 日韩国产网站| 日韩国产成人无码av毛片| 久久精品日产第一区二区三区高清版 | 四虎影院一区二区| 国产电影精品久久禁18|