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

讓PHP程序員工作更高效的四大神器

開發 后端 開發工具
下面這四個項目,讓我們對自己所寫的代碼,更加成竹在胸,無論是執行過程還是調優著手了都有了充分的把握。特意對比,匯總整理的這四大神器,希望它們能改善每一位 PHP 開發者的生活,讓我們的 PHP 開發不再那么地苦逼!

做程序猿「媛」是一個苦逼的活,大周六地早起在技術群里招呼,看到沒有啥人響應,說了一句,「估計都沒有醒」,然后一位哥們拋過來,「在加班」 !

做 Web 開發更是一個苦逼的活,不像是做 iOS,搞定客戶端,基本上就萬事大吉了。做 Web 開發不僅僅是要做后端,前端也需要了解和熟悉!

做前后端通吃的 DevOps 全棧工程師絕對是最苦逼的活,不但需要做開發,而且還要了解運維、優化,不會運維的工程師絕對不是一個好架構師!

但所幸的事,一個優秀的工程師盡管很忙,盡管要熟悉前后端、系統、運營、優化,但是在他的工具箱里,放著一大堆工具,讓這種生活變得不那么苦逼。

這里就介紹四個讓我們 DevOps 生活變得美好的神器。分別是 Xdebug、XHProf 、 OneAPM 和 SocketLog。

Xdebug

作為開發人員,睡得最踏實的事是對自己寫的代碼了如指掌,無論是從功能層面,還是性能層面。而做 Web PHP 開發,比較棘手的一件事情就是代碼的調試。作為腳本語言,在遠程服務器端運行,客戶端生成的全是 HTML 代碼,一般認為我們無法準確地調試運行的情況,更不要說單步調試、變量監控等事情了。其實這是有誤解的,有一個 PHP 擴展 Xdebug 能讓方便地讓我們調試遠程服務器上運行的代碼。

方法很簡單,從 Xdebug 下載***版的源代碼。 wget 解壓:

tar –zxvf xdebug-2.3.3.tgz
cd xdebug-2.3.3 phpize
./configure –with-php-config=/usr/bin/php-config
make
make install

再增加相應的配置到 php.ini ,需要注意有兩點:

1. xdebug 是 zend_extension

2. 端口默認是 9000,和 php-fpm 的缺省端口沖突,所以這里換用 9100

[xdebug]
zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9100

這樣就裝好了,就是如此簡單,下面我們可以開始使用了。以 ThinkPHP 應用開發做例子吧。ThinkPHP 典型的單入口應用,調用層次相對復雜。所以想要了解調用堆棧還是比較麻煩的。要想得到某一行的調用堆棧,可以使用 PHP 自帶的 debug_backtrace 函數可以獲得,但是不怎么形象,返回來一個數組而已。而 Xdebug 就能讓這一切可視化起來。

配合 Xdebug 使用的是 Netbeans 自帶的調試工具。首先通過***項修改了一下 PHP 調試的端口,從9000改成9100,其他不用動。注意 在***行停止 是選上的,這將在 PHP 程序調試時,運行到***行 PHP 代碼時停止,在 ThinkPHP 中,即入口文件 index.php 的***行停止。

讓程序員不再苦逼的四大神器

在本例中,筆者做了一個租車管理系統的示例,項目名為 zuches 。將代碼部署在 http://localhost/zuches 能訪問的地方,索引文件是 index.php。

讓程序員不再苦逼的四大神器

由于 index.php 是入口文件,所以在 index.php 上點擊右鍵,選擇調試。

讓程序員不再苦逼的四大神器

然后 Netbeans 自動打開了如下地址,進入調試狀態 : http://localhost/zuches/index.php?XDEBUG_SESSION_START=netbeans-xdebug 同時運行位置指示停留到了 index.php 的***行。如下:

讓程序員不再苦逼的四大神器

點擊繼續運行,由于在 IndexController.class.phpindex 方法中加上了斷點,所以位置指示又停留在了相應的斷點處。

讓程序員不再苦逼的四大神器

這個時候,我們可以查看中斷時候的調用堆棧和變量了。通過堆??梢苑奖愕囟ㄎ坏礁鞫ㄎ坏念惡拖鄳椒?。

讓程序員不再苦逼的四大神器

各種變量,無論是局部變量和實例屬性,無論是 cookie,還是提交數據,都能在變量表中看到,一目了然。

讓程序員不再苦逼的四大神器

總之,Xdebug 讓我們即使做的是服務器端頁面和 API 開發,也可以像桌面應用開發一樣,調試每一行代碼了。

Xdebug 除了使用來進行單步調試之外,還能收集請求中的執行日志,記錄每一個函數的執行過程。這些日志可以用 wincachegrind 等工具進行分析,看到函數的調用棧和所花的時間。這里不再贅述,我們也不是很推薦,因為 XHProf 在這塊要輕量級和強大的多,不用如此費勁地下載日志,分析日志。

#p#

XHProf

如前文所述,對于 PHP 中函數調用棧和性能分析,XHProf 將 Xdebug 開的先河繼承并發揚光大。XHProf 也是 PHP 擴展,不過不建議從 http://pecl.php.net/package/xhprof 上下載,版本已有近2年沒有更新了,***從 https://github.com/phacility/xhprof 上下載。下載編譯配置和使用過程都很簡單。

配置只需要加上如下兩行:

``` [xhprof] extension=/usr/lib/php/extensions/no-debug-non-zts-20121212/xhprof.so

然后將要相應的 XHProf 代碼配置到需要監控的頁面中,即可以獲得整個頁面的執行中,各函數的調用報表。XHProf 提供了示例,配置成功運行如下:

讓程序員不再苦逼的四大神器

如何看到上面圖中的效果呢?將 examples 、 xhprof_html 、 xhprof_lib 三個目錄放到瀏覽器能訪問到的地方,比如 localhost 的主目錄內。修改 examples/sample.php 中的 <xhprof-ui-address> 換成 如: localhost/xhprof_html/ 。即可。

然后訪問 http://localhost/examples/sample.php 即可以得到輸出結果如下:

讓程序員不再苦逼的四大神器

examples/sample.php 中可以看到,對于頁面的監測分析,在頁面頂部使用 xhprof_enable 開始,而性能的分析的結束,則是在頁面底部使用 xhprof_disable 結束 。這樣每次監控,都需要增加一段代碼,所以為了規范起見。對 XHProf 相關的操作進行了封裝。繼續采用上例 ThinkPHP 版租車系統的例子,看看如何集成 XHProf 分析。

首先將對 XHProf 的操作封裝成了一個類。

<?php class XHProf { private static $strNameSpace = ""; public static function init($strNameSpace = "myhome") { if (!function_exists("xhprof_enable")) { return; } self::$strNameSpace = strval($strNameSpace); $param = XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY; $path = getcwd(); require_once $path.'/../xhprof_lib/utils/xhprof_lib.php'; require_once $path.'/../xhprof_lib/utils/xhprof_runs.php'; xhprof_enable($param); register_shutdown_function("XHProf::genResult"); } public static function genResult() { $profiler_namespace = self::$strNameSpace; $xhprof_data = xhprof_disable(); $xhprof_runs = new XHProfRuns_Default(); $run_id = $xhprof_runs->save_run($xhprof_data, $profiler_namespace); $profiler_url = sprintf('http://' . $_SERVER['HTTP_HOST'] . '/xhprof_html/index.php? run=%s&source=%s', $run_id, $profiler_namespace); echo '<p style="position:absolute; left:0; top:0; background:orange; padding:8px;">' . '<a href="' . $profiler_url . '" target="_blank">Profiler output</a></p>';
    }
}
 

在這個封裝的類中,首先檢測了 xhprof_enable 函數是否存在,這可以用于判斷是否成功安裝配置了 xhprof 擴展。其次設置了參數,特別值得一提的是使用函數 register_shutdown_function 來注冊一個操作,這個操作在頁面結束之前,會自動運行。

這樣,在分析頁面性能之時,只需要在 ThinkPHP 應用的 index.php 上加上兩行,即可以了。

比如:

require_once "xhprof.php"; XHProf::init("zuches");

運行后,得到如下效果:

讓程序員不再苦逼的四大神器

并且每一個頁面,都有這樣的輸出。點擊「Profiler output」即得到了報表。

讓程序員不再苦逼的四大神器

在本例中,可以看到***的集成方法,運行時間超過了2 S,是值得關注并優化了。從報表中,可以首先看到各個方法或者函數的調用次數,運行時間,以及可以層層點進去看到父子層級的調用關系 。

需要注意的是,在線上,如上使用 XHProf 要慎重,即使打開,也要有限制條件地打開,比如當前用戶是某些調試開發者用戶時才打開。否則,普通用戶看到這樣的輸出,則不明所以,給用戶帶來困惑,當 然,我們也可以不輸出,而將數據直接存儲,在后臺系統中查看,這樣用戶就感受不到了。有一個工具,可以完全消除這些糾結。那就是 OneAPM ,在第四部分我們再介紹。

#p#

SocketLog

作為程序員,除了新功能開發之外,最常見的一個工作就是查錯,尤其是遠程用戶的查錯,還是一個很痛苦的過程。當前又加上了微信開發,API 開發等操作。對于微信內、API 由遠程用戶所調用的時候,情況多變,查錯也更加地麻煩。這個時候,我們的第三個神器登場了。那就是 SocketLog。

SocketLog 是國內知名 PHP 開發者羅飛的作品,羅飛是 ThinkPHP 的核心開發者,也是優才學院全棧工程師主力講師。現任三生社群 CTO。SocketLog 的 github 地址為: https://github.com/luofei614/SocketLog ,在項目的主頁上,詳細地介紹了用法和所用的技術。這里簡單地匯總講解一下。

SocketLog 的使用,主要要分成三個步驟,***步是安裝 Chrome 插件??梢詮?github 下載的安裝包中去安裝,或者可以從 Chrome 應用商店下載。

第二步是需要啟動 Socket 服務,Socket 服務是 WebSocket 協議的,早期版本是 PHP 編寫的服務器,新的版本已經使用 Node.js 來實現了。啟動方法很簡單,進入解壓后的目錄。

執行 node server/index.js 即可。

安裝好插件之后,就在 Chrome 上看到如下圖標。灰色表示沒有連接上。

讓程序員不再苦逼的四大神器

同時啟動了服務器,做好設置,就會看到圖標變成藍色了。

讓程序員不再苦逼的四大神器

需要注意的是,盡管我們這里監聽地址配置成了本地地址,其實也可以配置遠程地址。不過遠程地址的話記得打開服務器上的防火墻,因為一般1229端口在防火墻中是關閉的。

SocketLog 的原理,是在服務器端,往 WebSocket 服務器上寫數據,作為客戶端的 Chrome 插件,即能收到數據。所以不管是遠程 API 調用,還是網頁訪問,只要在程序中往這個 WebSocket 服務器寫了數據,只要監聽了這個 Websocket 服務的客戶端都能收到相應的調試日志。

第三步是埋代碼。使用方法也很簡單。比如我們在上面的 ThinkPHP 的 index.php 加入兩行代碼。會看到如下輸出 。

讓程序員不再苦逼的四大神器

然后我們在其他終端上也訪問一下這臺機器的這個頁面地址,看看是否能得到輸出呢?開始沒有任何輸出效果。因為缺省情況下是不記錄普通用戶所調用的 slog 的。

在 slog 之上的語句加上這一行,就有了。

slog(array('force_client_id'=>'test'),'set_config');

Test 這個插件的用戶,收到了所有的 slog 消息。如下圖所示:

讓程序員不再苦逼的四大神器

并且這種輸出 ,無論是別的用戶觸發,而還后臺服務程序,均可以輸出 。所以非常地方便,開發人員在自己的機器上就收集到了想要收集的用戶所觸發的調試信息。

然后為了體現對 SQL 語句的監聽。我們在 ThinkPHP/Library/Think/Db/Driver.class.php 的第1139行加上 slog($str) ,然后再訪問頁面,就得到了如下輸出 ,可見實現了對 SQL 日志的監控。

SocketLog 的功能看起來雖然簡單,但是卻非常有用、好用,是***的開發神器。有關 SocketLog 的更多介紹和使用說明,建議現在就立刻下載,并且進入 github 主頁好好地研究吧!

#p#

OneAPM

從上面的使用來看,SocketLog 和 XHProf 都有兩個不足之處,一是需要埋代碼,二是只是基于單獨一個頁面會話的。而 OneAPM 相對來講,就更強大了,可以理解為云端 SaaS 版的 XHProf 和更強大的 SocketLog。不過有著更為強大的優勢。比如:

  1. OneAPM 的 PHP 探針,安裝完成之后,并不需要在代碼中埋入任何代碼。

  2. 在數據收集的過程中,不需要開發和運維的參與,探針全自動收集,并提交到遠程服務器。

  3. 由于數據累積,所以支持歷史報表,以及比 XHProf 和 SocketLog 更豐富的功能。

  4. PHP 只是 OneAPM 所支持的一種語言,它可以支持多種語言,HTML5、 iOSAndroid 、 Java.NETpython 、 Node.js 、 PHP 、 ruby 等。

OneAPM 的安裝過程也比較簡單,不過由于是 SaaS 服務,所以得上官網注冊一個賬號。登錄了之后,在應用程序里,點擊添加,再選中 PHP,就進入了安裝探針的說明。

讓程序員不再苦逼的四大神器

分為如下幾步:

1. 獲取授權編號

OneAPM 授權憑證,用于配置和身份識別。

2. 下載 OneAPM PHP agent 安裝程序

3. 解壓 OneAPM PHP Agent

tar -xzf OneAPM_php_Agent_2.3.11.tar.gz

4. 安裝 OneAPM PHP Agent

  • 定位路徑至您的安裝包所在文件夾

    cd oneapm-php5-linux-install-script

  • 執行安裝命令

    sudo ./oneapm-install install

5. 輸入 License Key

請點擊步驟1中的「生成授權編號按鈕」成功安裝,界面如下:

讓程序員不再苦逼的四大神器

若出現以下信息,則代表安裝成功。

OneAPM is now installed on your system. Congratulations!

當頁面出現以下提示時,啟動 Daemon

And then start php-agent in /usr/bin/oneapm-daemon

運行以下指令來啟動 Daemon

sudo /usr/bin/oneapm-daemon

重啟 Apache 或你使用的 web 調度程序 「如 php-fpm 」

6. 靜候5分鐘,開啟 OneAPM 之旅

靜候5分鐘,等待應用程序向 OneAPM 發送應用程序性能數據,即可開始使用 OneAPM 應用性能管理。

OneAPM 收集的數據很豐富。將收集的響應時間數據,分為四個大塊:

  • Web 事務,就是頁面業務邏輯本身

  • 數據庫,數據庫的連接和數據讀取

  • 錯誤統計,對所有類型的錯誤做了歸類統計

  • 外部服務,即外部 API 等的設備

以筆者的站點為例,12小時的數據如下圖:

讓程序員不再苦逼的四大神器

從上面這個圖,我們看到響應時間,慢的達到了600 ms 以上,那是什么導致的呢?我們可以分別查看:

讓程序員不再苦逼的四大神器

可見 Web 事務比較穩定,可以比較清楚地看到平均的響應時間在 50ms-75ms之間。

讓程序員不再苦逼的四大神器

數據庫響應時間也很短,在幾 ms 這個級別。而外部服務就明顯在幾百 ms 這個級別,還有的高達 600 ms 。

讓程序員不再苦逼的四大神器

不說別的,就通過這簡單的報表,從目前看,就可以定位到,想要做優化,從外部服務的響應時間上下手優化,帶來的效果是***的。

下面我們再來看看三個細化一層的報表 ,在 Web 事務統計中,盡管平均數很低,但是也列出了響應時間最長的5個請求。如下:

讓程序員不再苦逼的四大神器

從上面的數據可以看出,響應時間最長的幾個,主要突出在 bind.php ,這個是負責 QQ 登錄的請求,需要向騰訊請求數據。

而在數據庫一欄中,可以看到最慢的5個表格的情況。

讓程序員不再苦逼的四大神器

在外部的服務中,果不出所料,是對微博、微信、QQ 登錄、七牛上傳、支付寶通知等外部服務,所占時間最長。如下圖所示。

讓程序員不再苦逼的四大神器

這只是普通的統計報表,對于具體的某一個慢的頁面,更有詳細的調用分析。

比如上面的 bind.php ,果真最慢的是從網絡上獲取數據。也就是說,第三方登錄時,從第三方網站取數據花了絕大部分時間。 去查看詳情,有兩個不足之處,一是需要埋代碼,二是只是基于單獨一個頁面會話的。而 OneAPM 稱為慢事務追蹤,拉到頁面的***部就能看到。

讓程序員不再苦逼的四大神器

讓程序員不再苦逼的四大神器

在后臺報表中,我們同樣也能看到是哪些 SQL 語句慢。比如如下是 bind.php 中慢的 SQL 語句。

讓程序員不再苦逼的四大神器

更為重要的是,還有所有錯誤信息的收集,也一目了然。

讓程序員不再苦逼的四大神器

所以無論從功能之強大,還是易用之方便,有兩個不足之處,一是需要埋代碼,二是只是基于單獨一個頁面會話的。而 OneAPM 不愧是商業化的 SaaS 服務,比 XHProf 勝去了不少。在筆者的項目中,已經大量使用。并取得了好的效果。

以上四個項目,讓我們對自己所寫的代碼,更加成竹在胸,無論是執行過程還是調優著手了都有了充分的把握。特意對比,匯總整理的這四大神器,希望它們能改善每一位 PHP 開發者的生活,讓我們的 PHP 開發不再那么地苦逼!

責任編輯:王雪燕 來源: OPEN資訊
相關推薦

2017-01-05 14:01:38

linux密碼高強度

2019-07-17 10:55:40

Kubernetes工具Katacoda

2012-04-11 10:03:00

JavaEclipse

2014-09-25 13:12:47

微信企業號功能體系

2012-02-08 13:52:30

云計算

2010-09-06 22:02:41

GartnerIT自助服務

2023-11-07 08:25:34

API接口參數驗證

2013-07-23 10:50:24

C程序

2015-09-22 09:58:52

程序員工作自律

2022-10-21 17:19:11

微軟Teams元宇宙

2009-06-10 17:12:28

程序員

2018-05-08 14:58:07

戴爾

2019-01-07 09:31:37

程序員測試人員代碼

2010-09-09 16:39:24

2015-08-13 15:29:57

簡化敲門

2015-08-14 09:28:44

簡化程序員竅門

2016-10-27 17:49:07

群暉群暉科技NAS

2013-11-12 14:03:48

2011-03-21 09:01:49

CSS框架

2015-07-17 09:50:16

Carthage優劣比較
點贊
收藏

51CTO技術棧公眾號

av中文字幕在线播放| 精品区在线观看| 日韩综合精品| 日韩欧美在线综合网| 黄页网站大全在线观看| 成年人在线视频免费观看| 裸体一区二区三区| 国产最新精品视频| 久久精品成人av| 成人亚洲精品| 日韩欧美aaa| 吴梦梦av在线| 人成在线免费视频| 国内不卡的二区三区中文字幕| 韩日欧美一区二区| 极品美妇后花庭翘臀娇吟小说| 国产精品流白浆在线观看| 91福利在线导航| 精品少妇人妻av免费久久洗澡| 999在线视频| 99国产一区二区三精品乱码| 91精品国产自产在线老师啪| 国产成人免费看| 欧美在线免费| 日韩中文字幕视频| 色欲av无码一区二区三区| 亚洲国产aⅴ精品一区二区| 色偷偷久久人人79超碰人人澡 | 欧美女v视频| 丰满岳乱妇一区二区三区| 国产精品视频xxx| 一本一道无码中文字幕精品热| 欧美精品18| 超在线视频97| 四虎永久免费地址| 精品视频亚洲| 亚洲人成啪啪网站| 亚洲欧美在线不卡| 99精品国产一区二区三区2021| 69成人精品免费视频| 91视频免费版污| 国产免费不卡| 精品国产鲁一鲁一区二区张丽| 国产精品一二三在线观看| 免费av网站在线观看| 国产欧美综合在线| 日韩国产精品一区二区三区| 男人的天堂在线免费视频| 91天堂素人约啪| 精品一区二区国产| 日韩在线视频第一页| 懂色av中文字幕一区二区三区| 亚洲一区二区三区xxx视频| 一级黄色片免费看| 久久精品国产久精国产爱| 国产精品久久久久久久久久免费 | 欧美成人黄色| 欧美性猛交xxxx乱大交3| 鲁一鲁一鲁一鲁一色| 99久久精品免费看国产小宝寻花| 亚洲自拍偷拍网站| 91成人综合网| sm在线播放| 一本大道av一区二区在线播放| 久久国产乱子伦免费精品| 欧美aaa视频| 欧美视频你懂的| 五月激情五月婷婷| 亚洲精品18| 亚洲精品电影网| 熟女俱乐部一区二区| 欧美久久综合网| 久久精品91久久久久久再现| a级片在线观看免费| 亚洲人成高清| 日本国产高清不卡| 亚洲天天综合网| 国产精品自在在线| 精品国产乱码久久久久| 搞黄视频在线观看| 亚洲男人电影天堂| 91猫先生在线| 日韩免费在线电影| 亚洲电影免费观看高清完整版在线 | 91杏吧porn蝌蚪| 在线观看的日韩av| 国产高清视频一区三区| 国产精品国产三级国产aⅴ| 国产suv精品一区二区883| 蜜桃91精品入口| 黄色网页在线免费看| 午夜伊人狠狠久久| 五月天激情视频在线观看| 日韩欧美中文字幕一区二区三区| 亚洲国产精品99| 成人精品一二三区| 亚洲欧洲视频| 91免费精品视频| 视频二区在线| 亚洲少妇30p| 黄色免费福利视频| av在线国产精品| 亚洲女人天堂视频| 久久综合激情网| 免费久久99精品国产| 91香蕉视频在线下载| 韩国中文字幕2020精品| 亚洲在线视频网站| 午夜激情av在线| 日韩在线麻豆| 欧美成人性色生活仑片| www.五月婷婷.com| 99久久99久久久精品齐齐| 最新不卡av| 色8久久影院午夜场| 欧美成人video| 男人av资源站| 日韩电影在线观看网站| 91免费看蜜桃| 日本在线视频站| 一本久久综合亚洲鲁鲁五月天| 欧美一区二区三区影院| 久久精品不卡| 国产精品日韩在线播放| 凸凹人妻人人澡人人添| 亚洲自拍偷拍麻豆| www.成年人| 成人精品影院| 国产成人一区二区三区小说| 日本天堂在线| 欧美日韩国产在线| 一二三区视频在线观看| 天天做综合网| 国产欧亚日韩视频| 一级毛片视频在线| 欧美日韩精品一区视频| 纪美影视在线观看电视版使用方法| 国产精品乱看| 久久久久久国产精品免费免费| 欧美日韩色网| 精品日韩一区二区三区| 欧美日韩免费做爰视频| 国产精品资源在线观看| 国产精品8888| 久久在线观看| 欧美大片免费观看在线观看网站推荐 | 亚洲黄页一区| 国产乱子伦精品| 福利写真视频网站在线| 亚洲精品在线观看网站| 久久精品国产亚洲AV无码麻豆 | 欧美三级电影网站| 九九热免费在线| 日本成人在线视频网站| 手机成人在线| 四虎国产精品免费久久| 久久久av一区| 亚洲精品97久久中文字幕| 亚洲专区一二三| 欧亚乱熟女一区二区在线| 亚洲黄色精品| 欧美日韩国产精品一卡| 成人免费黄色| 久久视频国产精品免费视频在线| 999久久久久| 亚洲图片欧美综合| 无码成人精品区在线观看| 亚洲欧美日韩国产综合精品二区| 看高清中日韩色视频| 亚洲第一会所| 久久色在线播放| 日韩中文字幕观看| 欧美在线观看18| 老湿机69福利| 91在线观看高清| 最新中文字幕免费视频| 中文字幕午夜精品一区二区三区 | 日本精品久久电影| 99视频在线观看地址| 日韩精品一区二区在线| 日韩av大片在线观看| 欧美国产激情二区三区| 在线播放免费视频| 国产日韩免费| 在线观看亚洲视频啊啊啊啊| 成人搞黄视频| 国产精品久久二区| 国产精品国精产品一二| 亚洲天堂影视av| 国产成人三级在线播放| 欧美性猛交xxxx免费看漫画| 欧美大片xxxx| 久久综合久久综合亚洲| 午夜激情影院在线观看| 亚洲一区亚洲| 日韩一二区视频| 国产亚洲一区| 成人国产1314www色视频| 国产成人精品亚洲日本在线观看| 欧美精品情趣视频| 国产中文字幕在线| 精品久久久三级丝袜| www.五月婷婷.com| 黄网动漫久久久| 黑人巨大精品一区二区在线| 久久综合精品国产一区二区三区| 久久aaaa片一区二区| 日韩精品欧美成人高清一区二区| 免费极品av一视觉盛宴| 色综合狠狠操| 欧美日本韩国国产| 中文一区二区三区四区| 国产欧美在线视频| 日本在线中文字幕一区二区三区 | 国产情侣在线视频| 亚洲激情自拍视频| 久久一级免费视频| 久久婷婷国产综合精品青草| 亚洲黄色小说在线观看| 韩国一区二区在线观看| 男女啪啪网站视频| 欧美一级专区| 六月婷婷在线视频| 极品日韩av| 日韩在线视频在线| 亚洲一区二区三区无吗| 亚洲欧洲一区二区| 精品视频免费在线观看| 欧美深深色噜噜狠狠yyy| 美女午夜精品| 精品国产免费人成电影在线观... 精品国产免费久久久久久尖叫 | 欧美好骚综合网| 亚洲成人av动漫| 视频一区欧美| 日本不卡一区二区三区在线观看| 男人的天堂久久| 国产伦一区二区三区色一情| 日韩一二三区在线观看| 91免费视频国产| aa亚洲一区一区三区| 国产在线视频一区| 成人av在线播放| 成人免费网站在线| www.久久热| 91成人免费视频| 都市激情亚洲| 国产亚洲欧美一区二区| 精品福利网址导航| 精品综合久久| 国产91精品对白在线播放| 日本电影一区二区三区| 国产欧美日韩视频在线| 五月天亚洲综合小说网| 欧美gay男男猛男无套| 懂色av粉嫩av蜜臀av| 亚洲高清影视| 日韩精品在线中文字幕| 99热这里只有精品8| 91av在线免费播放| 久久精品国产99国产| 久久久久无码精品| 成人性视频免费网站| 五十路六十路七十路熟婆 | 日本高清不卡免费| 亚洲综合一区二区三区| 日韩精品一区二区三| 日韩欧美中文第一页| 伊人网综合在线| 欧美一三区三区四区免费在线看 | 亚洲网址你懂得| 91九色在线porn| 欧美另类高清videos| 欧美aa一级| 国产精品日韩欧美| 7777精品| 日韩片电影在线免费观看| 国产精品传媒精东影业在线| 男人添女人下部视频免费| 男人的天堂亚洲在线| 亚洲欧美日本一区二区三区| 成人午夜短视频| 一区二区三区在线观看免费视频| 亚洲色图制服诱惑| 久久久久久久久久久久久av| 欧美日韩国产综合视频在线观看| 丁香花免费高清完整在线播放| 亚洲欧美日韩国产精品| 精品视频在线一区二区| 久久青草福利网站| av成人在线观看| 国产精品久久国产三级国电话系列| 免费看成人吃奶视频在线| 国产精品99久久久久久大便| 99riav1国产精品视频| 欧美美女性视频| 26uuu精品一区二区三区四区在线| 国产91在线播放九色| 欧美日韩国产色视频| www.黄色小说.com| 在线视频亚洲欧美| gogo高清午夜人体在线| 国产综合在线观看视频| 欧美精品momsxxx| 久久国产精品网| 国产一区三区三区| 亚洲性猛交xxxx乱大交| 亚洲一区免费在线观看| 这里只有精品国产| 日韩精品在线免费观看| 伊人在我在线看导航| 国产精品视频专区| 最新亚洲精品| 黄色成人在线看| 国产精品一区二区果冻传媒| 丰满的亚洲女人毛茸茸| 疯狂蹂躏欧美一区二区精品| 国产高清免费av| 日韩中文在线视频| 自拍偷自拍亚洲精品被多人伦好爽| 国产高清精品一区| 欧美+日本+国产+在线a∨观看| 五月婷婷丁香综合网| 久久伊人蜜桃av一区二区| 亚洲黄色三级视频| 精品国产免费一区二区三区四区 | 亚洲精品免费在线视频| 成人精品视频| av五月天在线| 国产日韩在线不卡| 中文字幕一区二区人妻视频| 亚洲国产免费av| 国产福利在线免费观看| 99视频免费观看| 欧美精品18| 岛国精品一区二区三区| 亚洲综合色网站| 丰满熟妇人妻中文字幕| 欧美国产日韩中文字幕在线| 日本精品在线观看| 日韩精品久久一区二区| 国产成人综合在线观看| 美女视频黄免费| 亚洲大胆美女视频| а√在线中文在线新版| 国语精品免费视频| 国产精品久久久久毛片大屁完整版| 国产xxxxxxxxx| 欧美性猛xxx| 高清av电影在线观看| 国产精品无av码在线观看| 日本久久精品| 亚洲天堂av一区二区三区| 亚洲精品免费在线播放| 亚洲国产精品久久久久爰性色| 欧美黑人性猛交| 欧美亚洲色图校园春色| 欧美日韩在线不卡视频| 久久蜜臀中文字幕| 亚洲无码久久久久| 美女精品久久久| 激情小说一区| 亚洲成熟丰满熟妇高潮xxxxx| 日本一区二区三区四区在线视频| 在线观看国产精品视频| 欧美成人激情视频免费观看| 2023国产精华国产精品| 免费高清在线观看免费| 国产女主播一区| 国产高清在线免费| 69久久夜色精品国产69| 成人精品视频| 日本一级大毛片a一 | 91国内精品久久久| 欧美精品一区三区| 亚洲成在人线免费观看| 向日葵污视频在线观看| 亚洲精品成人悠悠色影视| 色香蕉在线视频| 国产精品美女av| 欧美日本一区二区视频在线观看| 中文字幕av观看| 欧美人牲a欧美精品| 俺来俺也去www色在线观看| 日本高清不卡一区二区三| 激情av综合网| 五月婷婷亚洲综合| www.欧美免费| 三级小说欧洲区亚洲区| 伊人国产在线视频| 亚洲va欧美va人人爽| 自拍视频在线网| 精品无人区一区二区三区竹菊| 精品在线播放午夜| 日韩少妇高潮抽搐| 日韩亚洲欧美中文在线| 国语一区二区三区| 亚洲欧美aaa| 欧美性黄网官网| 黄色污污视频在线观看| 一本久道久久综合|