日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

go语言项目优化(经验之谈)

發布時間:2024/9/3 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 go语言项目优化(经验之谈) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 Go的應用場景

在斗魚我們將GO的應用場景分為以下三類,緩存類型數據,實時類型數據,CPU密集型任務。這三類應用場景都有著各自的特點。

● 緩存類型數據在斗魚的案例就是我們的首頁,列表頁,這些頁面和接口的特點是不同用戶在同一段時間得到的數據都是一樣的,通常這些緩存類型數據的包都比較大,并且這些數據沒有用戶態,具有一定價值,很容易被爬蟲爬取。
● 實時類型數據在斗魚的案例就是視頻流,關注數據,這些數據的特點是每次請求獲取的數據都不一樣。并且容易因為某些業務場景導流,例如主播開播提醒,或者某個大型賽事開賽,會在短時間內同時涌入大量用戶,導致服務器流量陡增。
● CPU密集型任務在斗魚的案例就是我們的列表排序引擎。斗魚的列表排序數據源較多,算法模型復雜。如何在短時間算完這些數據,提高列表的導流能力對于我們也是一個比較大的挑戰。
針對這三種業務場景如何做優化,我們也是走了不少彎路。而且跟一些程序員一樣,容易陷入到特定的技術和思維當中去。舉個簡單的例子。早期我們在優化GO的排序引擎的時候,上來就想著各種算法優化,引入了跳躍表,歸并排序,看似優化了不少性能,benchmark數據也比較好看。但實際上排序的算法時間和排序數據源獲取的時間數量級差別很大。優化如果找不對方向,業務中的優化只能是事倍功半。所以在往后的工作中,我們基本上是按照如下圖所示的時間區域,找到業務優化的主要耗時區域。

從圖中,我們主要列舉了幾個時間分布,讓大家對這幾個數值有所了解。從客戶端到CDN回源到機房的時間大概是50ms到300ms。機房內部服務端之間通信大概是5ms到50ms。我們訪問的內存數據庫redis返回數據大概是500us到1ms。GO內部獲取內存數據耗時ns級別。了解業務的主要耗時區域,我們就可以知道應該著重優化哪個部分。

2 Go的業務優化

2.1 緩存數據優化

對于用戶訪問一個url,我們假定這個url為/hello。這個url每個用戶返回的數據結構都是一樣的。我們通常有可能會向下面示例這樣做。對于開發而言,代碼是最直觀最可控的。但這種方式通常只是實現功能,但并不能夠提升用戶體驗。因為對于緩存數據我們沒有必要每次讓CDN回源到源站機房,增加用戶訪問的鏈路時間。

// Echo instance e := echo.New() e.Use(mw.Cache) // Routers e.GET("/hello", handler(HomeHandler))

2.1.1 添加CDN緩存

所以接下來,對于緩存數據,我們不會用go進行緩存,而是在前端cdn進行緩存優化。CDN鏈路如下所示

為了讓大家更好的了解CDN,我先問大家一個問題。從北京到深圳用光速行駛,大概要多久(7ms)。所以如圖所示,當一個用戶訪問一個緩存數據,我們要盡量的讓數據緩存在離用戶近的CDN節點,這種優化方式稱為CDN緩存優化。通過該技術,CDN節點會把附件用戶的請求,聚合到一起統一回源到源站機房。這樣可以不僅節省機房流量帶寬,并且從物理層面上減少了一次鏈路。使得用戶可以更快的獲取到緩存數據。
為了更好的模擬CDN的緩存,我們拿nginx+go來描述這個流程。nginx就相當于圖中的基站,go服務就相當于北京的源站機房。
nginx 配置如下所示:

server { listen 8088; location ~ /hello { access_log /home/www/logs/hello_access.log; proxy_pass http://127.0.0.1:9090; proxy_cache vipcache; proxy_cache_valid 200 302 20s; proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504 http_403 http_404; add_header Cache-Status "$upstream_cache_status"; } }

go 代碼如下所示

package main import ( "fmt" "io" "net/http") func main() { http.Handle("/hello", &ServeMux{}) err := http.ListenAndServe(":9090", nil) if err != nil { fmt.Println("err", err.Error()) } } type ServeMux struct { } func (p *ServeMux) ServeHTTP(w http.ResponseWriter, r *http.Request) { fmt.Println("get one request") fmt.Println(r.RequestURI) io.WriteString(w, "hello world") }

啟動代碼后,我們可以發現。

● 第一次訪問hello,nginx和go都會收到請求,nginx的響應頭里cache-status中會有個miss內容,說明了nginx請求穿透到go

● 第二次再訪問hello,nginx會收到請求,go這個時候就不會收到請求。nginx里響應頭里cache-status會與個hit內容,說明了nginx請求沒有回源到go

● 順帶提下nginx這個配置,還有額外的好處,如果后端go服務掛掉,這個緩存urlhello任然是可以返回數據的。nginx返回如下所

2.1.2 CDN去問號緩存

正常用戶在訪問hellourl的時候,是通過界面引導,然后獲取hello數據。但是對于爬蟲用戶而言,他們為了獲取更加及時的爬蟲數據,會在url后面加各種隨機數hello?123456,這種行為會導致cdn緩存失效,讓很多請求回源到源站機房。造成更大的壓力。所以一般這種情況下,我們可以在CDN做去問號緩存。通過nginx可以模擬這種行為。nginx配置如下:

server { listen 8088; if ( $request_uri ~* "^/hello") { rewrite /hello? /hello? break; } location ~ /hello { access_log /home/www/logs/hello_access.log; proxy_pass http://127.0.0.1:9090; proxy_cache vipcache; proxy_cache_valid 200 302 20s; proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504 http_403 http_404; add_header Cache-Status "$upstream_cache_status"; } }

2.1.3 大流量上鎖

之前我們有講過如果突然之間有大型賽事開播,會出現大量用戶來訪問。這個時候可能會出現一個場景,緩存數據還沒有建立,大量用戶請求仍然可能回源到源站機房。導致服務負載過高。這個時候我們可以加入proxy_cache_lock和proxy_cache_lock_timeout參數

server { listen 8088; if ( $request_uri ~* "^/hello") { rewrite /hello? /hello? break; } location ~ /hello { access_log /home/www/logs/hello_access.log; proxy_pass http://127.0.0.1:9090; proxy_cache vipcache; proxy_cache_valid 200 302 20s; proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504 http_403 http_404; proxy_cache_lock on; procy_cache_lock_timeout 1; add_header Cache-Status "$upstream_cache_status"; } }

2.1.4 數據優化

在上面我們還提到斗魚緩存類型的首頁,列表頁。這些頁面接口數據通常會返回大量數據。在這里我們拿Go模擬了一次請求中獲取120個數據的情況。將slice分為三種情況,未預設slice的長度,預設了slice長度,預設了slice長度并且使用了sync.map。代碼如下所示。這里面每個goroutine相當于一次http請求。我們拿benchmark跑一次數據

package slice_testimport ( "strconv" "sync" "testing")// go test -bench="."type Something struct { roomId int roomName string}func BenchmarkDefaultSlice(b *testing.B) { b.ReportAllocs() var wg sync.WaitGroup for i := 0; i < b.N; i++ { wg.Add(1) go func(wg *sync.WaitGroup) { for i := 0; i < 120; i++ { output := make([]Something, 0) output = append(output, Something{ roomId: i, wg.Done() roomName: strconv.Itoa(i), }) } }func BenchmarkPreAllocSlice(b *testing.B) { }(&wg) } wg.Wait() b.ReportAllocs() var wg sync.WaitGroup for i := 0; i < b.N; i++ { wg.Add(1) go func(wg *sync.WaitGroup) { for i := 0; i < 120; i++ { output := make([]Something, 0, 120) output = append(output, Something{ roomId: i, wg.Done() roomName: strconv.Itoa(i), }) } }func BenchmarkSyncPoolSlice(b *testing.B) { }(&wg) } wg.Wait() b.ReportAllocs() var wg sync.WaitGroup var SomethingPool = sync.Pool{ New: func() interface{} { b := make([]Something, 120) return &b }, } for i := 0; i < b.N; i++ { wg.Add(1) go func(wg *sync.WaitGroup) { obj := SomethingPool.Get().(*[]Something) for i := 0; i < 120; i++ { some := *obj some[i].roomId = i some[i].roomName = strconv.Itoa(i) } SomethingPool.Put(obj) } wg.Done() }(&wg) } wg.Wait()

得到以下結果。可以從最慢的12us降低到1us。

2.2 實時數據優化

2.2.1 減少io操作

上面我們提到了在業務突然導流的情況下,我們服務有可能在短時間內涌入大量流量,如果不對這些流量進行處理,有可能會將后端數據源擊垮。還有一種情況在突發流量下像視頻流這種請求如果耗時較長,用戶在長時間得不到的數據,有可能進一步刷新頁面重新請求接口,造成二次攻擊。所以我們針對這種實時接口,進行了合理優化。

我們對于量大的實時數據,做了三層緩存。第一層是白名單,這類數據主要是通過人工干預,預設一些內存數據。第二層是通過算法,將我們的一些比較重要的房間信息放入到服務內存里,第三層是通過請求量動態調整。通過這三層緩存設計。像大型賽事,大主播開播的時候,我們的請求是不會穿透到數據源,直接服務器的內存里已經將數據返回。這樣的好處不僅減少了IO操作,而且還對流量起到了鎮流的作用,使流量平穩的到達數據源。

其他量級小的非實時數據,我們都是通過etcd進行推送

2.2.2 對redis參數調優

要充分理解redis的參數。只有這樣我們才能根據業務合理調整redis的參數。達到最佳性能。maxIdle設置高點,可以保證突發流量情況下,能夠有足夠的連接去獲取redis,不用在高流量情況下建立連接。maxActive,readTimeout,writeTimeout的設置,對redis是一種保護,相當于go服務對redis這塊做的一種簡單限流,降頻操作。

redigo 參數調優

maxIdle = 30 maxActive = 500 dialTimeout = "1s" readTimeout = "500ms" writeTimeout = "500ms" idleTimeout = "60s"

2.2.3 服務和redis調優

因為redis是內存數據庫,響應速度比較塊。服務里可能會大量使用redis,很多時候我們服務的壓測,瓶頸不在代碼編寫上,而是在redis的吞吐性能上。因為redis是單線程模型,所以為了提高速度,我們通常做的方式是采用pipeline指令,增加redis從庫,這樣go就可以根據redis數量,并發拉取數據,達到性能最佳。以下我們模擬了這種場景。

package redis_testimport ( "sync" "testing" "time" "fmt")// go testfunc Test_OneRedisData(t *testing.T) { t1 := time.Now() for i := 0; i < 120; i++ { getRemoteOneRedisData(i) } fmt.Println("Test_OneRedisData cost: ",time.Since(t1)) }func Test_PipelineRedisData(t *testing.T) { t1 := time.Now() ids := make([]int,0, 120) for i := 0; i < 120; i++ { ids = append(ids, i) } getRemotePipelineRedisData(ids) fmt.Println("Test_PipelineRedisData cost: ",time.Since(t1)) }func Test_GoroutinePipelineRedisData(t *testing.T) { t1 := time.Now() ids := make([]int,0, 120) for i := 0; i < 120; i++ { ids = append(ids, i) } getGoroutinePipelineRedisData(ids) fmt.Println("Test_GoroutinePipelineRedisData cost: ",time.Since(t1)) }func getRemoteOneRedisData(i int) int { // 模擬單個redis請求,定義為600us time.Sleep(600 * time.Microsecond) return i }func getRemotePipelineRedisData(i []int) []int { length := len(i) // 使用pipeline的情況下,單個redis數據,為500us time.Sleep(time.Duration(length)*500*time.Microsecond) return i }func getGoroutinePipelineRedisData(ids []int) []int { idsNew := make(map[int][]int, 0) idsNew[0] = ids[0:30] idsNew[1] = ids[30:60] idsNew[2] = ids[60:90] idsNew[3] = ids[90:120] resp := make([]int,0,120) var wg sync.WaitGroup for j := 0; j < 4; j++ { wg.Add(1) go func(wg *sync.WaitGroup, j int) { resp = append(resp,getRemotePipelineRedisData(idsNew[j])...) wg.Done() }(&wg, j) } wg.Wait() return resp }

從圖中,我們可以看出采用并發拉去加pipeline方式,性能可以提高5倍。 redis的優化方式還有很多。例如
1.增加redis從庫2.對批量數據,根據redis從庫數量,并發goroutine拉取數據3.對批量數據大量使用pipeline指令4.精簡key字段5.redis的value解碼改為msgpack

3 GO的踩坑經驗

踩坑代碼地址: https://github.com/askuy/gopherlearn

3.1 指針類型串號

3.2 多重map上鎖問題

3.3 channel使用問題

4 相關文獻

坑踩得多,說明書看的少。
https://stackoverflow.com/questions/18435498/why-are-receivers-pass-by-value-in-go/18435638
以上問題都可以在相關文獻中找到原因,具體原因請閱讀文檔。

When are function parameters passed by value?
As in all languages in the C family, everything in Go is passed by value. That is, a function always gets a copy of the thing being passed, as if there were an assignment statement assigning the value to the parameter. For instance, passing an int value to a function makes a copy of the int, and passing a pointer value makes a copy of the pointer, but not the data it points to. (See a later section for a discussion of how this affects method receivers.)
Map and slice values behave like pointers: they are descriptors that contain pointers to the underlying map or slice data. Copying a map or slice value doesn’t copy the data it points to. Copying

原文發布時間為:2018-11-26
本文作者:askuy
本文來自云棲社區合作伙伴“Golang語言社區”,了解相關信息可以關注“Golang語言社區”。

總結

以上是生活随笔為你收集整理的go语言项目优化(经验之谈)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

久久国产经典视频 | 成人免费观看网站 | 99热超碰| 久久精品视 | 日韩av免费一区二区 | 超碰夜夜 | 91在线日韩 | 在线综合 亚洲 欧美在线视频 | 国产一区精品在线观看 | 国产免费小视频 | 欧美性受极品xxxx喷水 | 亚洲黄色a | 免费在线观看污 | 在线黄频| 狠狠操夜夜 | 2019中文在线观看 | 国产91免费看 | 一区二区国产精品 | 国产在线久草 | 久久久久久久国产精品 | www.狠狠色| 亚洲国产偷 | 美女久久久久久久久久久 | 色婷婷亚洲 | 成人免费中文字幕 | 2019中文在线观看 | 97国产 | 国产综合香蕉五月婷在线 | 97超视频| 色婷婷97 | 日日夜夜精品网站 | 麻豆国产电影 | 91视频88av| 一级a性色生活片久久毛片波多野 | 成人在线一区二区 | 久久久香蕉视频 | 深爱婷婷| 久久人人爽人人爽人人 | 国产91免费观看 | 在线观看中文字幕一区 | 久久99热这里只有精品国产 | 国内精品久久久久久久影视麻豆 | 福利视频入口 | 国产很黄很色的视频 | 超碰av免费 | 久久99久国产精品黄毛片入口 | 最近日本字幕mv免费观看在线 | 国产精品久久99综合免费观看尤物 | 色婷婷综合五月 | 精品久久福利 | 久久免费电影 | 精品99久久 | 精品夜夜嗨av一区二区三区 | 色婷婷88av视频一二三区 | 国产日韩中文字幕在线 | 在线免费黄色 | 国产二区精品 | 日韩成片 | 8x8x在线观看视频 | 国产美女久久久 | 日韩在线高清 | 日韩av电影中文字幕在线观看 | 激情综合五月婷婷 | 国产在线欧美日韩 | 午夜久久久久久久久 | 香蕉网在线观看 | 成人国产网址 | 国产日本在线播放 | 中文字幕乱码一区二区 | 麻豆一区在线观看 | 久久久黄色 | 欧美日韩国产免费视频 | 成人精品一区二区三区电影免费 | 亚洲精品乱码久久久一二三 | 亚洲国产理论片 | 欧美成人视 | 91久久久久久久一区二区 | 欧美日产一区 | 欧美日韩国产高清视频 | 日日干夜夜草 | 色亚洲激情 | 午夜国产在线观看 | 久久99久久99精品免视看婷婷 | 99热官网 | 日本中文字幕在线一区 | 婷婷视频| 国产免费午夜 | 国产专区一 | 日韩动态视频 | 碰超人人 | 午夜视频在线观看网站 | 99久久精品免费看国产 | 成人av午夜| 精品国产免费一区二区三区五区 | 日韩免费在线观看视频 | 日韩高清一二区 | 日本在线观看一区二区三区 | 超碰在线个人 | 久久免费看a级毛毛片 | 久久国产精品免费看 | 婷婷丁香av | 东方av免费在线观看 | 国产99久久久欧美黑人 | 久久官网| 日韩黄色在线 | 一区二区三区av在线 | 最新国产中文字幕 | 综合婷婷| 免费在线观看国产精品 | 欧美在线一| 日韩精品专区 | 一区二区三区免费播放 | 免费视频99| 久精品一区 | 96久久欧美麻豆网站 | 黄色视屏av | 久久在线视频精品 | 久久中文精品视频 | av中文字幕在线电影 | 欧美日韩国产一区二区在线观看 | 特级aaa毛片 | 日韩乱码中文字幕 | 成片人卡1卡2卡3手机免费看 | 在线欧美日韩 | 精品人人人人 | 国产理论片在线观看 | 五月婷婷伊人网 | 国产精品网站 | 在线免费观看成人 | 国产成视频在线观看 | 国产a级精品 | 在线日韩视频 | 欧美精品久久久久久久久久 | 欧美精品久久久久久久久免 | 91麻豆精品国产91久久久久久 | 黄色国产成人 | 五月天高清欧美mv | 91在线视频精品 | 国产精品日韩欧美一区二区 | 久久国产精品久久精品 | 91视频免费看 | 久精品视频免费观看2 | 激情开心站 | 一区二区三区在线观看 | a黄色| 亚洲激情电影在线 | 日韩精品久久一区二区 | 欧美精品国产综合久久 | 黄网站大全 | 亚洲日本一区二区在线 | 国产成人av电影 | 国产精品亚洲人在线观看 | 日本不卡一区二区三区在线观看 | 久久精品久久久久 | 视频二区在线 | 91porny九色在线播放 | 久久久久久久久免费视频 | 91xav| 欧美日韩视频免费 | 午夜精品一区二区三区在线视频 | 国产精品久久久999 国产91九色视频 | 成人午夜电影在线观看 | 国产伦精品一区二区三区四区视频 | 国产999精品久久久 免费a网站 | 日本在线中文在线 | 久久国产色 | 欧美日韩高清一区二区 国产亚洲免费看 | 天天操天天拍 | 九九精品视频在线看 | 美女网站在线播放 | 日本中文字幕网站 | 国产护士在线 | 国产一区二区手机在线观看 | 日韩精品中文字幕在线不卡尤物 | 波多野结衣资源 | 久久久999免费视频 日韩网站在线 | 97视频资源 | 国产精品视频免费观看 | 欧美激情综合色 | 91高清不卡 | 国产黄色片免费 | 久久精品国亚洲 | 热99在线视频 | 欧美一区二视频在线免费观看 | 黄污网站在线观看 | 久久综合欧美精品亚洲一区 | 天天综合色| 国产精品免费视频观看 | 久久情侣偷拍 | 日本精品午夜 | 91成人黄色 | 国产一区自拍视频 | www.亚洲| 久久精品观看 | 亚洲国产中文在线 | 亚洲激情久久 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 亚洲成a人片77777潘金莲 | 成年人国产在线观看 | 婷婷婷国产在线视频 | 日本高清中文字幕有码在线 | 超碰大片 | 91mv.cool在线观看| 91麻豆国产福利在线观看 | av导航福利 | 国产黄色片网站 | 久热免费 | 81国产精品久久久久久久久久 | 久久精品1区 | 日韩免费不卡视频 | 91精品在线免费观看 | 2022中文字幕在线观看 | 婷婷色网 | 精品国产成人 | 欧美日韩精品二区第二页 | 国产成人免费网站 | 久久久久www| 91av在线不卡| 精品久久网 | 在线免费精品视频 | 午夜精品视频在线 | 国产高清视频在线播放一区 | 久草视频免费观 | 久久精品国产一区二区三 | 97国产大学生情侣白嫩酒店 | 欧美不卡视频在线 | www.色午夜.com| 在线观看韩日电影免费 | 天天插日日射 | 中文字幕一区在线 | 久久久久久久毛片 | 国产免费又粗又猛又爽 | 2020天天干夜夜爽 | 日韩欧美在线影院 | 日韩激情网 | 在线视频精品 | 在线天堂视频 | 色综合天天综合在线视频 | 久久99国产精品久久99 | 国产精品网站一区二区三区 | av在线网站观看 | 日日夜夜天天 | 国产精品资源在线观看 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 中文av在线播放 | 亚洲狠狠| 中文字幕在线看视频 | 人人玩人人添人人 | 正在播放国产精品 | 午夜 免费 | 99视频国产精品免费观看 | 欧洲精品视频一区 | 国产精品免费成人 | 国产视频网站在线观看 | 久久都是精品 | 成人午夜剧场在线观看 | 亚洲精品久久久久中文字幕二区 | 人人澡澡人人 | 麻豆一区在线观看 | 日本精品视频免费 | 综合色狠狠 | 麻豆国产电影 | 特级西西人体444是什么意思 | av丝袜天堂 | 亚洲欧美视频在线 | 99国产精品久久久久久久久久 | 激情欧美日韩一区二区 | 亚洲永久精品视频 | 在线91播放| 午夜久操 | 国产成人黄色网址 | 欧美精品久久久久久久亚洲调教 | 亚洲国产中文在线 | 成人免费视频网址 | 激情综合婷婷 | 欧美激情第八页 | 九九九九热精品免费视频点播观看 | 成片免费观看视频大全 | 91精品第一页 | 日韩 在线观看 | 一级做a爱片性色毛片www | 色av男人的天堂免费在线 | 亚洲综合视频在线 | 成人免费在线视频 | 综合网在线视频 | 久久免费美女视频 | 中文字幕在线观看1 | 欧美日本不卡视频 | 欧美天天射| 国产精品剧情在线亚洲 | 亚洲激情一区二区三区 | 日韩精品不卡在线 | 欧美日韩不卡一区二区 | 99国内精品| 手机av电影在线观看 | 色av网站 | 国产成人av网 | 尤物九九久久国产精品的分类 | 久草在线观看视频免费 | 黄污网站在线观看 | 久久丁香网 | 久久视频在线观看中文字幕 | www.午夜视频 | 国产精品免费观看在线 | 国产一级一片免费播放放 | 久久精品久久综合 | 久久欧美在线电影 | 91亚洲精品久久久久图片蜜桃 | 在线v片免费观看视频 | 视频1区2区 | 日本成人中文字幕在线观看 | 午夜av网站 | 天天摸日日摸人人看 | 日韩在线观看视频网站 | 99久久一区 | 天天综合网入口 | 国产在线不卡一区 | 在线不卡a| 免费看一级黄色大全 | 天天色综合1| 国产精品手机播放 | 久草精品视频在线播放 | 97网在线观看 | 国产精品激情在线观看 | 亚洲在线高清 | www.成人sex| 91久久久久久久一区二区 | 成人av直播 | 国产视频91在线 | 91精品国自产拍天天拍 | 97超视频免费观看 | 国产黄av| 五月婷婷在线观看视频 | 国产精品久久久久久久久搜平片 | 黄色三级在线 | 久草男人天堂 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 99999精品视频 | 六月婷婷色 | 欧美一级性 | 91香蕉视频黄| 超级碰碰碰免费视频 | 免费视频三区 | 99久久婷婷国产综合亚洲 | 五月激情天 | 99精品视频在线播放免费 | 四虎在线永久免费观看 | 碰超在线| 成人h动漫在线看 | 亚洲欧美在线观看视频 | 不卡视频在线看 | 麻豆国产精品视频 | 91av在线免费视频 | 日日夜夜精品视频天天综合网 | 国产成人精品一区二区在线观看 | 久久国产精品久久久 | 天天艹天天| 亚洲精品一区二区三区新线路 | 欧美一级黄色片 | 国产品久精国精产拍 | 日韩欧美在线综合网 | 天天综合网 天天 | 欧洲激情综合 | 一级黄色a视频 | av在线网站观看 | 精品国产1区2区3区 国产欧美精品在线观看 | www.久久视频| 国产只有精品 | 国产伦精品一区二区三区免费 | 91精品爽啪蜜夜国产在线播放 | 91在线播放综合 | 久久激情五月丁香伊人 | 日韩超碰在线 | 欧美一二三在线 | 五月天开心 | 欧美性护士 | 国产 字幕 制服 中文 在线 | 黄色成人免费电影 | 国产999精品久久久久久麻豆 | 91九色网站 | 亚洲成a人片在线观看网站口工 | 91免费的视频在线播放 | 少妇bbr搡bbb搡bbb | 日韩一区二区在线免费观看 | 亚洲 欧洲av | 日韩有码欧美 | 成人av影视 | 国产精品女同一区二区三区久久夜 | 久艹在线免费观看 | 国产在线观 | 四虎在线免费观看 | 四虎永久免费在线观看 | www操操| 成人久久久久久久久久 | av线上看| 久久久免费 | 日韩在线视频二区 | 免费热情视频 | 国产视频在线播放 | 国内精品久久久久久久久久久 | av免费在线播放 | 久久久影院一区二区三区 | 日韩在线在线 | av资源免费看 | 黄色一级免费 | 欧美日韩久| 成人午夜电影在线 | 国产精品淫片 | 久久一区二区免费视频 | 国产精品99爱 | 国产免费大片 | 国产精品福利小视频 | 中文字幕在线视频精品 | 久久久www成人免费毛片 | 91福利社在线观看 | 天天爽人人爽 | 国产精品久久久久久久av电影 | free,性欧美| 国产黄色av网站 | av大片免费| 中文字幕乱码亚洲精品一区 | 91av九色| 天天插天天干天天操 | 欧美色精品天天在线观看视频 | av在线激情 | 一区二区三区三区在线 | 狠狠色狠狠色 | 久久免费影院 | 天天干天天在线 | 97超级碰碰碰碰久久久久 | 奇米影视777影音先锋 | 午夜12点| 久久久99精品免费观看 | 天天躁天天狠天天透 | 波多野结衣在线观看一区 | 在线精品观看国产 | 色瓜| 精品自拍av | 手机看片国产日韩 | 国产三级精品三级在线观看 | 午夜视频在线观看欧美 | 在线免费观看黄色 | 在线观看va | 中文字幕日本特黄aa毛片 | 国产成人久久精品 | 天天射色综合 | 91精品啪在线观看国产线免费 | 国内精品久久久久久中文字幕 | 精品国产乱码久久久久久天美 | 91黄色免费网站 | 国产成人一区三区 | 香蕉网在线播放 | 久久午夜鲁丝片 | 欧美一区二区日韩一区二区 | 欧美久草网 | 欧美日韩精品在线播放 | 韩国av一区二区三区 | 五月婷丁香网 | 天天曰夜夜操 | 日本精品久久久一区二区三区 | av在线小说 | 欧美一级片免费 | 国产91aaa | 综合久久综合久久 | 97国产 | 国产专区在线播放 | 国产成人精品综合久久久久99 | 黄色大片国产 | 中文字幕在线观看免费 | 亚洲理论影院 | 日本3级在线观看 | 欧美日韩裸体免费视频 | 亚洲人在线视频 | 天天爽天天射 | 丁香六月久久综合狠狠色 | 中文字幕久久精品亚洲乱码 | 久久精品国产美女 | 五月天婷亚洲天综合网精品偷 | 欧美性生活大片 | 精品国内自产拍在线观看视频 | 黄色免费在线视频 | 天天做天天射 | 麻豆视频在线免费 | 亚洲人av免费网站 | www日日夜夜 | 一区二区成人国产精品 | 日韩久久精品一区二区 | 久久精品国产免费看久久精品 | 婷婷干五月 | 午夜久久久精品 | 嫩草av在线 | 久久免费电影 | 99久久久久久久久久 | 久久精品99国产精品日本 | 精品一区二区久久久久久久网站 | 亚洲高清av在线 | 91伊人久久大香线蕉蜜芽人口 | 日本特黄特色aaa大片免费 | 欧美精品首页 | 五月婷婷在线综合 | 91成人短视频在线观看 | 天天操夜夜拍 | 日本在线视频一区二区三区 | 99热手机在线观看 | 激情视频综合网 | 国产精品毛片久久 | 99视频在线观看免费 | 00av视频 | 精品久久久久一区二区国产 | 在线观看成人av | 国产精品一区二区你懂的 | 国产在线观看免费观看 | 一区二区三区国产欧美 | 97色婷婷成人综合在线观看 | 日韩高清在线观看 | 久久久影院官网 | 中文字幕色婷婷在线视频 | 91精品天码美女少妇 | 精品久久久影院 | 亚洲国产精品久久久久婷婷884 | 五月天伊人 | 999久久a精品合区久久久 | 色全色在线资源网 | 亚洲aⅴ乱码精品成人区 | 久久这里只有精品1 | 亚洲资源片 | 欧美视频日韩视频 | 麻豆一精品传二传媒短视频 | 日日夜av| 色在线免费观看 | 黄色小网站在线 | 国产精品video爽爽爽爽 | 久久综合九色综合网站 | 欧美日韩综合在线 | 日本中文字幕电影在线免费观看 | 国产免费观看久久黄 | 欧美人牲| 亚洲成 人精品 | 在线久草视频 | 国产91成人 | 国产成人精品久久久久 | 日日日爽爽爽 | 欧美亚洲一区二区在线 | 最近2019好看的中文字幕免费 | 精品国产乱码久久久久久浪潮 | 久久久久久片 | 999久久a精品合区久久久 | 欧美一区二区精美视频 | 亚洲精品一区中文字幕乱码 | 国产五月婷 | 日韩中文字幕免费在线观看 | 国产网站色 | 欧美国产精品一区二区 | 久久九九国产视频 | 2023国产精品自产拍在线观看 | 欧美va电影 | 久久久久色 | 欧美日韩亚洲第一页 | 国产中文字幕精品 | 香蕉看片 | 精品一区 精品二区 | 黄p在线播放 | 日韩精品91偷拍在线观看 | 欧美日韩久久不卡 | 99久久99 | 亚洲成人精品国产 | 日韩欧美精品一区二区三区经典 | 日韩免费观看视频 | 丁香六月在线 | 亚洲人成免费网站 | 色欧美综合 | 中文字幕在线观看免费高清完整版 | 麻豆成人精品视频 | 96久久 | 这里只有精品视频在线 | 日日夜夜婷婷 | 国产专区第一页 | 午夜精品一区二区三区视频免费看 | 色婷婷激情五月 | 五月天综合 | 欧美国产日韩在线观看 | 久久久久久久久久久成人 | 免费看wwwwwwwwwww的视频 久久久久久99精品 91中文字幕视频 | 亚洲视频1区2区 | 黄色精品国产 | 91人人爽人人爽人人精88v | 国产69久久久 | 99精品国产aⅴ | 亚州精品天堂中文字幕 | 精品人人人 | 国产免费观看久久黄 | 国产精品免费在线观看视频 | 国产一级淫片在线观看 | 狠狠色综合欧美激情 | 久久黄色网址 | 久久久综合香蕉尹人综合网 | 国产精品成人国产乱 | 色成人亚洲网 | 日韩午夜电影 | 免费福利片2019潦草影视午夜 | 日韩videos | 波多野结衣在线观看一区 | 中文字幕永久免费 | 午夜a区| 五月婷婷综合久久 | 久草影视在线 | 久久久久久免费毛片精品 | 中文字幕中文字幕中文字幕 | av中文字幕电影 | av日韩不卡 | 免费久久网 | 免费观看性生交大片3 | 国产麻豆精品久久一二三 | 久久亚洲福利视频 | 久久图| 99精品一区二区三区 | 国产一区二区在线播放 | 91伊人| 欧美日韩高清一区二区 | 亚洲精品视频网址 | 在线a视频免费观看 | 久久久国产精华液 | 99r在线观看 | 在线视频1卡二卡三卡 | 黄色一集片 | 久久久精品国产免费观看一区二区 | 亚洲最大激情中文字幕 | 久久综合偷偷噜噜噜色 | 色综合色综合色综合 | 国产看片网站 | 人人看人人做人人澡 | 色88久久| 精品在线观看免费 | 欧美另类xxx | 九九久久视频 | 最近中文字幕在线 | 999视频在线播放 | 国产尤物在线 | 欧美日韩xxx | 国产精品美女久久久久久久网站 | 日本在线观看一区 | 日韩中文在线观看 | 欧美尹人 | 欧美日韩在线播放一区 | 一级c片 | 99视| 99精品亚洲 | 亚洲欧美精品一区二区 | 欧美激情综合五月色丁香小说 | 国产黄在线 | 色先锋av资源中文字幕 | 午夜精品一区二区三区可下载 | 成人在线视频在线观看 | 欧美 日韩 国产 成人 在线 | av解说在线 | 97av在线| 欧美一二三视频 | 欧美激情片在线观看 | 精品久久久久久综合 | 欧美性极品xxxx娇小 | 欧日韩在线视频 | 亚洲久草网| 一级黄色片毛片 | 亚洲影视九九影院在线观看 | 麻豆久久精品 | 国产一区二区在线视频观看 | 我要看黄色一级片 | 国产精品99视频 | 亚洲更新最快 | 高清免费在线视频 | 日本黄色免费观看 | 久久看免费视频 | 色视频在线观看 | 丁香六月婷婷激情 | 国产精品久久电影网 | 96精品高清视频在线观看软件特色 | 久久伊人色综合 | 日韩av一区二区在线 | 久热免费在线观看 | 精品自拍sae8—视频 | 久久激情视频网 | 国产精品手机在线观看 | 粉嫩av一区二区三区入口 | 久久久精品视频网站 | 久草网在线视频 | 在线色亚洲| 99色精品视频| 欧美在线观看视频免费 | 99视频在线 | 亚洲精品久久久蜜桃直播 | 青青草国产成人99久久 | 日韩美av在线 | 91网站观看 | 欧美一二区视频 | 久久色在线播放 | 国产精品免费大片视频 | 伊人婷婷| 8x成人免费视频 | 久久国产精品久久精品 | 免费看特级毛片 | 91久久在线观看 | 亚洲午夜精品久久久久久久久 | 丝袜美腿亚洲 | 天天射天天爽 | 99久久精品国产一区二区成人 | 国产一区二区在线视频观看 | 免费一级片在线观看 | 日韩在线视频不卡 | 又长又大又黑又粗欧美 | 国产精品视频99 | 97电影院网 | www.成人久久 | 国产视频在线免费观看 | 国内外成人免费在线视频 | 九九视频精品免费 | 国产黄色片免费 | 亚洲精品美女在线观看 | 免费看片亚洲 | 丁香视频全集免费观看 | 精品国产欧美一区二区 | 99九九热只有国产精品 | 亚洲三级在线 | 亚洲精品久久久蜜臀下载官网 | av电影在线免费 | 日韩和的一区二在线 | 天天操天天射天天 | 精品国产一区二区在线 | 国产伦理一区二区三区 | 99自拍视频在线观看 | 狠狠色伊人亚洲综合网站色 | 91久久国产综合精品女同国语 | 国产精品成人免费 | 国产一级91 | 日韩精品黄 | 国产一级一级国产 | 国产精品国产亚洲精品看不卡 | 欧美性极品xxxx娇小 | 99久久影视 | 在线看国产 | 88av色| 色综合天天狠天天透天天伊人 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 超碰97公开 | 国产高清专区 | 又紧又大又爽精品一区二区 | 久久国产欧美日韩精品 | 最新超碰在线 | 在线一区电影 | 免费色视频网址 | 人人插人人舔 | 欧美国产亚洲精品久久久8v | 91视频在线免费下载 | 香蕉视频国产在线 | 国产精品精品国产 | 国产精国产精品 | 涩五月婷婷 | 日韩av影片在线观看 | 狠狠色狠狠色合久久伊人 | 成人欧美在线 | 成人国产精品久久久春色 | 亚洲精品一区二区久 | 久久一区二区三区国产精品 | 日本性动态图 | 黄色软件在线观看视频 | 久久色在线播放 | 精品久久99 | 中文字幕影片免费在线观看 | 四虎影院在线观看av | 国产亚洲综合性久久久影院 | 五月婷婷,六月丁香 | 九色免费视频 | 高清在线一区 | 色播激情五月 | av中文在线播放 | 国产在线成人 | 久久久久久久久毛片精品 | 国产男女无遮挡猛进猛出在线观看 | 激情五月婷婷综合 | 国产精品 国内视频 | 蜜臀久久99静品久久久久久 | 国产视频在线播放 | 人人射人人插 | wwwwww黄 | 国产精品原创av片国产免费 | 久久手机在线视频 | 精品久久久久久一区二区里番 | 免费在线激情电影 | 91亚洲精| 国产精品美女久久久久久久久 | 九九有精品 | 国产精品久久久久一区二区国产 | 国产精品国产毛片 | 午夜av剧场 | 久久久国产在线视频 | 久av电影 | 在线看成人片 | 成人福利在线播放 | 在线免费高清 | 中文字幕亚洲精品在线观看 | 久久8| 亚洲狠狠丁香婷婷综合久久久 | 国产午夜精品一区二区三区嫩草 | 久久久国产精品人人片99精片欧美一 | 国产精品久久久久一区二区国产 | 久久艹人人 | 亚洲精品视频免费看 | 色婷婷综合久久久久 | 9i看片成人免费看片 | 日韩av免费大片 | 黄色亚洲大片免费在线观看 | 日本 在线 视频 中文 有码 | 免费av的网站 | 成人在线视频论坛 | 97色婷婷人人爽人人 | 日本中文不卡 | 久久dvd| 国产午夜激情视频 | 免费国产一区二区视频 | 久久系列 | 99精品视频网 | 欧美成人猛片 | 国产青草视频在线观看 | 日本中文字幕视频 | 天天干天天干天天干天天干天天干天天干 | av在线播放网址 | 日韩高清国产精品 | 婷婷综合电影 | 久久久影院官网 | 婷婷丁香在线 | 欧美人人爱 | 91精品啪在线观看国产线免费 | 最新av网站在线观看 | av在线影片 | 777久久久| 日韩电影一区二区在线 | 91成人免费电影 | 国产中文字幕一区二区 | 色综合久久悠悠 | 日韩免费在线观看视频 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 人人舔人人舔 | 97精品国产97久久久久久 | 欧美日韩在线视频一区二区 | 五月婷婷视频在线 | 国产精品久久久久三级 | 午夜精品一区二区三区免费 | 精品中文字幕在线观看 | 一区二区不卡在线观看 | 精品亚洲免a | 日韩中文字幕国产精品 | 欧美婷婷色 | 天天干,天天射,天天操,天天摸 | 91视频亚洲 | 久久久影视 | 成人欧美日韩国产 | 日韩欧美视频在线播放 | 成人av午夜| 国产福利一区二区三区在线观看 | 一区二区在线不卡 | 岛国av在线不卡 | 波多野结依在线观看 | 日韩在线观看你懂得 | 狠狠搞,com | 青青射| 国产在线超碰 | 日本高清dvd| 国产在线久草 | 日本久久综合视频 | 97在线观看| av电影中文字幕 | 在线观看黄色大片 | 亚洲国产精品免费 | 在线免费av观看 | 国产中文字幕在线播放 | 亚洲第一成网站 | 四川妇女搡bbbb搡bbbb搡 | 欧美在线1区 | 国产视频 亚洲精品 | 少妇bbbb揉bbbb日本 | 日韩午夜大片 | 婷婷激情小说网 | 色av婷婷| av在线播放中文字幕 | 国产精品一区二区三区久久 | 久久伊人热 | 成人国产亚洲 | 99 色| 色久网 | 天天曰天天射 | 婷婷久久综合九色综合 | 玖玖玖在线 | 六月丁香婷 | 午夜国产成人 | av不卡在线看 | 毛片网站免费在线观看 | 三级av网站 | 色婷婷啪啪免费在线电影观看 | 91最新网址 | 欧美嫩草影院 | 操操操日日 | 欧美大香线蕉线伊人久久 | 嫩草av在线 | 久久久久久久久久伊人 | 91网址在线 | 国产一级片观看 | 日韩欧在线| 韩国一区二区在线观看 | 亚洲理论片在线观看 | 欧美精品生活片 | 91在线最新 | 在线v| 911国产精品 | 九色91av | 91精品对白一区国产伦 | 深夜免费小视频 | 天堂av在线网 | 午夜精品一区二区三区免费视频 | 亚洲精品在线视频网站 | 91成人精品国产刺激国语对白 | 日韩高清在线一区 | 色丁香综合 | av在线免费观看网站 | 色多多污污在线观看 | 天天做天天射 | 久久综合免费视频 | 久久在线免费视频 | 91日韩精品 | 九九九在线观看 | 91视频 - v11av | 三级av免费 | 菠萝菠萝蜜在线播放 | 欧美最猛性xxxxx亚洲精品 | www.婷婷色 | 成年人免费电影在线观看 | www.亚洲黄色 | 三上悠亚一区二区在线观看 | 久久免费国产视频 | 欧美日韩国产在线 | 91在线免费播放视频 | 精品亚洲成人 | 日本字幕网 | 超碰夜夜 | 久久高清毛片 | 久久网址 | 久久专区 | 国产精品第十页 | 成人在线免费看视频 | 国产亚洲精品xxoo | 久久精品免视看 | 97超级碰 | 国产黄色免费电影 | 美女免费视频网站 | 国产黄色免费观看 | 免费看国产曰批40分钟 | 午夜av电影院| 国产精品免费观看久久 | 99精品久久久久 | 日韩精品资源 | 国产午夜精品免费一区二区三区视频 | 激情欧美国产 | 麻豆91在线看 | 亚洲三级在线 | 99se视频在线观看 | 五月天亚洲精品 | 六月婷婷网 | 国产a国产 | 国产日产精品久久久久快鸭 | 国产久草在线 | www.91成人 | 1000部18岁以下禁看视频 | 少妇bbbb | 91精品电影 | 亚洲午夜精品电影 | 激情开心站 | 一级一片免费视频 | 97成人免费视频 | 免费成人在线电影 | 在线日韩视频 | 97在线观看视频免费 | 日韩欧美视频一区二区 | 亚洲资源在线 | 日韩精品一区二区三区免费视频观看 | 天天干夜夜操视频 | 免费99精品国产自在在线 | 激情文学丁香 | 久久av高清 | www.亚洲视频.com| 天堂网一区二区三区 | 玖玖玖精品 | 91豆麻精品91久久久久久 | 亚洲免费av电影 | 国产成人精品综合久久久久99 | av爱干| 韩日av在线 | 久久99在线| 欧美一区二区三区在线看 | 开心色激情网 | 婷婷丁香在线视频 |