精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

久久在线免费观看视频| 一本一本大道香蕉久在线精品| 国产欧美日韩免费| 一级性生活免费视频| 国产电影一区二区| 亚洲一区二区视频在线观看| 久久草.com| 国产九色91回来了| 国内综合精品午夜久久资源| 亚洲精品一区二三区不卡| 少妇一级淫免费播放| 国产在线xxx| 久久久国产综合精品女国产盗摄| 国产日本欧美一区二区三区在线| 国产中文字幕免费| 欧美hentaied在线观看| 亚洲国产精品久久久久久| 黄色片视频在线| 99色在线观看| 亚洲欧美日韩一区二区三区在线观看| 好吊色欧美一区二区三区 | 午夜视频免费看| 久久精品国产一区二区三| 97免费视频在线播放| 欧美肥妇bbwbbw| 视频国产一区| 亚洲国产精品热久久| 无套内谢丰满少妇中文字幕| 在线看欧美视频| 五月综合激情网| 国产精品88久久久久久妇女| 国产高清视频在线观看| 成人av资源在线| 91色在线视频| 中文字幕人成人乱码亚洲电影| 国产精品日本| 久久久久久69| 青娱乐免费在线视频| 91麻豆国产自产在线观看亚洲| 亚洲精品永久免费| 精品人妻一区二区三区日产| 日本一区二区三区视频在线看| 欧美四级电影在线观看| 欧美日韩在线中文| 91九色porn在线资源| 亚洲视频精选在线| 一级一片免费播放| 中文字幕日本在线观看| 日本一区二区三区免费乱视频 | 在线免费看污网站| 日本午夜免费一区二区| 欧美性高清videossexo| 国产福利影院在线观看| 欧美影视资讯| 精品视频1区2区| 冲田杏梨av在线| 国产精品久久亚洲不卡| 在线观看免费一区| 国产精品入口免费软件| 欧美成人家庭影院| 在线成人高清不卡| 中文字幕55页| 在线日韩成人| 亚洲精品久久在线| 中文人妻一区二区三区| 免费电影一区二区三区| 亚洲一二在线观看| 老司机精品免费视频| 99久久亚洲精品蜜臀| 久久精品2019中文字幕| 国产性xxxx| 亚洲激情自拍| 日本高清+成人网在线观看| 精人妻无码一区二区三区| 日产欧产美韩系列久久99| 国产精品伦子伦免费视频| 特级西西444www大胆免费看| 奇米影视在线99精品| 91精品久久久久久综合乱菊| 国产日韩一级片| 成人污污视频在线观看| 精品日本一区二区三区在线观看| 日韩av成人| 国产精品视频九色porn| 一级黄色片播放| 国产不卡人人| 欧美午夜精品久久久久久超碰| 亚洲涩涩在线观看| ccyy激情综合| 亚洲日本欧美日韩高观看| 男人在线观看视频| 一本色道久久综合| 国产精品视频在线观看| 成人av手机在线| 26uuu久久天堂性欧美| 一本一道久久a久久综合精品 | 亚洲欧美日韩国产中文在线| 男人插女人视频在线观看| 视频在线日韩| 欧美一二三四区在线| 色天使在线视频| 久久久久久久久国产一区| 97香蕉超级碰碰久久免费的优势| 中文人妻熟女乱又乱精品| 国产精品一区二区果冻传媒| 欧美激情第一页在线观看| 菠萝菠萝蜜在线观看| 欧美性xxxxx| 在线观看免费看片| 国产欧美日韩免费观看 | 日韩欧美在线一区二区| 久久电影网站| 欧美日韩一区二区三区视频 | 欧美极品少妇xxxxⅹ高跟鞋| 91午夜在线观看| 粉嫩av一区二区三区四区五区| 精品久久一区二区三区| www中文在线| 亚洲一区二区毛片| 99re热精品| 免费大片在线观看www| 岛国av一区二区在线在线观看| 午夜精品久久久久久久99热影院| 免费看成人吃奶视频在线| 欧美多人乱p欧美4p久久| 亚洲午夜精品久久久| 26uuu精品一区二区三区四区在线| 久久免费视频2| 97精品国产综合久久久动漫日韩| 日韩精品中文字幕在线| 国产在线视频卡一卡二| 国产精品一区二区不卡| 在线观看欧美激情| 外国电影一区二区| 亚洲丝袜av一区| 91精品国产综合久久久蜜臀九色 | 国产伦精品一区二区三| 久草中文在线| 久久综合五月婷婷| 亚洲精品成a人在线观看| 国产精品三区在线观看| 国产一区日韩二区欧美三区| 在线免费一区| 亚洲久草在线| 日韩有码在线电影| 一级黄色片在线播放| 中文字幕免费观看一区| 福利在线一区二区三区| 精品视频免费在线观看| 国产极品精品在线观看| 成人午夜在线观看视频| 91黄视频在线| 老司机福利在线观看| 奇米888四色在线精品| 欧美日韩国产精品一区二区| 欧美黄色网页| 亚洲欧美日韩精品久久| 波多野结衣高清在线| 国产视频不卡一区| 超碰在线公开97| 欧美电影免费播放| 成人激情视频小说免费下载| 黄a在线观看| 日韩欧美一区二区久久婷婷| 精品少妇久久久久久888优播| 成人免费av资源| 久久综合色视频| 少妇精品久久久| 国产精品高潮呻吟视频| av在线免费观看网站| 欧美日产国产精品| a级黄色片免费看| 成人蜜臀av电影| 无码精品国产一区二区三区免费| 精品产国自在拍| 91精品免费视频| 俄罗斯一级**毛片在线播放| 国产视频久久久| 最近国语视频在线观看免费播放| 亚洲视频狠狠干| 在线看黄色的网站| 日韩高清电影一区| 加勒比海盗1在线观看免费国语版| 黄色美女久久久| 国产精品激情av电影在线观看 | 国产精品色综合| 亚洲一区二区三区在线| 亚洲天堂久久新| 狠狠狠色丁香婷婷综合久久五月| 日本人体一区二区| 成人在线免费视频观看| 成人性色av| 福利一区二区三区视频在线观看| 欧美尺度大的性做爰视频| 三级在线视频| 欧美一区二区三区视频免费| 久久久久久久久影院| 日韩一区欧美小说| 香蕉网在线播放| 国产伦精品一区二区三区免费| 91av在线免费播放| 欧美日韩三区| 日韩欧美一区二区三区四区| 盗摄牛牛av影视一区二区| 国产精品久久在线观看| 四虎亚洲精品| 色偷偷av一区二区三区乱| 午夜福利理论片在线观看| 欧美日韩三级一区| 久久精品视频5| 亚洲自拍欧美精品| 五月天免费网站| 久久免费电影网| 亚洲成a人片在线www| 久久精品噜噜噜成人av农村| 99热在线这里只有精品| 国内精品久久久久久久影视麻豆 | 成人网在线观看| 成人软件在线观看| 国内免费精品永久在线视频| 激情在线小视频| 中文字幕亚洲综合久久| 色视频免费在线观看| 精品久久久久久久人人人人传媒 | 国产乱人伦精品一区二区在线观看| 国产成人a亚洲精v品无码| 欧美日韩三级| 亚洲av综合色区| 97视频精品| 亚洲视频电影| 日韩av大片| 日韩一区免费观看| 国产精品免费不| 欧美日韩三区四区| 竹菊久久久久久久| 欧美18视频| 日韩欧美ww| 精品在线视频一区二区三区| 六月丁香久久丫| 国产日韩一区欧美| 国产精品xxx在线观看| 超碰97人人在线| 亚洲精品视频一二三区| 99视频在线| 一区三区自拍| 国产精品美女xx| 欧美人妖在线观看| 精品国产中文字幕| 夜夜春成人影院| 欧洲高清一区二区| 欧美日韩国产一区二区三区不卡| 日本不卡在线播放| 成人网18免费网站| 亚洲精品在线免费| 亚洲成人国产| 成年人视频大全| 在线观看一区| 国产精品va无码一区二区| 亚洲制服少妇| 久久综合伊人77777麻豆最新章节| 麻豆91小视频| 波多野结衣网页| thepron国产精品| 五级黄高潮片90分钟视频| 久久精品视频免费| 成年人在线免费看片| 中文字幕亚洲电影| 久久久久久久久精| 欧美性猛交丰臀xxxxx网站| 丁香社区五月天| 欧美日韩精品福利| 性生活视频软件| 亚洲精品二三区| 国产午夜精品一区理论片| 日韩中文字幕第一页| 丝袜美女在线观看| 日韩av手机在线观看| 日本久久一区| 国产视频一区二区不卡| 国产尤物久久久| 99热都是精品| 国产精品一页| 岛国av免费在线| av在线不卡免费看| 美女av免费看| 亚洲成a人片在线观看中文| 天天干天天干天天操| 91精品国产全国免费观看| 欧美自拍偷拍一区二区| 中文字幕免费国产精品| 日本色护士高潮视频在线观看| 日本久久精品视频| 欧美国产亚洲精品| 日本在线免费观看一区| 欧美日韩国产色综合一二三四| 成人免费毛片网| 国产一区二区三区四| 自拍偷拍中文字幕| 亚洲精品少妇30p| 中文字幕手机在线视频| 欧美成人在线直播| av影片免费在线观看| 97视频在线观看亚洲| 996久久国产精品线观看| 蜜桃视频日韩| 国产精品99一区二区| 国产精品区在线| 26uuu国产一区二区三区| 五月婷婷一区二区| 欧美午夜片在线观看| 亚洲 欧美 激情 另类| 欧美成人免费在线观看| **在线精品| 狠狠色噜噜狠狠狠狠色吗综合| 亚洲激情中文| 五月婷婷六月合| 久久女同性恋中文字幕| 久久综合激情网| 欧美精品xxxxbbbb| 第一视频专区在线| 91精品国产高清| 国产厕拍一区| 中文字幕色呦呦| 久久精品国产一区二区三| 国产精品20p| 日韩欧美在线视频观看| 色欲av伊人久久大香线蕉影院| 久久国产精品久久久久久| av成人在线观看| 日韩视频精品| 久久性色av| 亚洲熟妇无码av| 好吊成人免视频| 手机看片1024国产| 国产综合在线看| 99精品国产一区二区三区2021| 路边理发店露脸熟妇泻火| 久久精品国产精品青草| 黄色片网站在线播放| 欧美日韩精品一区二区天天拍小说| 韩国中文字幕2020精品| 日本免费一区二区三区视频观看| 日韩有码一区| 欧美 激情 在线| 久久婷婷国产综合国色天香| 日产精品久久久| 亚洲女人被黑人巨大进入| 9i看片成人免费高清| 久热国产精品视频一区二区三区| 9国产精品视频| 国产吞精囗交久久久| 色综合久久综合| 国产三区四区在线观看| 国产精品一区二区三区在线播放| 成人羞羞网站入口| 日本中文字幕影院| 一区二区三区在线视频观看58 | 亚洲第一会所| 亚洲巨乳在线观看| 国产一区二区三区精品欧美日韩一区二区三区| 男女全黄做爰文章| 日韩欧美的一区| 黄色漫画在线免费看| 美女精品国产| 蜜桃在线一区二区三区| 日本高清不卡免费| 精品国产乱码久久久久久影片| 1区2区3区在线| 日本高清久久一区二区三区| 蜜桃视频第一区免费观看| 久久国产美女视频| 亚洲精品一区二区精华| 婷婷六月国产精品久久不卡| 亚洲三区视频| 成人午夜视频福利| 免费看毛片网站| 美女999久久久精品视频| 美国成人xxx| 一区二区三区视频网| 一区二区日韩电影| 丝袜视频国产在线播放| 国产精品网红福利| 欧美在线三区| 国产熟妇久久777777| 91麻豆精品久久久久蜜臀| 精品众筹模特私拍视频| 亚洲在线观看一区| 豆国产96在线|亚洲| 夜夜躁日日躁狠狠久久av| 不卡毛片在线看| 欧美猛男男男激情videos| 先锋资源在线视频| 色噜噜久久综合| 男女在线观看视频| 乱一区二区三区在线播放| 狠狠色2019综合网| 亚洲黄网在线观看| 欧美极品美女电影一区| 欧美亚洲激情| 特级西西人体4444xxxx|