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

面試官:第三方服務經常掛,你的系統怎么保證高可用?

開發
今天,我就和大家深入探討一下,當我們作為調用方,難以推動第三方進行優化時,有哪些“看家本領”可以用來保障自身系統的高可用。

今天,我們來聊一個與微服務架構緊密相關,且在日常開發中極其普遍的話題:當我們的系統需要調用第三方接口,而這些下游接口既不穩定、性能又差時,我們該如何應對,以確保自身系統的高可用性?

放眼望去,當今的互聯網系統中,幾乎沒有哪個可以完全脫離第三方而獨立存在。我們的業務或多或少都需要與外部服務打交道:

  • 用戶登錄:需要接入微信開放平臺、QQ互聯等,實現便捷的掃碼登錄功能。
  • 金融支付:需要對接銀行的清結算接口,或是支付寶、微信支付等主流支付渠道。
  • 消息通知:發送短信驗證碼、App推送等,都離不開專業的短信或推送服務商。
  • 專業能力:像人臉識別、身份認證、天氣查詢等,更需要依賴于專業的供應商提供服務。

秀才評審過很多工程師的簡歷,發現一個普遍現象:很多人都寫了自己有豐富的第三方API對接經驗。但當我深入追問時,往往發現大部分人的工作僅僅停留在“調通接口、實現功能”的層面。對于如何處理接口超時、服務不可用、性能瓶頸等一系列容錯和高可用問題,卻考慮甚少,甚至完全沒有概念。

實際上,調用第三方接口是一個絕佳的面試場景。首先,這個場景非常普遍,面試官自己大概率也踩過類似的坑,所以他能快速理解其中的復雜性和痛點,從而與你產生共鳴。更重要的是,你可以借此機會,將熔斷、降級、限流、超時控制等一系列微服務治理的最佳實踐融會貫通,全面地展現你的架構設計能力和思考深度。

所以今天,我就和大家深入探討一下,當我們作為調用方,難以推動第三方進行優化時,有哪些“看家本領”可以用來保障自身系統的高可用。

一、架構定位:構建堅固的防衛層

在深入技術細節之前,我們首先要明確一件事:在我們的系統中,負責與第三方交互的部分,其架構定位是什么?

無論你的系統是傳統的單體應用,還是流行的微服務架構,這部分邏輯都應該被明確地隔離開,形成一個獨立的“第三方模塊”或“第三方服務”。

這個我們稱之為“防衛層”的模塊或服務,它的核心職責并非只是簡單地轉發請求,而是要解決一系列至關重要的問題:

  • 提供統一的抽象:這是它的首要任務。它必須構建一個統一、穩定的接口,對上層業務屏蔽掉不同第三方API之間的實現差異。
  • 實施客戶端治理:它必須是高可用策略的執行者,負責實現針對第三方調用的重試、限流、熔斷等關鍵功能。
  • 保障充分的可觀測性:它必須提供完善的日志、監控和告警,確保任何風吹草動都能被快速發現和定位。
  • 簡化整體的測試流程:它必須提供強大的Mock能力,方便業務方在沒有真實第三方環境的情況下,進行功能測試和性能壓測。

接下來,我們逐一展開,看看如何將這些職責落地。

1. 統一接口:屏蔽底層實現的復雜性

提供一致性的抽象,可以說是這個“防衛層”最基礎,也是最重要的目標。

舉個最常見的例子:支付。假設我們的電商平臺需要同時支持微信支付和支付寶支付。對于上游的訂單服務或者業務方來說,他們不應該關心這兩種支付方式在API層面有何不同。他們理想的調用方式是,調用一個統一的pay接口,傳入訂單號、金額、支付方式(WeChat或Alipay)等標準化的業務參數即可。

我們的第三方服務抽象層,則負責根據傳入的支付方式,在內部路由到具體的支付渠道處理器,完成與微信或支付寶的復雜交互。業務方完全不需要關心其中的任何實現細節。

一個設計良好的一致性抽象層,需要消化掉所有與具體實現相關的“臟活累活”,例如:

  • 通信協議的差異:HTTP、RPC或是其他私有協議。
  • 數據格式的差異:請求和響應是JSON、XML還是form-data。
  • 加解密算法的差異:簽名是用MD5、SHA256,還是RSA。
  • 身份認證機制的差異:是通過AppID/Secret,還是OAuth2.0。
  • 回調處理邏輯的差異:是同步返回結果,還是異步回調通知。

將這些差異封裝起來,至少能帶來兩大核心價值:

  • 研發效率的巨大提升:對于業務開發者來說,對接一個新的支付渠道不再需要去閱讀冗長的第三方API文檔,學習各種復雜的協議和規范。他們只需要調用一個早已熟悉的、標準化的內部接口,接入成本極低,效率自然就高。
  • 無與倫比的高擴展性:未來如果需要接入新的支付方式,比如PayPal或者銀聯支付。我們只需要在防衛層內部,遵循統一的接口規范,增加一個新的實現即可。整個過程對已有的上游業務完全透明,無需任何改動,真正做到了“對修改關閉,對擴展開放”。

當這個堅實的抽象層建立起來后,我們就可以在這之上,從容不迫地實施各種客戶端治理手段了。

2. 客戶端治理:在調用方實施限流與重試

我們通常談論的熔斷、降級、限流,大多是在服務端或網關層面實施的。但當我們的角色轉換為服務調用方時,我們也必須在客戶端(即我們的“防衛層”)進行相應的治理。其中,最關鍵的兩個手段就是限流和重試。

(1) 客戶端限流

絕大多數第三方平臺,出于自我保護的目的,都會對API的調用頻率進行限制。例如,某個銀行接口可能明確規定,單個IP每秒最多發送10次請求,超出部分將直接拒絕服務。

如果我們對此一無所知,任由上游業務的流量直接打過去,那么超出限制的那些請求注定會失敗。這不僅浪費了我們系統的網絡和計算資源,也給下游的第三方服務帶來了不必要的壓力。明智的做法是,在我們的防衛層中,提前根據第三方的限流規則,配置一個與之匹配的客戶端限流器(如使用Guava RateLimiter或Sentinel)。這樣,在發起調用之前就主動攔截掉超額的請求,既能快速失敗,又能省去一次必然無效的網絡調用。

(2) 超時與重試

當調用第三方平臺發生網絡超時或偶發性錯誤時,業務方顯然不希望直接收到一個冷冰冰的超時響應。因為如果這樣,就意味著每個業務方都需要自己去處理超時,實現一套自己的重試邏輯。這不僅極大地增加了業務方的開發負擔,也會導致重試策略在整個系統中泛濫且不一致,難以維護。

圖片

因此,一個健壯的第三方服務模塊,理應內置一套對業務方透明的重試機制。當發生可重試的錯誤時(如網絡超時、5xx服務端錯誤),由防衛層自動發起重試。

但這里有一個至關重要的前提,你必須反復確認和強調:只有在確認第三方接口是冪等(Idempotent)的情況下,才能進行重試。對于非冪等的寫操作(如沒有唯一請求ID的創建訂單接口),冒然重試可能會導致數據重復創建等嚴重后果。

完成了客戶端治理,大部分問題都能被有效控制。但“百密一疏”,一旦線上真的出現問題,快速定位和劃分責任(甩鍋)就顯得至關重要了。這就需要我們具備強大的可觀測性。

3. 可觀測性:讓一切盡在掌握

由于第三方服務的運行狀況完全不受我們控制,因此建立完善的可觀測性體系,是我們保護自己的最后一道,也是最重要的一道防線。你需要將Prometheus、SkyWalking等業界主流工具全面接入到你的防衛層中。

你需要監控的關鍵指標包括但不限于:

  • 每次調用的耗時(平均值、P95、P99)。
  • 調用的成功率和錯誤率。
  • 各種業務錯誤碼和系統錯誤碼的分布。
  • 客戶端限流和熔斷的觸發次數。

同時,沒有告警的監控,等于沒有監控。告警機制是必不可少的,并且需要進行精細化分層:

  • 一類告警發給技術團隊:當監控系統偵測到第三方服務出現異常(如錯誤率在1分鐘內飆升超過20%,或P99響應時間連續3分鐘高于閾值)時,立即通過電話、短信等方式通知負責該模塊的工程師,以便快速介入排查。
  • 另一類告警通知業務方:當確認第三方服務大面積不可用時,可以通過郵件、內部通訊工具等方式,向依賴該服務的上游業務方發出通知,讓他們能夠及時評估對自身業務的影響范圍,并根據情況啟動業務層面的降級或應急預案。

有了完善的可觀測性,問題定位將變得輕而易舉。但我們還能不能更進一步,從源頭上減少問題的發生概率呢?答案是肯定的,那就是做好測試支持,讓你的業務方在上線前就把問題都暴露出來。

4. 測試支持:Mock是核心,壓測是關鍵

測試支持的核心,在于提供一個功能強大、使用便捷的Mock服務。

在開發和測試環境中,當業務方調用你的接口時,你不應該真的去請求昂貴或不穩定的第三方API。相反,你的防衛層應該能夠識別出測試流量,并根據預設的規則,返回一個模擬的(Mock)響應。

如果第三方服務還包含回調機制(例如,微信支付成功后會異步回調我們的一個接口),那么你的Mock服務也需要能夠模擬這個回調行為,向業務方的回調接口發送模擬通知,從而形成一個完整的、自洽的測試閉環。

提供Mock服務的好處是多方面的:

  • 節約真金白銀:對于像短信發送、身份認證這類按次收費的服務,Mock可以避免在測試過程中產生不必要的開銷。
  • 擺脫環境依賴:第三方平臺的測試環境可能極其不穩定,甚至根本不存在。使用Mock可以讓我們完全獨立、高效地進行開發和測試。
  • 豐富的場景模擬:你可以讓業務方隨心所欲地模擬各種場景,包括成功、特定的業務失敗(如“余額不足”)、網絡超時、返回異常報文等,從而充分驗證業務方的各種正常及異常處理邏輯。

當涉及到性能壓測時,Mock功能更是不可或缺。因為任何第三方都不可能開放他們的生產環境來配合你進行壓測。

二、面試實戰指南

1. 主動引導話題

在面試中,調用第三方服務是一個極佳的切入點,它能讓你系統地展示自己在高可用架構設計方面的思考深度和實踐經驗。

很多時候,面試官未必會主動深入這個話題,所以你需要學會主動出擊,引導對話。比如在介紹項目時,可以這樣埋下伏筆:

“我負責的這個系統對可用性要求非常高,為了達成目標,我綜合運用了熔斷、限流、降級、超時控制等多種手段。其中一個關鍵的挑戰就是,系統需要和多個外部的、我們無法控制的第三方平臺進行交互。因此,如何保障這部分調用的高可用,就成了整個系統可用性的基石,我在這方面做了大量的工作。”

這樣的表述,幾乎必然會引導面試官對高可用性進行深入提問,從而將話題引入你最熟悉、準備最充分的領域。

當聊到具體實現時,強烈建議采用“前后對比”的話術來凸顯你的個人貢獻和方案價值:

“在我剛接手這個項目的時候,第三方調用這塊的設計和實現是比較混亂的。總體來說,可擴展性、可用性、可觀測性和可測試性都非常差。為了解決這些痛點,我主導進行了一次比較大的重構。”

  • 在設計和擴展性上,我重新設計了接口,提供了一個統一的抽象層。(這里可以補充你設計的接口細節)重構之后效果很明顯,以前A業務組接入一個新的短信渠道,從開發到測試聯調,大概需要一個星期。重構后,B業務組再接入,兩天就搞定了,而且穩定性更高,線上Bug也更少。
  • 在可用性上,我引入了客戶端的限流和重試機制,并且針對一些特殊的、非冪等的第三方接口,我還設計了一些特殊的容錯方案來防止數據不一致。
  • 在可觀測性上,我全面接入了公司的Prometheus和Skywalking平臺,并配置了精細化的告警。以前的情況是,我們總是等用戶投訴或者業務方反饋了才知道第三方出了問題。現在,我們能在第三方服務異常的幾分鐘內就收到告警,并且能快速啟動應急預案,通知到所有相關的業務方。
  • 在測試上,我提供了完善的Mock工具,業務方可以根據自己的測試用例,定制返回任意響應,包括成功、失敗以及模擬接口超時。這極大地提升了他們的測試效率和代碼覆蓋率。

請注意,在介紹每一點時,都盡可能用具體的例子或可以量化的數據(哪怕是估算)來佐證你的成果,這樣才能讓面試官信服,體現出你是一個有規劃、有體系、能產出實際業務價值的工程師。

最后,你可以這樣總結并再次拋出引子,引導面試官繼續深入:

“總的來說,我認為,任何與第三方服務交互的場景,都必須把對方隨時可能崩潰作為前提來設計我們自己的容錯方案。因為內部服務出問題,我們還可以找到對應的同事,推動他們快速修復。但是第三方的服務,我們是推不動的,唯一的出路就是做好自身的防護。關于具體的容錯方案,我也有一些更深入的思考和實踐……”

這句話其實又埋下了一個絕佳的伏筆,就等著面試官來問:“哦?你有哪些更深入的容錯方案?” 這時,你就可以從容地拋出下面精心準備的進階方案了。

2. 展示亮點方案

這里提供三個可以讓你在面試中大放異彩的亮點方案,你可以根據自己的業務場景和面試情況,選擇性地使用。

(1) 同步調用優雅降級為異步處理

對于一些非核心、對實時性要求不高的場景(比如業務數據上報、日志記錄等),當發現第三方服務已經崩潰或響應極慢時,我們可以不立即返回失敗,而是將業務方的請求數據臨時存儲起來(比如快速存入數據庫或Redis),然后立即給業務方一個“已接收”的成功響應。

之后,再通過一個后臺的異步任務(比如定時任務或獨立的Worker),不斷地從存儲中撈取這些暫存的數據,重新嘗試調用第三方接口進行處理。這種方案,就是典型的用異步處理來換取核心鏈路高可用的思想。

你可以這樣向面試官介紹你的容錯方案,關鍵詞就是同步轉異步:

“正常情況下,我們推送數據都是盡可能實時推送到第三方。但是,我們監控到,有些時候業務方推送過來的數據量會突增,或者第三方服務會偶發性崩潰。為了防止這些情況影響到我們主業務的穩定性,我設計了一套自動降級機制。當檢測到下游異常時,接口會自動將同步推送切換為異步模式,先把數據快速地存到我們自己的數據庫里,保證上游調用方不受任何影響。等第三方恢復過來了,再由后臺任務逐步將數據同步過去。”

更進一步,你可以闡述對這個做法的架構級改進,關鍵詞是消息隊列解耦:

“其實,我們這種容錯機制完全可以做成一種更為通用和徹底的解耦形式,那就是利用消息隊列。在這種解耦的架構下,業務方不再是同步調用一個HTTP接口,而是把需要處理的數據作為一條消息,丟到消息隊列里面。然后,我們的防衛層服務作為一個獨立的消費者,不斷地從隊列里消費消息,再去調用第三方接口處理業務。這種架構天然地具備了削峰填谷和異步重試的能力,極大地提升了整個系統的彈性和魯棒性。可以說,在我們的設計范式里,但凡能用異步解耦的場景,就絕不采用同步調用。”

(2) 供應商故障自動替換與轉移

這種策略和我們在負載均衡里提到的思想有些類似。當調用一個第三方的接口持續失敗時,你可以考慮自動切換到另一個備用的、功能相同的第三方。

舉例來說,你們公司為了保障短信發送的成功率,同時采購了A、B、C三家短信供應商。現在你在選擇使用A的時候,通過監控發現A的接口在短時間內錯誤率飆升,或者響應時間變得極長,那么你的防衛層就可以自動將后續的短信發送請求,無縫地切換到備用的B供應商上。

當然,這種策略受制于公司是否有多個可替換的供應商。但即便沒有,你也可以將其作為你的架構思考來展示。你可以這樣介紹你的方案,關鍵詞是自動替換:

“為了進一步提高核心業務(如發送驗證碼)的可用性,降低因單一供應商故障引發事故的概率,我在調用第三方的防衛層中,引入了供應商自動替換機制。我們本來就有多個功能可以互換的第三方短信供應商,于是我基于監控指標,做了一個簡單的自動切換策略。當我通過監控發現某個供應商接口出現故障時(比如錯誤率超過20%),系統就會在幾秒鐘內自動將流量切換到一個健康的備用供應商上。”

這里,經驗豐富的面試官可能會追問兩個點:

  • “你怎么知道第三方出問題了?” 這個問題正中下懷。你可以從容地回答,可以參考我們之前講過的判斷服務健康與否的多種方式,比如用響應時間、錯誤率、超時率等核心指標來綜合判斷。那么自然就可以將話題引導到你熟悉的熔斷、降級、限流等知識體系上。
  • “如果所有可用的第三方都崩潰了怎么辦?” 這種問題直接認慫就可以。因為一家出故障是小概率,多家同時出故障那就是小概率中的小概率事件了。在這種情況下,你除了做好告警、通知業務方啟動人工應急預案之外,確實沒有別的辦法了。這也就是所謂的“盡人事,聽天命”,體現了你作為架構師的務實和對邊界的清晰認知。

(3) 面向性能壓測的精細化支持

每當你想對自己的系統搞一次全鏈路壓測時,你就會發現,所有的第三方接口都是壓測路上的攔路虎。

正常來說,你不能指望任何第三方會配合你的壓測。你可以設想,類似于微信、支付寶之類的開放平臺,是不可能為你一家公司開放壓測通道的。所以,你只能考慮通過一個高度仿真的Mock系統來提供壓測支持。和正常的測試支持比起來,面向壓測的Mock,你需要做到三件更精細化的事:

  • 模擬第三方的真實響應時間:簡單的Thread.sleep()是不夠的。你需要能夠模擬第三方接口在不同負載下的響應時間分布,比如模擬其平均響應時間,并加上一個符合正態分布的隨機偏移量。
  • 模擬觸發你的容錯機制:你需要確保在壓測的大流量下,你設計的容錯機制確實被觸發了。如果你采用了同步轉異步,那么你需要驗證數據確實被寫入了臨時存儲;如果你采用的是自動切換第三方,那你也要驗證流量真的切換到了備用供應商。
  • 壓測流量的識別與分發:在全鏈路壓測的場景下,壓測流量通常會帶上特殊的標記(如Trace-ID或Header)。你的防衛層需要能夠識別這些標記,并將壓測流量精確地分發到Mock邏輯上;而對于真實的用戶請求,則依然真實地調用第三方。

那么,在介紹你的測試支持時,你可以這樣強調這個高級特性:

“早期為了摸清我們核心服務的吞吐量和響應時間瓶頸,我主導過一些壓測。但很快就發現,這些壓測流量不能真的打到第三方。為了解決這個問題,我專門對我們的Mock服務做了兩項關鍵設計。第一是模擬第三方的真實響應時間,我通過分析線上監控數據,讓Mock的響應耗時能夠模擬線上真實接口的平均耗時加上一個隨機偏移量。第二是在并發非常高的情況下,能夠主動觸發我的容錯機制,以驗證系統在高壓下的表現。而且,我的設計里已經預留好了全鏈路壓測的擴展點,未來公司只要推行全鏈路壓測,我這邊就可以根據鏈路元數據,將壓測流量無縫地轉發到Mock邏輯,而真實業務請求則會發起真實調用。”

最后一段話術,巧妙地展示了你即使沒有親身做過全鏈路壓測,也具備這方面的架構設計前瞻性。

三、總結與回顧

這篇文章我們系統性地討論了當調用第三方平臺接口時,如何從架構層面保證自身系統可用性的問題。核心的思路,是構建一個職責清晰的“防衛層”,并在這個層面上,扎實地做好一致性抽象、客戶端治理、可觀測性支持和測試支持這四大基本措施。在此基礎上,為了讓你在面試中脫穎而出,我們進一步提供了同步轉異步、自動替換第三方和精細化壓測支持這三個可以展現你架構思考深度的亮點方案。

這里所討論的應對第三方依賴的方案也可以看作是我們前面講的熔斷、限流、降級和超時控制等微服務治理思想,在一個具體業務場景下的綜合運用和深化,在日常工作中一定要多加思考和實踐。同時,如果你在面試的時候有效率方面的提升作為兩點來描述,那么一定要注意用例子來描述和衡量,因為研發效率是一個比較難量化的東西,所以要學會用具體的、生動的例子來說服面試官,讓他相信你確實通過技術手段,為團隊和業務帶來了實實在在的價值。

責任編輯:趙寧寧 來源: IT楊秀才
相關推薦

2025-10-09 01:22:00

2025-03-10 11:48:22

項目服務設計

2024-02-28 10:14:47

Redis數據硬盤

2015-11-05 16:44:37

第三方登陸android源碼

2023-10-28 09:13:32

系統面試官架構

2017-12-11 15:53:56

2019-07-30 11:35:54

AndroidRetrofit

2014-07-23 08:55:42

iOSFMDB

2015-10-22 10:36:09

OracleRimini StreOracle訴訟

2015-04-27 19:32:16

Moxtra

2016-12-28 17:47:56

API

2022-01-14 09:57:14

鴻蒙HarmonyOS應用

2013-12-24 16:58:28

搜狐

2025-03-04 10:00:00

架構接口k開發

2014-02-18 10:45:41

2025-11-05 01:55:00

2017-05-16 13:24:02

LinuxCentOS第三方倉庫

2014-07-25 09:33:22

2019-09-03 18:31:19

第三方支付電商支付行業

2009-12-31 14:38:34

Silverlight
點贊
收藏

51CTO技術棧公眾號

97精品免费视频| 日本高清不卡视频| 国产一区二区三区四区五区加勒比| 日本少妇性高潮| 猛男gaygay欧美视频| 精品欧美国产一区二区三区| 亚洲欧美国产不卡| 亚洲国产一二三区| 日韩高清欧美激情| 欧美不卡视频一区发布| 亚洲av无码一区二区三区观看| 成人自拍av| 一区二区三区波多野结衣在线观看 | www.av视频| 中文字幕精品影院| 欧美大片日本大片免费观看| 能看的毛片网站| 日本高清成人vr专区| 久久久久久久网| 91中文字幕一区| 国产美女www| 在线播放精品| 久久精品色欧美aⅴ一区二区| 三级男人添奶爽爽爽视频 | 国产视频一区二区三区四区| 亚洲一二区视频| 久久成人亚洲| 国内成人精品视频| 亚洲成人生活片| 成人情趣视频网站| 亚洲另类激情图| 久久久久久婷婷| 亚洲精品观看| 91精品国产91久久久久久一区二区 | 亚洲国产中文字幕久久网| 久久久久久久久久一区二区| 电影一区二区三| 亚洲aaa精品| av在线免费观看国产| av在线电影网| 亚洲国产精品黑人久久久| 蜜桃传媒视频麻豆一区 | 国产亚洲a∨片在线观看| 国产精品300页| 国产色噜噜噜91在线精品 | 乱码一区二区三区| 精品国产乱码久久久久久樱花| 在线观看国产日韩| 老熟妇仑乱视频一区二区| 一本大道色婷婷在线| 午夜成人在线视频| 成人免费观看cn| 免费在线小视频| 精品久久久久久电影| 麻豆tv在线播放| 国产在线精彩视频| 亚洲精品国产无套在线观| 欧美 国产 精品| av片哪里在线观看| 一区二区三区高清不卡| 日韩黄色短视频| 精品极品在线| 日韩欧美国产网站| 97公开免费视频| 欧美日韩国产网站| 欧美日韩国产在线播放网站| 拔插拔插华人永久免费| 精品三级久久久| 亚洲精品一区二区三区四区高清| 女女调教被c哭捆绑喷水百合| 亚洲图色一区二区三区| 亚洲精品97久久| 国产aⅴ激情无码久久久无码| 红桃成人av在线播放| 中文字幕精品av| 国产精品国产精品88| 欧美区日韩区| 欧美激情视频一区| 久久精品无码av| 美女视频网站黄色亚洲| 成人精品网站在线观看| 亚洲av少妇一区二区在线观看| 国产99久久久国产精品免费看 | 成人羞羞网站入口| 麻豆成人在线看| 日本黄色片视频| 日本午夜精品视频在线观看| 亚洲japanese制服美女| 天堂在线资源8| 国产精品人成在线观看免费| 欧美日韩dvd| 玖玖在线播放| 欧美日韩视频第一区| 国产伦理在线观看| 国产精品手机在线播放 | 国产亚洲精品女人久久久久久| 夜夜爽av福利精品导航| 国产精品免费视频xxxx| 国产美女永久免费| wwwwxxxxx欧美| 中文字幕综合在线观看| 周于希免费高清在线观看| 欧美精选在线播放| 日本xxxx裸体xxxx| 欧美精品观看| 国产精品亚洲аv天堂网| 国产成人无码www免费视频播放| 国产午夜三级一区二区三| 老司机激情视频| 日本国产欧美| 日韩大片免费观看视频播放| 91高清免费看| 美女在线视频一区| 蜜桃麻豆www久久国产精品| 四虎av在线| 欧美日韩精品一区二区三区四区 | 精品黑人一区二区三区在线观看| 久久久久国产精品麻豆ai换脸| 男人日女人的bb| 日韩欧美激情| 亚洲深夜福利网站| 国产成人无码精品亚洲| 国产精品自产自拍| 欧美一区二区三区电影在线观看| xxxcom在线观看| 日韩视频免费观看高清完整版 | 国产丝袜不卡| 日韩另类在线| 日韩片之四级片| 国产尤物在线播放| 日本少妇一区二区| 日本不卡久久| 唐人社导航福利精品| 亚洲精品电影网站| 日韩欧美大片在线观看| 成人美女在线观看| 青春草国产视频| 麻豆视频久久| 欧美理论片在线观看| 国产口爆吞精一区二区| 最新热久久免费视频| 午夜剧场在线免费观看| 久久在线播放| 国产日韩欧美中文在线播放| av一区在线观看| 欧美一a一片一级一片| gv天堂gv无码男同在线观看 | 日本中文字幕精品| 欧美精品啪啪| 国产精品免费在线| а√天堂8资源中文在线| 亚洲成人性视频| 日韩成人免费在线观看| 99久久99久久精品国产片果冻| 亚洲国产精品无码观看久久| 欧美人体视频| 青草成人免费视频| 高清av电影在线观看| 精品视频在线视频| 欧美精品久久久久久久久46p| 国产麻豆视频精品| www.av91| 蜜臀91精品国产高清在线观看| 日本精品视频网站| porn亚洲| 日韩一级完整毛片| 国产午夜精品一区二区理论影院 | 欧美一区二区三区四区五区| 黄色一级视频免费| 99免费精品在线| www日韩视频| 天天精品视频| 国产精品自拍首页| 色天使综合视频| 日韩视频免费在线| 内射后入在线观看一区| 欧美性猛交xxxx乱大交极品| 亚洲综合第一区| 国产成人久久精品77777最新版本| 久久久久久免费看| 欧美精选一区二区三区| 亚洲精品欧美极品| 国产免费拔擦拔擦8x在线播放 | 亚洲一区二区三区午夜| 亚洲成av人片在线观看www| 欧美亚洲国产另类| 日本在线看片免费人成视1000| 欧美一二三四区在线| 国产精品久久久久久久久久久久久久久久久 | 日本少妇在线观看| 国产精品污污网站在线观看| 久久久国产精品久久久| 日产欧产美韩系列久久99| 欧洲xxxxx| 伊甸园亚洲一区| 亚洲xxx视频| 日本综合久久| 欧美精品第一页在线播放| 国产美女视频一区二区三区| 欧美成人一区二区| 最近中文字幕在线观看| 亚洲3atv精品一区二区三区| 国产农村妇女精品一区| 91免费视频网址| 欧美一级大片免费看| 奇米精品一区二区三区在线观看一| 天堂а√在线中文在线| 欧美亚洲在线日韩| 国产在线资源一区| 欧美片网站免费| 国产成人亚洲综合91精品| 激情网站在线| 久久天天躁狠狠躁老女人| 毛片网站在线| 亚洲国产天堂久久国产91 | 亚洲人在线视频| 欧美一区二区公司| 欧美一区二区三区视频在线观看| 一二三区免费视频| 精品久久久久人成| 久久久久久久黄色| 国产精品久久国产精麻豆99网站 | 国产欧美日韩影院| 国产有色视频色综合| 午夜免费欧美电影| 成人xxxxx| 日本免费成人| 国产美女被下药99| 欧美色片在线观看| 国产成人精品久久| 日韩视频在线你懂得| 欧美男女爱爱视频| 91精品国产调教在线观看| 日韩精品一区二区三区色偷偷| 欧美日韩破处| 精品欧美一区二区久久久伦 | 国产主播精品在线| 3d欧美精品动漫xxxx无尽| 欧洲s码亚洲m码精品一区| heyzo中文字幕在线| 欧美黑人性生活视频| 2024最新电影免费在线观看| www.午夜精品| 国产不卡在线| 欧美猛交免费看| 羞羞视频在线观看免费| 欧美老少配视频| www欧美xxxx| 久久青草精品视频免费观看| 大黄网站在线观看| 久久免费精品日本久久中文字幕| 黄色在线看片| 97精品久久久中文字幕免费| 涩涩视频在线| 国产成一区二区| 福利视频一区| 亚洲在线www| 亚洲3区在线| 麻豆一区区三区四区产品精品蜜桃| 欧美sss在线视频| 日本一区二区三区免费看| av中文字幕一区二区| 最新国产精品久久| 欧美日韩一区二区三区四区在线观看| 国产精品久久国产| 欧美亚洲免费| 欧美婷婷精品激情| 国产乱人伦偷精品视频不卡 | 久久久影视精品| 中文字幕不卡三区视频| 国产精品狼人色视频一区| 综合久久伊人| 国产日韩精品推荐| 最近国产精品视频| 亚洲国产日韩美| 欧美激情性爽国产精品17p| 欧美精品久久久久久久免费| 老司机精品福利视频| 爱豆国产剧免费观看大全剧苏畅| 国产91精品免费| a级在线免费观看| 亚洲精品精品亚洲| 欧美日韩一级黄色片| 91.成人天堂一区| 天天摸夜夜添狠狠添婷婷| 亚洲性无码av在线| 性直播体位视频在线观看| 热re99久久精品国产66热| 国产精品久久久久久av公交车| 精品久久久久久乱码天堂| 日韩在线二区| 成人免费aaa| 国产在线乱码一区二区三区| 99久久国产精| 自拍av一区二区三区| 国产专区第一页| 91精品国产全国免费观看| 免费人成在线观看网站| 色综合久久久久久中文网| 中文字幕av一区二区三区佐山爱| 91在线直播亚洲| 精品理论电影在线| 男女私大尺度视频| 久久99久久精品| 国产精品成人一区二区三区电影毛片 | 精品午夜一区二区三区| 999久久久免费精品国产| 日本免费黄视频| 国产精品99久久久久久似苏梦涵| 中文字幕免费高清| 亚洲成精国产精品女| 97精品人妻一区二区三区在线| 日韩电影大片中文字幕| 26uuu亚洲电影在线观看| 国产欧美在线观看| 欧美美乳视频| 欧美精品99久久| 粉嫩欧美一区二区三区高清影视| 国产在视频线精品视频| 日本久久电影网| 天堂a中文在线| 国产69精品久久久久9999| 久久精品一级| 亚洲免费av网| 理论电影国产精品| 第一次破处视频| 91久久香蕉国产日韩欧美9色| 天堂成人在线视频| 久久久免费精品| 中文字幕久久精品一区二区| 蜜臀av.com| 韩国成人福利片在线播放| 妖精视频在线观看免费| 在线一区二区三区四区五区 | 成人免费xxxxx在线视频| 99精品久久久久久| 日韩欧美高清在线观看| 精品国产一区二区三区久久久蜜月 | 日本一区高清| 国产91精品久久久久久久| 精品视频在线你懂得| 精品人妻少妇一区二区| 成人精品视频一区二区三区尤物| 免费在线看黄网址| 精品欧美黑人一区二区三区| 里番在线播放| 国产综合色一区二区三区| 最新国产拍偷乱拍精品| 亚洲视频在线播放免费| 激情成人在线视频| 天堂a中文在线| 国产精品99久久久久久久久| 国产亚洲一卡2卡3卡4卡新区| www.国产区| 国产精品不卡视频| 99精品免费观看| 欧美大片免费看| 黑色丝袜福利片av久久| 亚欧无线一线二线三线区别| 久久女同互慰一区二区三区| 五月婷婷丁香在线| 日韩中文字幕国产精品| 清纯唯美激情亚洲| 久久久久久久久久久99| www国产精品av| 伊人久久一区二区| 久久国产精品久久久久| 国产精伦一区二区三区| 男人操女人免费软件| 国产精品午夜在线观看| 成 人 黄 色 片 在线播放| 性色av一区二区三区免费| 免费看成人吃奶视频在线| 激情五月俺来也| 亚洲在线一区二区三区| 色天堂在线视频| 国产深夜精品福利| 激情综合在线| 无码 人妻 在线 视频| 91精品国产综合久久久蜜臀粉嫩| 色呦呦在线视频| 日本一区视频在线| 国产激情一区二区三区四区| 在线观看黄网站| 久久久极品av| 亚洲精品进入| 色婷婷综合在线观看| 欧美午夜xxx| 国产cdts系列另类在线观看| 欧美精品欧美精品| 国产精品538一区二区在线| 亚洲免费在线视频观看| 久久成人这里只有精品| 亚洲人成精品久久久| 少妇欧美激情一区二区三区| 日本精品一区二区三区四区的功能| aaa大片在线观看| 日本一区视频在线播放| 成av人片一区二区| 国产又粗又猛又爽又黄视频|