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

從 Kubernetes 學習大規(guī)模 Go 項目架構

開發(fā) 后端 云原生
如何在演進過程中持續(xù)優(yōu)化模塊設計和代碼結構、提升迭代速度,是我們需要深入思考和探索的問題。

在嘗試使用 Go 構建一個具有高可擴展性、高可靠性和高可維護性的大型項目之前,先來看一下 Kubernetes 的項目結構,了解它是如何組織一系列用于容器編排的功能模塊的。

1. Kubernetes 代碼布局

下面是 Kubernetes 主目錄下的各個頂層目錄及其主要功能,隨后我們會逐一說明它們的用途。

  • api:存放接口協(xié)議;
  • build:與構建相關的腳本和代碼;
  • cmd:各個可執(zhí)行程序的入口;
  • pkg:各組件的核心實現(xiàn)和導出包;
  • staging:臨時存放組件間相互依賴的代碼。

(1) api

該目錄存放 OpenAPI 和 Swagger 文件,包括 JSON 與 Protocol Buffer 的定義。

(2) build

該目錄包含構建 Kubernetes 項目所需的腳本,包括各組件的編譯和鏡像(例如 pause 鏡像)的構建。

(3) cmd

cmd 目錄存放用于生成可執(zhí)行文件的 main 包源代碼。若需構建多個可執(zhí)行程序,可將它們分別放在各自的子目錄下。以 Kubernetes 為例,cmd 目錄下有:

  • kube-proxy:負責網絡相關規(guī)則的實現(xiàn) ;
  • kube-apiserver:暴露 Kubernetes API 并處理請求,為 Pod、ReplicaSet、Service 等資源提供增刪改查(CRUD)操作;
  • kube-controller-manager:kubernetes 資源控制器;
  • kube-scheduler:監(jiān)控新建的 Pod,并為其選擇運行節(jié)點;
  • kubectl:訪問集群的命令行工具;

由此可見,像 kube-proxy、kube-apiserver 這樣的核心組件,都在這里有對應的可執(zhí)行入口。

(4) pkg

pkg 目錄既包含項目自身的依賴,也包含對外導出的包。主要實現(xiàn)了各個核心組件的業(yè)務邏輯。

(5) staging

staging 目錄下的包通過符號鏈接映射到 k8s.io 下。首先,由于 Kubernetes 項目體量龐大,這樣做可以避免因倉庫分散帶來的開發(fā)障礙,使所有代碼能夠在一次 PR 中提交和審查。通過這種方式,既保證了模塊化,又保持了主倉庫的完整性。

同時,借助 go mod 中的replace指令,無需為每個依賴單獨打 tag,簡化了版本管理和發(fā)布流程。

如果不這么做,而是采用將 staging 目錄下的所有代碼拆分到獨立倉庫的方式,那么每次子倉庫代碼變化時,都需要先在子倉庫提交 PR、發(fā)布新 tag,然后在主倉庫中更新 go mod 依賴,才能繼續(xù)開發(fā)。這無疑會大幅增加整體開發(fā)成本。

因此,通過符號鏈接將 staging 目錄下的包關聯(lián)到主倉庫,能夠有效簡化版本管理和發(fā)布流程。

2. 與標準 Go 項目結構的對比

在 Go 中,internal目錄用于存放不對外導出的包。它的原則是在項目內部可以正常使用,但外部項目無法訪問。

然而,Kubernetes 并沒有internal 目錄。這是因為 Kubernetes 項目最早啟動于 2014 年左右,而 Go 1.4(于 2014 年底發(fā)布)才引入了 internal 目錄的概念。在 Kubernetes 早期開發(fā)階段,使用 internal 目錄的慣例尚未普及,且后來也未進行大規(guī)模重構來添加它。

此同時,Kubernetes 的設計目標之一就是模塊化與解耦。它通過明確的包組織和代碼結構來實現(xiàn)封裝,而無需依賴internal=目錄來限制包的訪問權限。

至此,我們已經了解了構建項目的標準頂層目錄結構。

Go 并不像 Java 那樣有一套統(tǒng)一的目錄框架。因此,不同項目往往各自為政。即使在同一個團隊中,也可能存在多種結構,這對新人理解項目是一大障礙。

正因為如此,協(xié)作往往會變得困難。統(tǒng)一的頂層目錄結構能讓我們快速定位代碼,并在接手項目時擁有標準的切入點,從而提高開發(fā)效率,減少協(xié)作中的定位混亂。

但僅僅有統(tǒng)一的目錄結構,就能構建完美的大型項目嗎?答案顯然是否定的。

單靠統(tǒng)一目錄結構,無法從根本上解決代碼隨著項目規(guī)模擴大而逐漸“衰變”“混亂”的問題。唯有遵循良好的設計原則,才能在項目不斷擴張時始終保持清晰的設計脈絡。

3. 聲明式設計理念

聲明式 API 貫穿 Kubernetes 的整個代碼設計,防止系統(tǒng)陷入過程式編程。

例如,當需要改變某個資源的狀態(tài)時,我們應告訴 K8s “期望的狀態(tài)”,而不是告訴它 “要執(zhí)行哪些步驟”。這也是為何 kubelet 的滾動更新最終被廢棄:它的設計對更新 Pod 的整個過程進行了過度微觀管理。

通過告知 Kubernetes 目標狀態(tài),kubelet 可以根據該狀態(tài)自主采取相應措施,而無需外部過度干預。

此時你可能會疑問:聲明式 API 在項目擴展時如何有助于保持模塊清晰?這不正是用戶在使用Kubernetes 時的感受嗎?它與內部設計有什么關系?

如果我們在設計接口時,將整個操作流程完全暴露給用戶,讓他們逐步干預 Pod 更新的每個步驟,那么我們設計的模塊就不可避免地演變?yōu)檫^程式。這會導致代碼模塊與大量用戶操作高度耦合,難以保持清晰。

而采用聲明式 API 后,我們僅向 K8s 傳達期望狀態(tài),集群內部的多個組件便能協(xié)同工作,最終實現(xiàn)該狀態(tài)。用戶無需關心內部的更新細節(jié)。更重要的是,當需要增加新的協(xié)作插件時,只需新增相應模塊,無需再對外暴露更多用戶操作的 API。

以 cAdvisor 為例,它獨立監(jiān)控 Kubernetes 部署的資源并收集容器指標,不依賴外部組件。控制器再將這些指標與用戶聲明的目標進行對比,以判斷是否滿足擴容或縮容條件。

由于各模塊相互獨立,cAdvisor 只需專注于采集并返回監(jiān)控數據,而無需關心這些數據是用于觀測還是自動伸縮。

這也是設計不同任務組件時的關鍵原則:

  • 明確要達成的需求;
  • 傳遞信息時只關注輸入與輸出;
  • 內部實現(xiàn)則封裝起來,不向外暴露,讓外部業(yè)務調用保持盡可能簡單。

4. 避免過度設計

過度的工程設計往往比設計不足更糟糕。

Kubernetes 的最早版本是 0.4。在網絡方面,官方的實現(xiàn)方案是讓 GCE 運行 Salt 腳本來創(chuàng)建網橋,而在其他環(huán)境下推薦使用 Flannel 和 OVS。

隨著 Kubernetes 的發(fā)展,F(xiàn)lannel 在某些場景下已不足以滿足需求。大約在 2015 年,社區(qū)中出現(xiàn)了 Calico 和 Weave,基本解決了網絡問題。于是 Kubernetes 就不用再花力氣自己去做網絡實現(xiàn),而是引入了 CNI 以標準化網絡插件。

很顯然,Kubernetes 并不是一開始就設計得十分完美,而是在新問題出現(xiàn)時,才逐步引入新的設計來適應不同環(huán)境的變化。

在項目啟動初期,依賴關系相對清晰,所以工程設計階段一般不會出現(xiàn)循環(huán)依賴。但隨著項目規(guī)模增長,這些問題會逐漸顯現(xiàn)。產品功能的不斷演進,會導致代碼設計中出現(xiàn)互相引用。

即便我們在項目啟動前盡力去了解所有業(yè)務背景和待解問題,隨著產品功能的變化和程序的迭代,總會出現(xiàn)新的問題。我們能做的,是關注模塊設計和依賴管理,盡可能保持功能內聚,并在后續(xù)添加抽象時,避免對已有代碼進行大規(guī)模“重構”式的改動。

為“可擴展性”過度設計系統(tǒng)、只為設計而設計,反而會成為未來變更的絆腳石。

下面用一個電商業(yè)務場景來說明設計演進。

初始階段,系統(tǒng)包含兩個模塊:

  • 訂單模塊: 負責創(chuàng)建訂單、支付、狀態(tài)更新等,依賴用戶模塊獲取用戶信息(如收貨地址、聯(lián)系方式等)。
  • 用戶模塊: 負責管理用戶信息、注冊、登錄,存儲用戶數據,不依賴訂單模塊。

在這個階段,依賴關系是單向的:訂單模塊 → 用戶模塊。此時無需過度抽象,過早的設計投入并不劃算;許多項目并不知道是否能夠成功,從產品發(fā)布角度看,投入過多設計成本并不可行,而且若產品定位發(fā)生劇烈變化,過度設計會成為后續(xù)修改的障礙。

隨著需求演變,出現(xiàn)了個性化推薦的需求:平臺需要根據用戶的購買歷史(訂單記錄)向用戶推薦商品。

為實現(xiàn)個性化推薦,用戶模塊需要調用訂單模塊的 API 來獲取用戶的歷史訂單。此時依賴關系變?yōu)椋?/p>

訂單模塊 依賴 用戶模塊(獲取用戶信息)

用戶模塊 依賴 訂單模塊(獲取訂單歷史)

這就形成了循環(huán)依賴。為了解決它,可以考慮責任拆分:引入一個新的“推薦模塊”,專門處理個性化推薦邏輯。推薦模塊分別從用戶模塊和訂單模塊獲取數據,避免它們之間直接依賴。通過提取模塊,我們解決了用戶與訂單模塊之間的耦合。

然而,新需求又來了:在促銷活動期間,用戶購買特定活動商品時,產品經理希望推薦模塊能實時感知此類訂單,并推薦相關的促銷商品(例如用戶買了打折運動手表,就推薦打折藍牙運動耳機,以提高復購率)。

在這個場景中,讓訂單模塊直接調用推薦模塊來傳遞數據顯然不合適:推薦模塊已經依賴訂單模塊獲取用戶購買數據,如果再讓訂單模塊調用推薦模塊,就又會產生循環(huán)依賴。

那么,推薦模塊該如何快速感知訂單變化?這就需要事件驅動架構。

  • 當用戶下單時,訂單模塊觸發(fā)一個事件;
  • 推薦模塊訂閱與用戶訂單相關的事件;
  • 通過事件傳遞數據后,推薦模塊立即觸發(fā)模型重訓練,并向用戶推薦相關商品。

從上述例子可見,企業(yè)級應用的一大挑戰(zhàn)是:業(yè)務域建模。在建模過程中,需要隨著需求的持續(xù)演進,不斷優(yōu)化設計。

上面提到的用戶、訂單與推薦模塊,也是大多數 To-C(面向消費者)產品演進中的常見場景。如何在演進過程中持續(xù)優(yōu)化模塊設計和代碼結構、提升迭代速度,是我們需要深入思考和探索的問題。

5. 總結

讓我們回顧下本文內容:

  • 在構建大型項目時,統(tǒng)一的目錄結構可以提高協(xié)作效率,但良好的設計原則才是在項目不斷增長時保持清晰性和可擴展性的關鍵;
  • Kubernetes 的聲明式 API 能讓模塊保持獨立,避免過程式編程的陷阱;
  • 項目設計應根據實際需求逐步演進,避免過度設計;
  • 著重模塊職責和依賴的合理拆分,并使用事件驅動的方法解決模塊間的耦合。
責任編輯:趙寧寧 來源: 令飛編程
相關推薦

2025-06-27 10:12:15

Go封裝開發(fā)

2020-10-15 19:22:09

Menger機器學習強化學習

2023-03-19 23:31:32

OpenKruise項目自動化

2019-04-02 08:00:39

閃存架構共享

2009-03-20 09:49:00

負載均衡CDN網站架構

2021-03-26 09:49:22

架構并行處理

2017-06-03 16:34:22

云服務數據中心公有云

2022-06-09 13:45:18

vivoK8S集群Kubernetes

2025-09-02 04:22:00

KubernetesvLLM語言模型

2023-11-24 13:24:14

CIOOptus

2017-10-09 16:51:34

機器學習No Free Lun

2015-06-12 09:58:51

2022-07-07 11:00:09

美團模型實踐

2020-02-17 08:00:02

云計算云開發(fā)Kubernetes

2017-04-26 13:30:24

爬蟲數據采集數據存儲

2009-04-09 09:32:00

VoWLANWLAN

2010-09-01 15:16:49

WLAN交換機結構

2016-01-29 20:23:23

華為

2025-08-01 01:00:00

2024-04-30 07:00:00

公共云云策略云計算
點贊
收藏

51CTO技術棧公眾號

国产一二三四视频| 国产熟人av一二三区| 成 人片 黄 色 大 片| 狠狠88综合久久久久综合网| 亚洲韩国日本中文字幕| 国产一级不卡毛片| 在线āv视频| 91视频观看免费| 国产日韩在线播放| 日韩精品久久久久久久酒店| 成人中文视频| 亚洲国产精品人人爽夜夜爽| 亚洲 欧美 日韩系列| 欧美巨大xxxx做受沙滩| 久久精品视频免费观看| 亚洲一区二区三区777| 男人的天堂一区二区| 日韩激情免费| 日韩av在线看| 欧美日韩理论片| xxxxxx欧美| 亚洲精品自拍动漫在线| 欧美系列一区| 高h调教冰块play男男双性文| 日韩成人dvd| 国产最新精品视频| 精品黄色免费中文电影在线播放| 色播视频在线播放| 欧美视频一二区| 日韩电影免费在线观看网站| 久久久久久久久91| 天堂а√在线中文在线鲁大师| 激情小说一区| 日韩一区二区免费视频| 无码日韩人妻精品久久蜜桃| 狂野欧美性猛交xxxxx视频| 欧美国产成人在线| 欧美日韩在线观看一区| 免费看黄网站在线观看| 国产一区二区三区黄视频| 国产精品爱久久久久久久| 日本视频www| 午夜精品免费| 两个人的视频www国产精品| 久久久久亚洲AV成人无在| 色老板在线视频一区二区| 日韩欧美中文一区二区| 五月天婷婷在线观看视频| 福利一区视频| 欧美视频自拍偷拍| 少妇人妻互换不带套| 亚洲天堂资源| 日韩欧美亚洲综合| 国产亚洲综合视频| 在线看片福利| 日韩欧美国产一区二区| 一本大道熟女人妻中文字幕在线 | 日韩在线不卡视频| 阿v天堂2014| 精品久久成人| 在线精品高清中文字幕| 亚洲毛片亚洲毛片亚洲毛片| 成人在线免费观看网站| 久久精品99国产精品酒店日本| 国产三级在线观看完整版| 日本久久一二三四| www日韩欧美| 成年人一级黄色片| 韩国欧美一区| 欧美亚洲日本网站| 亚洲无码精品一区二区三区| 视频一区在线播放| 国产精品一区二区3区| 一级黄色小视频| 国产精品99久久久久久久vr| 亚洲va国产va天堂va久久| 国产高清免费在线观看| 成人网页在线观看| 欧美日韩国产综合视频在线| 成人精品福利| 亚洲摸摸操操av| 黄色一级大片免费| 久草在线资源福利站| 欧美亚洲国产一区在线观看网站| 最新天堂在线视频| 91精品国产自产在线丝袜啪| 日韩精品在线观看一区二区| 先锋影音av在线| 亚洲电影影音先锋| 欧美中文在线观看国产| 在线观看中文字幕2021| 国产成人av一区| 欧美一二三四五区| 好了av在线| 精品久久久国产| 亚洲免费av一区| 爱高潮www亚洲精品| 国产一区二区三区18| 欧美黑人性猛交xxx| 性8sex亚洲区入口| 91视频-88av| 欧美套图亚洲一区| 亚洲精品免费电影| 免费看a级黄色片| 日韩在线观看中文字幕| 亚洲人成电影网站色| 看片网站在线观看| 日韩av一区二区三区| 国产精品久久久久久久久婷婷| 国产高清美女一级毛片久久| 亚洲一区二区精品3399| 亚洲精品怡红院| 久久夜色电影| 久99九色视频在线观看| 亚洲欧美日韩一区二区三区四区| 国产成人av福利| 亚洲最新免费视频| 成人啊v在线| 亚洲国产精品久久久久秋霞不卡| 天堂а√在线中文在线鲁大师| 国产精品一区毛片| 国产精品美女xx| 二区三区在线观看| 欧美日韩性生活| 一本色道久久综合亚洲精品图片| 欧美特黄一区| 亚洲一区二区三| 久草免费在线| 欧美日韩免费在线视频| 爱爱免费小视频| 亚洲清纯自拍| 国产a一区二区| 在线观看wwwxxxx| 欧美妇女性影城| a级黄色免费视频| 肉丝袜脚交视频一区二区| 久久久com| 女海盗2成人h版中文字幕| 精品国产一区二区三区不卡| 国产激情无码一区二区三区| 青青草91视频| 天堂一区二区三区| 经典三级一区二区| 日韩成人av网| 天天操夜夜操视频| 91天堂素人约啪| 2022亚洲天堂| 色综合中文网| 国产精品日韩一区| 亚洲欧美视频一区二区| 欧美日韩国产首页| 色婷婷粉嫩av| 国产精品99久| 妞干网在线观看视频| 粉嫩av一区二区| 97精品久久久| 亚洲人成色777777老人头| 精品久久久久久亚洲精品| 你懂得在线视频| 一本久道久久久| 久久99精品久久久久久青青日本| 精精国产xxxx视频在线播放| 日韩久久免费视频| 日韩精品一区二区亚洲av观看| 久久一区二区三区四区| 美女福利视频在线| 欧美日韩伦理| 91亚洲国产成人精品性色| 中文字幕中文字幕在线中高清免费版| 日韩午夜在线影院| 国产情侣在线视频| 国产日韩亚洲欧美综合| 久久99爱视频| 国产精品theporn| 久久精品国产美女| 成人一区视频| 九九综合九九综合| 日本亚洲一区| 欧美剧在线免费观看网站| 日本老熟俱乐部h0930| av网站一区二区三区| 国产视频在线视频| 一精品久久久| 久久国产精品久久精品国产| 精品欧美日韩精品| 欧美精品生活片| 人成在线免费视频| 91精品国产综合久久久久 | 精品免费在线观看| 怡红院一区二区三区| 国产乱子轮精品视频| 久久成人免费观看| 日韩精品免费| 国产日韩二区| 日韩在线电影| 91成人在线视频| 免费看美女视频在线网站| 亚洲风情亚aⅴ在线发布| 亚洲高清在线看| 亚洲永久免费视频| 国产成人免费观看网站| 成人网在线免费视频| 日本高清久久久| 亚洲精品黄色| 黄色免费高清视频| 国产区精品区| 国产午夜精品一区| 亚洲我射av| 欧美最顶级的aⅴ艳星| 91精选在线| 最新的欧美黄色| 日本高清中文字幕二区在线| 6080亚洲精品一区二区| av首页在线观看| 午夜精品久久久久久久久久久| 精品在线观看一区| 久久久久青草大香线综合精品| 久久发布国产伦子伦精品| 日韩国产欧美在线观看| 国产精品又粗又长| 欧美另类专区| 中文字幕色一区二区| 国产中文精品久高清在线不| 精品免费国产| 大陆精大陆国产国语精品| 成人黄色av免费在线观看| 亚州一区二区三区| 日韩美女免费线视频| 黄色在线网站噜噜噜| 欧美高清videos高潮hd| 麻豆影视国产在线观看| 中文国产亚洲喷潮| 大胆av不用播放器在线播放 | 国产精品亚洲综合久久| 国产欧美123| 亚洲老妇激情| 青少年xxxxx性开放hg| 91一区二区| 亚洲精品一卡二卡三卡四卡| 免费欧美激情| 欧美二级三级| 亚洲三级精品| 久久国产精品亚洲va麻豆| av成人男女| 国产精品视频一区二区三区经| 7m精品国产导航在线| 懂色中文一区二区三区在线视频| 日本精品国产| 99国产在线| jizz性欧美2| 国产亚洲欧美一区二区三区| 黑人久久a级毛片免费观看| 成人欧美视频在线| 福利电影一区| 韩国成人av| 五月天亚洲色图| 欧美一区二区综合| 欧美军人男男激情gay| 亚洲激情一区二区| 国产精品久久久久久久久久10秀| dy888午夜| 欧美激情在线| 18岁网站在线观看| 久久久精品五月天| 日本不卡一区二区在线观看| 韩国视频一区二区| 亚洲少妇一区二区三区| 99精品视频在线观看| www.av天天| 亚洲人成网站影音先锋播放| a级片在线观看免费| 亚洲v中文字幕| 日批视频免费在线观看| 在线不卡一区二区| 亚洲伦理在线观看| 亚洲欧美中文日韩在线v日本| 成人午夜在线观看视频| 久久九九有精品国产23| av漫画网站在线观看| 国产成人综合av| 精品国产欧美| 久久久一本精品99久久精品| 日韩精品91| 美女扒开大腿让男人桶| 久热精品在线| 一本之道在线视频| 久久久国产一区二区三区四区小说| 国产午夜精品久久久久久久久| 亚洲美女免费在线| 在线观看日本视频| 4438x亚洲最大成人网| 婷婷视频在线观看| 日韩一区二区三区xxxx| h片视频在线观看| 国产精品久久在线观看| 超碰成人福利| 亚洲一区二区三区四区中文| 在线国产精品一区| 午夜免费看视频| 99久久久免费精品国产一区二区| 91香蕉国产视频| 欧美视频一二三| 国产jzjzjz丝袜老师水多| 亚洲人成啪啪网站| 国产精品186在线观看在线播放| 国产精品18久久久久久麻辣| 午夜免费欧美电影| 中文字幕一区二区三区有限公司| 亚洲激情视频| 色综合五月婷婷| 国产精品区一区二区三区| 天海翼一区二区| 日韩欧美亚洲一区二区| 在线国产情侣| 欧美中文在线观看| 久草在线综合| 成人小视频在线观看免费| 美女网站色91| 亚洲黄色小说视频| 激情成人在线视频| 精品毛片一区二区三区| 最近2019中文字幕一页二页| 婷婷六月国产精品久久不卡| 国产精品播放| 欧美色综合网| 污污视频在线免费| 中文字幕在线不卡一区二区三区| 日日骚av一区二区| 日韩精品999| 高端美女服务在线视频播放| 91视频最新| 你懂的国产精品永久在线| 色www免费视频| 国产精品天美传媒| 亚洲av人无码激艳猛片服务器| 亚洲男人第一av网站| 免费高潮视频95在线观看网站| 国产传媒一区二区| 韩日成人在线| 亚洲熟女一区二区三区| 亚洲乱码国产乱码精品精98午夜| 国产又粗又大又爽视频| 日韩中文字幕在线视频| jvid一区二区三区| 亚洲国产欧美不卡在线观看| 日本麻豆一区二区三区视频| 女人黄色一级片| 欧美手机在线视频| 免费在线观看黄| 成人情趣片在线观看免费| 99精品电影| 樱花草www在线| 一区二区三区产品免费精品久久75| 国产精品久久影视| 久国内精品在线| 牛牛精品成人免费视频| 无码人妻丰满熟妇区96| 久久精品欧美日韩| 亚洲自拍第二页| 欧美大成色www永久网站婷| 这里视频有精品| 精品国产一二三四区| 久久久久久久综合| 亚洲午夜激情视频| 欧美乱妇40p| 亚洲最大在线| 天天综合网久久| 夜夜嗨av一区二区三区| 四虎电影院在线观看| 欧美最近摘花xxxx摘花| 91一区二区| 亚洲中文字幕一区| 欧美亚洲禁片免费| 日本中文字幕中出在线| 久久久精品国产一区二区三区| 日韩精品视频网| 九九热精品免费视频| 日韩av中文字幕在线播放| 欧美成人性网| 午夜啪啪福利视频| 97se亚洲国产综合自在线 | 久久野战av| 国产又粗又硬又长| 91免费看视频| 国产精品女人久久久| 91爱视频在线| 国产精品久久久久无码av| www.17c.com喷水少妇| 欧美亚洲一区二区三区四区| 牛牛电影国产一区二区| 欧美日韩最好看的视频| 国产毛片精品一区| 伊人手机在线视频| 乱亲女秽乱长久久久| 台湾佬综合网| 深夜福利网站在线观看| 日本韩国一区二区三区视频| 欧美伦理免费在线| 一级做a爰片久久| 99久久精品国产网站|