免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

SpringCloud——SkyWalking全鏈路監(jiān)控源碼深度解析

SpringCloud——SkyWalking全鏈路監(jiān)控源碼深度解析 目錄SkyWalking 源碼復(fù)盤(pán) ?從一次請(qǐng)求到監(jiān)控結(jié)果的完整源碼地圖一、SkyWalking 整體分層二、第一階段JVM 啟動(dòng) Agent三、第二階段插件匹配與字節(jié)碼增強(qiáng)四、第三階段HTTP 請(qǐng)求創(chuàng)建 EntrySpan五、第四階段ContextManager 管理當(dāng)前 TraceSpan 棧六、第五階段Trace 創(chuàng)建業(yè)務(wù) LocalSpan七、第六階段HikariCP 與 JDBC 拆分?jǐn)?shù)據(jù)庫(kù)耗時(shí)1. 獲取連接2. 執(zhí)行 SQL3. 歸還連接你的兩個(gè)實(shí)驗(yàn)SSH 隧道斷開(kāi)/order/slowSql?time2八、第七階段Feign 創(chuàng)建 ExitSpan 并傳播上下文九、第八階段TraceSegment 異步上報(bào)緩沖區(qū)滿了怎么辦十、OAP 接收并解析 Segment十一、為什么一條 Trace 能產(chǎn)生儀表盤(pán)指標(biāo)十二、拓?fù)鋱D是如何形成的十三、原始 Trace 與 Metrics 是兩條不同鏈路十四、日志關(guān)聯(lián)鏈路1. %tid 輸出 Trace ID2. GRPCLogClientAppender 上傳日志控制臺(tái)有 TID但 UI 沒(méi)日志十五、告警鏈路為什么 WebHook 是 JSON 數(shù)組十六、你的告警完整鏈路十七、Trace Profiling 鏈路三個(gè)核心指標(biāo)Dump CountDurationSelf Duration判斷方法十八、四條核心數(shù)據(jù)鏈鏈路一Trace鏈路二Metrics 與拓?fù)滏溌啡罩炬溌匪母婢?、故障排查的?biāo)準(zhǔn)順序1. UI 看不到服務(wù)2. 服務(wù)有指標(biāo)但沒(méi)有 Trace3. Trace 斷鏈4. Trace 顯示數(shù)據(jù)庫(kù)慢5. 控制臺(tái)有 TID但 UI 沒(méi)日志6. 告警不觸發(fā)7. Profiling 沒(méi)數(shù)據(jù)二十、整套源碼中的核心類二十一、一段完整的面試回答二十二、你目前對(duì) SkyWalking 的掌握層次二十三、最終記憶圖SkyWalking 源碼復(fù)盤(pán) ?從一次請(qǐng)求到監(jiān)控結(jié)果的完整源碼地圖這一節(jié)把前面所有內(nèi)容收束成一條完整主線。以你的請(qǐng)求為例GET /order/query/1最終可能產(chǎn)生服務(wù)監(jiān)控指標(biāo) 端點(diǎn)指標(biāo) 分布式 Trace 服務(wù)拓?fù)?數(shù)據(jù)庫(kù)調(diào)用記錄 帶 TID 的業(yè)務(wù)日志 日志與 Trace 關(guān)聯(lián) 告警 WebHook Trace Profiling 線程棧這些并不是一個(gè)模塊一次性完成的而是由Agent 采集、OAP 分析、存儲(chǔ)、UI 查詢四個(gè)階段共同完成。一、SkyWalking 整體分層┌─────────────────────────────────────────┐ │ 業(yè)務(wù)應(yīng)用 │ │ order / account / storage / alarm │ └─────────────────────────────────────────┘ │ │ -javaagent ▼ ┌─────────────────────────────────────────┐ │ Java Agent │ │ │ │ 插件匹配 │ │ 字節(jié)碼增強(qiáng) │ │ 創(chuàng)建 Span │ │ 傳播 Trace Context │ │ 采集日志、JVM、Profiling 數(shù)據(jù) │ │ 異步上報(bào) │ └─────────────────────────────────────────┘ │ │ gRPC 11800 ▼ ┌─────────────────────────────────────────┐ │ OAP │ │ │ │ 接收 Segment / Log / Profile Snapshot │ │ 分析 Span │ │ 生成 Source │ │ OAL 聚合 Metrics │ │ 執(zhí)行告警規(guī)則 │ │ 寫(xiě)入存儲(chǔ) │ └─────────────────────────────────────────┘ │ │ HTTP 12800 ▼ ┌─────────────────────────────────────────┐ │ SkyWalking UI 8080 │ │ │ │ 服務(wù)儀表盤(pán) │ │ 拓?fù)鋱D │ │ Trace │ │ 日志 │ │ 告警 │ │ Profiling │ └─────────────────────────────────────────┘端口必須記住端口用途11800Agent 向 OAP 上報(bào)數(shù)據(jù)12800UI 查詢 OAP8080SkyWalking UI8084你的告警接收服務(wù)二、第一階段JVM 啟動(dòng) Agent你的啟動(dòng)參數(shù)類似-javaagent:H:\tools\...\skywalking-agent.jar -Dskywalking.agent.service_nameorder-service -Dskywalking.collector.backend_service127.0.0.1:11800JVM 啟動(dòng)順序JVM 啟動(dòng) → 加載 skywalking-agent.jar → 調(diào)用 SkyWalkingAgent.premain() → 讀取 Agent 配置 → 掃描插件 → 構(gòu)造 Byte Buddy Transformer → 注冊(cè) Instrumentation → 啟動(dòng) Agent 內(nèi)部服務(wù) → 執(zhí)行業(yè)務(wù)應(yīng)用 main()核心邏輯可概括為public static void premain( String agentArgs, Instrumentation instrumentation ) { initializeConfig(agentArgs); loadPlugins(); installClassTransformer(instrumentation); ServiceManager.INSTANCE.boot(); }這里要區(qū)分Maven 依賴 → 讓項(xiàng)目能編譯和調(diào)用 Toolkit API -javaagent → 真正修改目標(biāo)類字節(jié)碼并采集數(shù)據(jù)所以只添加 Maven 依賴 ≠ 已經(jīng)啟用 SkyWalking Agent三、第二階段插件匹配與字節(jié)碼增強(qiáng)Agent 不會(huì)修改所有類。它會(huì)根據(jù)插件規(guī)則匹配Tomcat Feign JDBC HikariCP Logback Trace 線程池 ……例如Tomcat 插件 → 增強(qiáng) StandardHostValve.invoke() Feign 插件 → 增強(qiáng) HTTP Client execute() HikariCP 插件 → 增強(qiáng) getConnection()、close() JDBC 插件 → 包裝 PreparedStatement.execute() Toolkit 插件 → 增強(qiáng)帶 Trace 的方法運(yùn)行時(shí)可以近似理解為beforeMethod(); try { return originalMethod(); } catch (Throwable e) { handleException(e); throw e; } finally { afterMethod(); }SkyWalking 沒(méi)有修改你的業(yè)務(wù)源代碼但 JVM 實(shí)際執(zhí)行的方法已經(jīng)插入了追蹤邏輯。四、第三階段HTTP 請(qǐng)求創(chuàng)建 EntrySpan瀏覽器訪問(wèn)GET http://127.0.0.1:8083/order/query/1進(jìn)入Tomcat → StandardHostValve.invoke() → TomcatInvokeInterceptor請(qǐng)求前ContextCarrier carrier readHeaders(request); AbstractSpan span ContextManager.createEntrySpan( GET:/order/query/1, carrier );隨后記錄URL HTTP Method Tomcat Component HTTP Layer形成EntrySpan └─ GET:/order/query/1如果這是瀏覽器發(fā)起的首個(gè)請(qǐng)求請(qǐng)求頭沒(méi)有有效上游上下文 → 創(chuàng)建一條新的 Trace如果是上游微服務(wù)調(diào)用請(qǐng)求頭中存在傳播信息 → 恢復(fù)上游 Trace五、第四階段ContextManager管理當(dāng)前 Trace第一次創(chuàng)建 Span 時(shí)CONTEXT.get() null → 創(chuàng)建 TracingContext → 創(chuàng)建 TraceSegment → 寫(xiě)入 ThreadLocal關(guān)鍵結(jié)構(gòu)ContextManager └─ ThreadLocalTracingContext ├─ TraceSegment ├─ activeSpanStack └─ spanIdGenerator不同 Tomcat 工作線程線程 A → TracingContext A 線程 B → TracingContext B 線程 C → TracingContext C因此并發(fā)請(qǐng)求不會(huì)互相串鏈。Span 棧你的請(qǐng)求執(zhí)行時(shí)GET:/order/query/1 → queryOrder → HikariCP getConnection → JDBC execute對(duì)應(yīng)入棧Tomcat Tomcat → queryOrder Tomcat → queryOrder → HikariCP Tomcat → queryOrder → JDBC創(chuàng)建子 Span 時(shí)AbstractSpan parent activeSpanStack.getLast(); newSpan.parentSpanId parent.getSpanId();結(jié)束時(shí)必須嚴(yán)格后進(jìn)先出先結(jié)束 JDBC 再結(jié)束 queryOrder 最后結(jié)束 TomcatSpan 棧為空后TraceSegment 完成 → ThreadLocal.remove()六、第五階段Trace創(chuàng)建業(yè)務(wù) LocalSpan業(yè)務(wù)方法Trace(operationName queryOrder) Tags({ Tag(key orderId, value arg[0]), Tag(key result, value returnedObj) }) public OrderInfo queryOrder(Integer orderId) { return orderMapper.selectById(orderId); }執(zhí)行過(guò)程進(jìn)入方法 → createLocalSpan(queryOrder) → 讀取 arg[0] → 執(zhí)行業(yè)務(wù)邏輯 → 讀取 returnedObj → stopSpan()結(jié)果GET:/order/query/1 EntrySpan └─ queryOrder LocalSpan ├─ orderId 1 └─ result OrderInfo(...)這里不是 Spring AOP而是 Agent 直接增強(qiáng)方法字節(jié)碼。七、第六階段HikariCP 與 JDBC 拆分?jǐn)?shù)據(jù)庫(kù)耗時(shí)數(shù)據(jù)庫(kù)調(diào)用過(guò)程MyBatis → HikariDataSource.getConnection() → PreparedStatement.execute() → Connection.close()形成queryOrder ├─ HikariCP/Connection/getConnection LocalSpan ├─ Mysql/JDBC/PreparedStatement/execute ExitSpan └─ HikariCP/Connection/close LocalSpan1. 獲取連接HikariCP/Connection/getConnection回答應(yīng)用拿到數(shù)據(jù)庫(kù)連接花了多久慢時(shí)重點(diǎn)排查連接池耗盡 等待其他線程歸還連接 數(shù)據(jù)庫(kù)不可達(dá) SSH 隧道斷開(kāi) 建立新連接過(guò)慢 連接泄漏2. 執(zhí)行 SQLMysql/JDBC/PreparedStatement/execute回答從調(diào)用 JDBC 到數(shù)據(jù)庫(kù)返回整體花了多久慢時(shí)重點(diǎn)排查SQL 缺少索引 鎖等待或死鎖 掃描行數(shù)過(guò)多 數(shù)據(jù)庫(kù) CPU、磁盤(pán) IO 高 網(wǎng)絡(luò)延遲 SSH 隧道擁塞 結(jié)果集過(guò)大3. 歸還連接HikariCP/Connection/close一般不是關(guān)閉物理連接而是清理連接狀態(tài) → 歸還連接池 → 供其他請(qǐng)求復(fù)用你的兩個(gè)實(shí)驗(yàn)SSH 隧道斷開(kāi)HikariCP/getConnection ≈ 30 秒結(jié)論SQL 尚未真正執(zhí)行 主要慢在獲取或創(chuàng)建連接/order/slowSql?time2getConnection 很短 JDBC execute ≈ 2 秒 close 很短結(jié)論連接正常 主要慢在 SQL 或數(shù)據(jù)庫(kù)網(wǎng)絡(luò)調(diào)用八、第七階段Feign 創(chuàng)建 ExitSpan 并傳播上下文order-service調(diào)用accountApi.deduct(...);Feign 請(qǐng)求發(fā)送前ContextCarrier carrier new ContextCarrier(); AbstractSpan span ContextManager.createExitSpan( /account/deduct, carrier, 127.0.0.1:8082 );隨后將 Carrier 中的數(shù)據(jù)寫(xiě)入 HTTP Header。調(diào)用鏈order-service ├─ EntrySpanPOST:/order/create └─ ExitSpan/account/deduct │ │ Trace Header ▼ account-service └─ EntrySpanPUT:/account/deduct兩個(gè)服務(wù)擁有相同 Trace ID 不同 Segment ID 不同 Span ID不是共享同一個(gè) Span 對(duì)象。九、第八階段TraceSegment 異步上報(bào)最后一個(gè) Span 結(jié)束activeSpanStack 為空 → TraceSegment.finish() → 通知 TraceSegmentServiceClient業(yè)務(wù)線程只執(zhí)行carrier.produce(traceSegment);真正的處理由后臺(tái)線程完成DataCarrier → Agent 后臺(tái)消費(fèi)者 → TraceSegment.transform() → SegmentObject → gRPC → OAP 11800這種設(shè)計(jì)避免OAP 慢 → Tomcat 請(qǐng)求線程也被阻塞緩沖區(qū)滿了怎么辦默認(rèn)策略偏向緩沖區(qū)有空間 → 正常放入 緩沖區(qū)滿 → 丟棄部分 Segment → 不長(zhǎng)期阻塞業(yè)務(wù)線程SkyWalking 的取舍是業(yè)務(wù)穩(wěn)定性 遙測(cè)數(shù)據(jù)絕對(duì)完整性所以接口成功 ≠ 這條 Trace 一定成功上報(bào)十、OAP 接收并解析 SegmentOAP 接收路徑TraceSegmentReportServiceHandler → SegmentParserService → TraceAnalyzerTraceAnalyzer遍歷EntrySpan ExitSpan LocalSpan Segment并通知不同監(jiān)聽(tīng)器RPCAnalysisListener SegmentAnalysisListener VirtualServiceAnalysisListener ……監(jiān)聽(tīng)器再生成統(tǒng)一的 SourceService ServiceInstance Endpoint ServiceRelation EndpointRelation DatabaseAccess Segment隨后SourceReceiver → Dispatcher → OAL → Metrics → Storage十一、為什么一條 Trace 能產(chǎn)生儀表盤(pán)指標(biāo)入口 SpanGET:/order/slowSql Duration ≈ 2100 ms可以生成Serviceorder-service ServiceInstanceorder 實(shí)例 EndpointGET:/order/slowSqlOAL 再計(jì)算service_resp_time service_sla service_cpm service_percentile service_instance_resp_time endpoint_resp_time endpoint_sla endpoint_cpm endpoint_percentile所以Trace Duration是單次請(qǐng)求時(shí)間而endpoint_resp_time是一定時(shí)間窗口內(nèi)的聚合指標(biāo)。十二、拓?fù)鋱D是如何形成的拓?fù)洳⒉皇侵苯哟蜷_(kāi)一條 Trace 繪制。真實(shí)過(guò)程大量 EntrySpan 和 ExitSpan → 生成 ServiceRelation → 按時(shí)間窗口聚合 → UI 查詢關(guān)系指標(biāo) → 展示拓?fù)淅鏾rder-service → account-service → MySQL分別來(lái)自Feign ExitSpan / 下游 EntrySpan JDBC Database ExitSpanMySQL 沒(méi)有安裝 Java Agent但 JDBC Span 中存在peer database type latency SQL statement所以 OAP 可以創(chuàng)建Virtual Database Service并顯示order-service ↓ 127.0.0.1:13306十三、原始 Trace 與 Metrics 是兩條不同鏈路同一個(gè) Segment 會(huì)被不同監(jiān)聽(tīng)器處理RPCAnalysisListener → 生成服務(wù)、端點(diǎn)、關(guān)系和指標(biāo) SegmentAnalysisListener → 根據(jù)采樣策略決定是否保存原始 Trace因此可能出現(xiàn)服務(wù)儀表盤(pán)有數(shù)據(jù) 拓?fù)鋱D有關(guān)系 但 Trace 列表中找不到某次請(qǐng)求原因可能是Metrics 已參與計(jì)算 但原始 Segment 因采樣沒(méi)有保存這不是矛盾。十四、日志關(guān)聯(lián)鏈路業(yè)務(wù)代碼log.info(查詢訂單orderId{}, orderId);分成兩部分。1.%tid輸出 Trace IDLogback Pattern → %tid → Agent 增強(qiáng) PatternConverter → ContextManager.getGlobalTraceId() → 輸出到控制臺(tái)例如[TID:abc123] 查詢訂單orderId1它主要方便人肉排查。2.GRPCLogClientAppender上傳日志Appender 將日志轉(zhuǎn)換為L(zhǎng)ogData ├─ service ├─ serviceInstance ├─ endpoint ├─ timestamp ├─ body ├─ level ├─ logger ├─ thread └─ traceContext ├─ traceId ├─ segmentId └─ spanId然后DataCarrier → 后臺(tái)線程 → gRPC 11800 → OAP Log Receiver → Log Analyzer → Storage系統(tǒng)關(guān)聯(lián)日志與 Trace依靠的是結(jié)構(gòu)化traceId segmentId spanId不是簡(jiǎn)單搜索日志字符串中的 TID。控制臺(tái)有 TID但 UI 沒(méi)日志常見(jiàn)原因只配置了 %tid沒(méi)有配置 gRPC Appender Root Logger 未引用 SkyWalking Appender 服務(wù)沒(méi)有掛 Agent 11800 不通 Agent 日志隊(duì)列已滿 OAP 日志 Receiver 異常 UI 時(shí)間或服務(wù)篩選錯(cuò)誤十五、告警鏈路OAP 生成分鐘級(jí) Metrics 后Metrics → RunningRule.in() → 每個(gè) AlarmEntity 維護(hù)一個(gè) Window → AlarmCore 定時(shí)檢查 → MQE 表達(dá)式判斷 → AlarmMessage → WebhookCallback例如expression: sum(endpoint_resp_time 1000) 2 period: 10 silence-period: 10含義最近 10 個(gè)分鐘桶中 至少有 2 個(gè)分鐘桶 端點(diǎn)平均響應(yīng)時(shí)間超過(guò) 1000 ms所以不是一條請(qǐng)求超過(guò) 1000 ms → 立即告警而是分鐘級(jí)指標(biāo)進(jìn)入滑動(dòng)窗口 → 時(shí)間窗口滿足規(guī)則 → 告警為什么 WebHook 是 JSON 數(shù)組一次定時(shí)檢查可能同時(shí)產(chǎn)生端點(diǎn)告警 數(shù)據(jù)庫(kù)告警 服務(wù)實(shí)例告警OAP 統(tǒng)一保存到ListAlarmMessage然后gson.toJson(messages)所以請(qǐng)求體是[ { scope: ENDPOINT, name: GET:/order/slowSql }, { scope: DATABASE, name: 127.0.0.1:13306 } ]你的 Controller 應(yīng)使用RequestBody ListAlarmMessage messages十六、你的告警完整鏈路PowerShell 循環(huán)請(qǐng)求 → GET /order/slowSql?time2 → JDBC execute 約 2 秒 → Agent 上報(bào) Segment → OAP 生成分鐘級(jí) Metrics → RunningRule 窗口滿足條件 → 創(chuàng)建 ListAlarmMessage → POST alarm-service:8084 → AlarmController → 郵件服務(wù) → QQ SMTP → 郵件到達(dá)WebHook 或郵件發(fā)送失敗不會(huì)直接影響 order-service 請(qǐng)求因?yàn)楦婢l(fā)生在 OAP 的獨(dú)立鏈路中。但 WebHook 本身仍應(yīng)快速返回郵件發(fā)送最好異步化。十七、Trace Profiling 鏈路任務(wù)創(chuàng)建UI → OAP 保存 ProfileTaskAgent 定時(shí)查詢ProfileTaskChannelService → getProfileTaskCommands()收到任務(wù)后校驗(yàn)任務(wù) → 等待 Start Time → 啟動(dòng) ProfileTaskExecutionContext新的請(qǐng)求到達(dá)創(chuàng)建 TracingContext → firstSpanOPName 與任務(wù) Endpoint 匹配 → 創(chuàng)建 ThreadProfiler → 狀態(tài) PENDING請(qǐng)求運(yùn)行超過(guò)Min Duration Threshold后PENDING → PROFILINGProfiler 周期執(zhí)行targetThread.getStackTrace();生成taskId segmentId sequence dumpTime stack異步上傳 OAP。OAP 再將大量采樣棧合并為樹(shù)。三個(gè)核心指標(biāo)Dump Count該方法出現(xiàn)在多少次線程棧采樣中不是方法調(diào)用次數(shù)。Duration該節(jié)點(diǎn)在連續(xù)采樣區(qū)間中出現(xiàn)的近似總時(shí)間不是精確方法計(jì)時(shí)。Self Duration節(jié)點(diǎn) Duration - 直接子節(jié)點(diǎn) Duration 之和表示盡量排除子調(diào)用后當(dāng)前方法自身消耗的近似時(shí)間。判斷方法Duration 高Self Duration 低 → 主要慢在子調(diào)用 Duration 高Self Duration 高 → 當(dāng)前方法自身更可能是熱點(diǎn) Socket read 高 → 主要等待網(wǎng)絡(luò) JDBC Driver 高 → 主要等待數(shù)據(jù)庫(kù) Thread.sleep 高 → 線程主要處于休眠狀態(tài)十八、四條核心數(shù)據(jù)鏈學(xué)完 SkyWalking 后應(yīng)該把它拆成四條鏈理解。鏈路一Trace插件攔截 → Entry / Local / Exit Span → TracingContext → TraceSegment → DataCarrier → gRPC → OAP → Trace UI鏈路二Metrics 與拓?fù)銼pan → TraceAnalyzer → Source → OAL → Metrics → Storage → Dashboard / Topology鏈路三日志ILoggingEvent → %tid → GRPCLogClientAppender → LogData → gRPC → OAP Log Analyzer → Log UI鏈路四告警Metrics → RunningRule → Window → MQE Expression → AlarmMessage → WebHook → 郵件Profiling 則是第五條專項(xiàng)診斷鏈ProfileTask → Endpoint 匹配 → Thread Stack Sampling → Snapshot → OAP 合并分析十九、故障排查的標(biāo)準(zhǔn)順序1. UI 看不到服務(wù)先檢查服務(wù)是否掛載 -javaagent service_name 是否正確 Agent 是否啟動(dòng)成功 Agent 到 OAP 11800 是否連通 是否真正訪問(wèn)過(guò)接口 UI 時(shí)間范圍是否正確2. 服務(wù)有指標(biāo)但沒(méi)有 Trace檢查是否被采樣丟棄 Agent Segment 緩沖區(qū)是否滿 OAP Trace 存儲(chǔ)是否正常 Trace 時(shí)間范圍和服務(wù)篩選 請(qǐng)求是否真正經(jīng)過(guò)支持的插件3. Trace 斷鏈檢查調(diào)用方是否創(chuàng)建 ExitSpan 是否注入跨進(jìn)程 Header 下游是否掛載 Agent 下游是否讀取 Header 是否經(jīng)過(guò)不支持的客戶端或網(wǎng)關(guān) 異步線程是否傳播上下文4. Trace 顯示數(shù)據(jù)庫(kù)慢先區(qū)分HikariCP/getConnection 慢 還是 JDBC/execute 慢這是你當(dāng)前已經(jīng)掌握的高價(jià)值診斷能力。5. 控制臺(tái)有 TID但 UI 沒(méi)日志檢查GRPCLogClientAppender Root Logger Agent Activation 11800 OAP 日志接收器 時(shí)間與服務(wù)篩選6. 告警不觸發(fā)檢查告警 Metric 名稱是否正確 表達(dá)式是否正確 period 是否滿足 請(qǐng)求是否跨多個(gè)分鐘桶 規(guī)則是否限定了 include-names alarm-settings.yml 是否被 OAP 加載 Webhook URL 是否正確 alarm-service 是否監(jiān)聽(tīng) 80847. Profiling 沒(méi)數(shù)據(jù)檢查Agent Profiling 是否啟用 OAP receiver-profile 是否啟用 任務(wù) Endpoint 是否與真實(shí) Operation Name 一致 任務(wù)是否在有效時(shí)間內(nèi) 請(qǐng)求是否超過(guò) Min Duration Threshold Max Sampling Count 是否已達(dá)到 請(qǐng)求是否在任務(wù)創(chuàng)建后重新發(fā)起二十、整套源碼中的核心類領(lǐng)域核心類Agent 啟動(dòng)SkyWalkingAgent插件發(fā)現(xiàn)PluginFinder字節(jié)碼增強(qiáng)Transformer上下文入口ContextManager本地追蹤上下文TracingContext一段本地追蹤TraceSegmentHTTP 入口Tomcat Interceptor跨服務(wù)出口Feign/HTTP Client InterceptorJDBC 追蹤JDBC Statement WrapperHikariCPPooling InterceptorToolkitTrace Annotation InterceptorTrace 上報(bào)TraceSegmentServiceClientOAP Trace 接收TraceSegmentReportServiceHandlerOAP 解析TraceAnalyzer服務(wù)關(guān)系分析RPCAnalysisListener日志上傳LogReportServiceClient告警核心AlarmCore、RunningRuleProfiling 執(zhí)行ProfileTaskExecutionService線程采樣ThreadProfilerProfiling 分析ProfileAnalyzer二十一、一段完整的面試回答面試官問(wèn)請(qǐng)整體介紹 SkyWalking 的工作原理??梢曰卮餝kyWalking 主要由 Java Agent、OAP、存儲(chǔ)和 UI 組成。Java 應(yīng)用通過(guò)-javaagent在啟動(dòng)階段執(zhí)行 Agent 的premainAgent 加載插件并使用 Byte Buddy 與 Instrumentation 對(duì) Tomcat、Feign、JDBC、連接池等框架類進(jìn)行字節(jié)碼增強(qiáng)。請(qǐng)求進(jìn)入 Tomcat 時(shí)創(chuàng)建 EntrySpan業(yè)務(wù)內(nèi)部通過(guò) Toolkit 可以創(chuàng)建 LocalSpan對(duì)外調(diào)用 Feign 或數(shù)據(jù)庫(kù)時(shí)創(chuàng)建 ExitSpan。ContextManager使用 ThreadLocal 為每個(gè)請(qǐng)求線程維護(hù)獨(dú)立的TracingContext并通過(guò)活動(dòng) Span 棧確定父子關(guān)系。跨服務(wù)時(shí)調(diào)用方將 Trace 上下文注入 HTTP Header下游從 Header 中恢復(fù)上下文從而生成屬于同一 Trace 的不同 Segment。當(dāng)所有 Span 結(jié)束后Agent 將 TraceSegment 放入內(nèi)存緩沖區(qū)由后臺(tái)線程轉(zhuǎn)換成 Protobuf 對(duì)象并通過(guò) gRPC 上報(bào) OAP避免網(wǎng)絡(luò)發(fā)送阻塞業(yè)務(wù)線程。OAP 對(duì) Segment 中的 Entry、Exit 和 Local Span 進(jìn)行分析生成 Service、Endpoint、ServiceRelation、DatabaseAccess 等 Source再通過(guò) OAL 聚合成響應(yīng)時(shí)間、成功率、CPM、百分位等 Metrics用于儀表盤(pán)、拓?fù)浜透婢H罩究赏ㄟ^(guò) Toolkit 獲取 Trace ID并以結(jié)構(gòu)化 LogData 攜帶 Trace ID、Segment ID 和 Span ID 上傳實(shí)現(xiàn)日志與鏈路關(guān)聯(lián)。告警模塊對(duì)分鐘級(jí) Metrics 維護(hù)滑動(dòng)窗口規(guī)則命中后通過(guò) WebHook 通知外部系統(tǒng)。對(duì)于 Span 內(nèi)部難以定位的慢方法還可以通過(guò) Trace Profiling 周期采樣目標(biāo)請(qǐng)求線程棧由 OAP 合并計(jì)算 Duration、Self Duration 和 Dump Count。二十二、你目前對(duì) SkyWalking 的掌握層次現(xiàn)在已經(jīng)不只是會(huì)啟動(dòng) OAP 打開(kāi) UI 查看 Trace而是已經(jīng)貫通了-javaagent 啟動(dòng) 插件匹配 字節(jié)碼增強(qiáng) Entry / Local / Exit Span ThreadLocal 上下文 Span 棧 跨服務(wù)傳播 數(shù)據(jù)庫(kù)分層診斷 Segment 異步上報(bào) OAP Source 與 Metrics 服務(wù)拓?fù)?日志關(guān)聯(lián) 告警時(shí)間窗口 Trace Profiling按后端面試標(biāo)準(zhǔn)可以歸納為三個(gè)層次層次當(dāng)前狀態(tài)會(huì)部署和使用已掌握會(huì)根據(jù) Trace 定位問(wèn)題已掌握能解釋 Agent 與 OAP 核心原理已形成完整主線能獨(dú)立修改 Agent/OAP 源碼尚需專項(xiàng)源碼工程訓(xùn)練二十三、最終記憶圖-javaagent ↓ premain ↓ 配置加載 插件掃描 ↓ Byte Buddy Instrumentation ↓ 框架類被增強(qiáng) ↓ HTTP 請(qǐng)求進(jìn)入 ↓ EntrySpan ↓ LocalSpan / ExitSpan ↓ ContextManager ThreadLocal Span Stack ↓ 跨服務(wù) ContextCarrier ↓ TraceSegment ↓ Agent 內(nèi)存隊(duì)列 ↓ gRPC 11800 ↓ OAP TraceAnalyzer ↓ Source ↓ OAL Metrics ├─ Dashboard ├─ Topology ├─ Alarm └─ Storage 同時(shí) 業(yè)務(wù)日志 → LogData → TraceContext → OAP 日志關(guān)聯(lián) Profiling Task → Thread.getStackTrace() → Snapshot → OAP 合并分析下一階段建議不再繼續(xù)平鋪源碼而是進(jìn)入SkyWalking 面試拷打與故障實(shí)戰(zhàn)復(fù)盤(pán)從 Agent 不上報(bào)、鏈路斷裂、連接池耗盡、慢 SQL、日志丟失、告警不觸發(fā)等場(chǎng)景要求你先判斷問(wèn)題層級(jí)再給出排查順序。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美色碰| 五月色情婷婷开心五月色情| 国产精品国产成人国产三级| 天天爱天天秀天天做| 五月丁香婷婷无码中文| 啊V视频在线观看| 99热这里只有精品8| 夜夜爽天操| 日本 欧美在线| 9色91视频| 夜夜资源站| 一级A片天天操夜夜操| 婷婷综合网性| 99热99| 99亚洲精品| 婷婷五月天福利| 五月婷婷天天色| 色色五月激情| 色情五月| 亚洲无码九九九| 激情又色又爽又黄的A片| 99免费在线视频| 五月婷婷久久综合| 天天草天天爱| 色综合xx| 极品 少妇 内射| 日韩啪啪视频| 九九99在线免费在线观看视频| 激情超碰网| 狠狠五月天| 五月丁香大相交| 丁香六月婷婷综合欧美| 成人精品亚洲性爱| 婷婷成年人免费视频| 6080av| 色五月综合| 日本乱论99| 操逼电影免费看| 思思热在线观看| 97操在线视频| 精品久久人妻| 开心五月色婷婷综合开心网| 成人无码精品1区2区3区免费看| 狠狠干无码| 99热在线中文字幕| 久久久人妻| 久热这里只有精品99re| 婷婷丁香久久| 九九精品大香蕉| 国产露脸150部国语对白| 99热这里只有精彩| 日产精品久久久久久久蜜臀| 色爱爱综合网| 99热精品中文字幕| 五月丁香综合网| 97色色在线视频| 伊人五月天婷婷| 天天色天天噜| www色五月| 亚洲色情网站| 99在线精品观看99| 婷婷色导航| 99久在线精品99re8热| 丁香五月成人| www久久久久久久| 亚洲综合网在线| 日本激情综合| 午夜九九九九九九九九九九九九九| 五月亭大香蕉| 99综合视频一体| 天天干,天天舔| 色色99色色| 五月天婷婷久色| 99热这里精| 久久 这里只有精品1| 五月成人网天天| 天天狠狠夜夜狠狠2023| 亚洲操人| 亚洲色婷婷五月天| 男人天堂亚洲综合| 久久Xx| 高清无码入口| 在线看av| 五月婷婷这里都是精品| 丁香婷婷九月| www,99视频| 九九精品婷| AV在线免费网站| 五月天婷婷午夜丁香| 丁香激情合作五月| 五月丁香人妻| AV操一操| 色五月丁香激情视频| 丁香五月婷在线观看| 99热思思| 狠狠色色色| 丁香激情四射| 伊人午夜综合色啪| 五月天伊人| 色婷婷亚洲综合网站| 综合99视频| 五月天激情黄色小说在线观看| 天天做综合网色综合| 五月激情综合网| www.99视频| 久久爱综合| 99操视频| 五月丁香啪啪啪综合网| 九九热经典视频在线观看| 亚洲另类婷婷综合| 香蕉乱插| 亚洲99精品欧美一区| 啪啪啪大香蕉| 99热国产精品| 久久婷婷人人| 综合99在线| 激情五月开心五月在线视频| 色婷婷久久综合| 热久综合| 涩涩五| 熟女网站久久| 99热网址| 久操97| 潘金莲AAAAAAAAAA| 五月欧美色色五月| 亚洲乱码日产精品BD| 久久婷婷色情7777网站| 99爱视频| 色婷婷777狠狠| 操一操| 色婷婷av在线观看| 婷婷激情五月天网站| 伊人www22综合色| 一区二区无码视频| 丁香六月婷婷综合在线| 99色嘟嘟精品网站| 99热九九热| 熟女少妇内射日韩亚洲| 精品综合久久久久久五月天| 极品人妻VIDEOSSS人妻| 久久婷婷色丁香| 另类视频五月天| 十区AV| 天天做天天爱天天综合网| AA片在线观看视频在线播放| 一二三区视频韩国| 97久久综合网| 丁香五月成人网| 天堂呦 呦百度搜索-百度搜索| 久婷婷五月激情| 婷婷久久久| 美欧日韩国产成人在战| 99热在线观看免费精品| 婷婷五月天成人动漫 | 天天射天天干天插色综合| 开心五月综合| 在线观看亚洲视频影院| 丁香五月AV| 日本色色网| 久久香蕉网| 国产免费AV网站| 日本熟妇精品99| 久久婷婷五月天激情| 99亚洲精品视频| 在线免费观看激情视频| 51XX午夜影福利| 伊人干综合| 夜夜操天天干| www夜夜操wwwcon| 国产干逼片| 亚洲色视频| 激情综合网激情五月天| 日日夜夜天天| 日本婷婷| 亚州激情网| 亚洲精品无AMM毛片| 青草久久五月婷伊人| 免费观看全黄做爰的视频| 五月涩涩网| 中文字幕成人日韩| 综合网激情| 成人五月天在线视频在线观看 | 久久久潮喷-久久久九九-成人AV| 久月婷婷| 亚洲天堂aaa| 91.com男女操| 六月丁花香啪啪激情欧美| 女高怪谈在线观看| 91操色| 97操碰日本女人| 26uuu成人网| 亚洲人妻av| 成人国产欧美大片一区| 九月婷婷久久| 一本色道久久综合狠狠躁小说| 97九色视频| 丁香六月婷婷综合| 狠狠色综合久久| 最新日韩久热免费视频看看| www.色婷婷.com| 能看的av片| 日韩aⅴ视频| 98永久精品| 天天插天天插天天操| 九九视频在线观看视频6 | 狠狠五月激情婷婷直播片| www,99色| 婷婷五月天免费99| 日本色色色| 深爱婷婷色| 97干在线看| 亚洲视频99| 青青福利网| 99久久.www| 99色性爰网络| 人人爱摸视频| 蜜桃五月天色| WWW·天天操·视频?| 日本综合99| 色婷婷导航| 五月激情丁香| 玖玖婷婷五月| 色天堂97| 九色视频入口91| 色色丁香婷婷综合| 五月花综合视频| 激情丁香婷婷六月天| 亚洲视频另类| 日本三级成人秘书精品片| 9999久久久久| 久青操| 天天透天天摸天天舔| 91九色|疯狂|高潮|对白|| 丰滿爆乳一区二区三区| 江苏少妇性BBB搡BBB爽爽爽| h在线看免费版在线看| 91视频一起草| 五月婷婷69| 丁香六月 人妻| 99热播放| 91色久| av超碰在线| 色九区| 欧美国产一区二区三区| 91丁香| 香蕉影院色| 激情五月综合网| 婷婷内射视频在线| 91人碰| 欧美日韩AAA| 就爱啪啪婷婷| 五月亚洲激情| 丁香六月 人妻| 婷婷五月天激情综合| 色久一| 丁香五月婷婷图片综合| 日本美女97在线视频| 色婷婷成人做爰A片免费看网站| 五月丁香精品| 五月天婷婷色色| 婷婷天堂综合| 可以看的AV| 五月天婷婷网站888| 婷婷丁香成人五月天| 欧美综合丁香网| 26uuu四色| 狠狠擼综合| 99热 在线观看| sS丁香五月婷婷| 激情久久四色| 欧美成人网婷婷综合在线| 91操色| 丁香香五月激情免费视频| 五月婷婷激情刺激| 九九草热在线观看| 五月婷精品| 丁香五月色欲| 99热碰碰| 国产激情综合五月久久| 91|疯狂丨高潮丨对白| 91九色在线| 久热婷婷| 天天激情站| 婷婷5月久久综合网站| 婷色天堂| 丁香九月激情久久| 少妇伦子伦精品无吗| 色色a| 色色日本欧美| 色婷婷丁香五月| www超碰| 激情99| 97婷婷五月丁香| 91啪啪啪啪| 97欧美在线| 999激情视频| 婷婷丁香六月| 亭亭五月天黑人2014| 婷婷五月天狠狠| 色欲色香伊人| 成人看片网站| 日韩小视频在线99| www.久久| 亚洲99热| 亚洲精品字幕在线观看| 色婷婷精品视频在线播放| 非洲一级AV| a色色色色色| 欧美色小说婷婷| 九九久久精品| 日撸夜撸日操| 99九九久久| 色色综合网www| 97操| 婷婷 亚洲图片 丁香| 天天干天干| 26UUU欧美| 色综合久久久无码中文字幕999| 色和综合网| 亚洲另类电影| 丁香五月天色婷婷| 欧美性色A片免费免费观看的| 色婷综合| 丁香五月天激情AV| 天天干 夜夜爽| 成人国产欧美大片一区| se99高清无码| 婷婷激情人妻| 婷婷激情六月中文| 91免费在线视频6| AV性爱在线| 久久久五月天| 深爱五月激情综合| 97人人操在线| 综合激情专区| 五月天啪啪| 五月丁香色综合| 玖玖色资源| 天天综合网亚洲综合网| 九九99久久| 97热久久| 婷婷五月天综合久久| 欧美日韩91| 91人人操| 色99欧洲色19| 3DAV亚洲香蕉久久 一区二区| 伊人网欧美在线男人天堂五月丁香| 深爱五月最新网址| 五月色情| 91婷婷五月天综合视频| 五月天婷婷久久| 久久综合九九| 色婷婷综合网站| 婷婷五月激情五月丁香五月| 国产精品热搜丁香五月婷婷| 嫩草免费视频| 99热骚货| 丁香五月伊人| 成人丁香婷婷五月天| 欧美在线视频99| 中文激情网| 超碰爱爱爱| 色444综合网| 中文字幕性爱丰满| 99小视频在线观看| 国产精品爽爽久久久久久| 97色射| 婷婷成人丁香色情基地30| 久久久久人妻网址| 翔田千里aV中文字幕| 九九黄色网| 久久er视频6| 天天综合网91| 九九色中文| 91性高潮久久久久久久久| 五月天丁香久久| www.99久| 77799热| 99热久久这里只有精品| 天天开心AV色综合婷婷五月天| 亚洲精品久久久无码 | 九九综合久久| 丁香五月成人| 亚洲五月婷天天操| 国产毛片操B| 六月丁香久久| 亚洲小电影在线观看黄999| 棕合影院色色| 六月丁香基地| 日韩不卡123| 五月天中文网| 激情五月综合第一页| 久99综合婷婷| 安息电影在线观看完整版| 色婷婷成人做爰A片免费看网站| 人人人人人人人人人草| 九月综合| 国产真人做爰视频免费| 99热这里只有精品22| 丁香五月情| 天天婷婷综合亚洲亚洲| 日本va欧美va欧美| 丁香蜜臀黄色婷婷五月天| 97操碰| 五月人人丁香婷婷五月人人丁香| 曰韩五月丁香色婷婷无码| 五月婷婷激情四月| 色欲婷婷五月天| 99久久这里只有精品| 99热色无码| 色九九九综合| 夜夜爽天天爽| 99免费在线| 色播婷婷五月天| 欧美在线| 天天色综网| 国产精品色一哟哟| 热九九精品| 日本熟妇乱妇熟色A片蜜桃| 五月婷婷激情久久| 亚洲无码另类| 伊人丁香五月天丁香在线婷| 久久亚洲婷婷| 婷婷丁香五月在线播放| 亚州日本欧州韩美高青高潮一| 久久全色| 99热国品| 日本三级中国三级99人妇网站| 能看的av片| 免费播放片大片| 亚洲三A| 激情性爱五月| 99色亚洲| 丁香欧美| 色色色在线播放| 一级内射毛片| 婷婷中文字幕欧美| 日本九九九九| 91人人操人人| 五月婷啪啪| 99热精品一| 婷婷五月蜜桃成人桃色丁香| 97碰| 丁香五月婷婷99| 99久久人妻精品无码二区| 99熟女视频| 少妇久久诱惑视频| 色丁香在线视频| 日韩啪啪网| 丁香花婷婷五月天| 久草九一| 色五月婷婷7777| 婷五月天在线草| 大天天伊人| 99热在线极品极品| www.91五月| 婷婷99狠狠| 狠狠色狠狠操| 婷婷五月天影院| 天天爽夜夜爽夜爽精品| 日韩六十路91性交电影| 婷婷成人在线| 亚洲色欲欧美一区二区三区| 五月天色婷婷图片| 天天射射夜| 26uuu.| 婷婷偷拍网| 91久久五月天| 好好干Av| ...婷婷国产成人亚洲日韩| 色五月婷婷久久| 综合99视频| 99小视频在线观看| 影音先锋一区二区三区| 久草婷婷| 久久99热这里只有精品23| 啪啪色激情五月天| 99这里只有免费的精品| 这里只有精品视频看看| 91精品久久久久久综合五月天| 五月丁香六月婷婷婷婷| 婷婷丁香五月亚洲综合网在线视频观看| 欧美婷婷五月激情| 激情VA视频| 色J香五月天| 色婷婷狠狠18| 婷婷六月天天| 爱爱色五月天| 国产片色| 九九热在线观看视频| 丁香五月婷婷在线观看| 思思热在线视频精品| 五月天伊人| 99热6精品| 超碰免费大香蕉| 久婷婷| 99热66| 五月丁香六月婷| 精品亚洲国产成AV人片传媒| 日韩一级网站| 中文字幕永久在线| 伊人五月久久| 久久婷婷视频| 夜夜干夜夜操| 色播色丁香五月| 欧美精品A片一区在线观看| 色婷婷AV在线| 色五月婷婷狠狠撸| 久久机热这里只有精品| 五月婷婷成人| 九色在线五月婷婷网址| 啪啪婷婷五月天激情| 五月丁香久久精品在线观看| 天天操天天日天天操| 六月丁香花婷婷| 麻豆123区| 精品乱码久久久久| 五月丁香六月| 五月丁香激情啪啪网| 天天插天天狠| 天天狠狠干| 日韩欧美一级大黄网站| 97人人妻人人艹| 婷婷六月天天| 狠狠色噜噜狠狠| 任你搞网站| 日产精品久久久久久久蜜臀| 操逼六区| 婷婷欧美激情| 久久精品国产AV一区二区三区 | 国产老熟妇亲子乱对白| 99视频这里只有久久精品 | 欧美内射AA| 九九婷婷五月天| 99ri久久| 色婷婷国产精品综合在线观看| 激情小说五月天| 另类视屏| 五月天婷婷丁香社区| 激情五月天在线视频| 国产综合丁香五月天| 欧美va精品va老师va| 日本色狠狠| 最近中文字幕大全免费版在线| 午夜亚洲AV日韩无码| 欧美人与性动交CCOO| 五月婷婷影| 五月丁香婷婷开心| 亚洲国产无线乱码在线观看| 日韩AV片| 丁香六月婷婷综合| 激情五月天.色网| 亚洲精品色色| 五月天色图| 热99免费在线| 婷婷婷婷婷婷婷婷| 99视频日韩| 婷婷六月爽| 中文字幕乱轮| 色九九一二| 亚洲男人的天堂婷婷色五月| 久久久久久久人妻| 激情五月,色五月| 大香蕉伊人久久| 97色婷婷在线观看| 日日操夜夜撸| 激情婷婷九月| 五月丁香激情综合网| 久久天堂色| 成人丁香婷婷五月天| 国产做爰视频免费播放| 久久99热免费| 丁香五月色情| anquye伊人| 99热亚洲| 婷婷五月丁香在线观看| 婷婷五月花| 五月的婷婷六月丁香| 亚洲综合五月天婷婷丁香| 玖玖无码中文| 婷婷操逼| 伊人天天色| 欧美大肥婆大肥BBBBB| 婷婷五月综合婷婷| 第九色区av天堂| 电影爱拉战争免费观看| 综合久久狠狠| 精品久久久久久久人妻| 伊人影院久久网| 婷婷五月情天| 亚洲超碰在线| 99免费视频| 先锋男人99资源| 日韩色色色色| 激情都市五月天| 九月丁香婷婷网| 五月天另类小说| 色偷偷人人| 亚洲六月婷婷| 久久亚洲网| 精品一二三区久久AAA片| 99re这里只有精品首页| 婷婷伊人视婷婷婷| 日本色狠狠| 亚洲综合99| 丁香婷婷色五月激情综合| 激情五月黄色小说| 91制片厂久久久国产电影| 激情亚洲婷婷| www.激情五月天.com| 97日韩无套内| 14色综合婷婷| 深爱激情五月天婷婷网| 99碰碰中文| 开心婷婷五月| www激情五月天| 91久久久久久| 欧美 色婷婷| 久草a片| 夜夜操夜夜爽| 色色网站毛片| 色色色色色色网站| 欧美婷婷色五月| 国产五月天婷婷| 激情99| 九九热99免费视频| 九九热视频免费观看| 亭亭玉月丁香| 国产AV一区二区三区日韩| 亚洲综合草草| 97韩国久久电影院| 色丁香五月婷婷| 亚洲六月色| 高清无码视频网址| 日本色五月| 99久久这里只有精品免费官网| 日韩有码一区| 9色91视频| 婷婷色情网| 色欲五月婷婷| 99精品视频免费在线播放| 大香蕉九九操| 五月婷婷很很色| 九九性视频| 第四色婷婷丁香五月| 伊人五月久久| 激情婷婷五月久久| 区欧美日韩成人| 九九婷婷综合| 丁香 亚洲 久久| 五月婷婷无码专区| 这里只有精品视频视频在线观看| 99热这里都是精品| 色色九区| 国内精品免费一区二区2009| 久久视频在线视频| 中文成人在线| 欧美精品18| 丁香伊人网| 97 A I色色| 狠狠插日日干撸| 亚洲欧洲自拍图片专区五月天| 亚洲六月婷婷| 狠狠色噜噜狠狠| 婷婷激情五月天小说| 亚洲AV在线免费看| 国产精产国品一二三在观看| 99综合免费视频| www九九热| 天堂综合久| 婷婷五月丁香综合激情| 久 久9 9 热 视 频| 久久综合激情婷婷激情| 久久久五月婷婷| 美女要搞搞天天搞搞搞网站| 天天免费成年人视频| 99热精品少| 97久人人| 色色色综合色| 91色五月| 人妻操逼视频。| 久久中文人妻系列| 天天日天天狠狠操| 婷婷AV丁香| 伊人婷婷五月| 丁香五月亚洲天堂| 午夜激情五月天| 五月婷婷啪啪啪啪| 欧美久久网| 在线观看av网站| 欧美色九| 99精色| 色婷婷亚洲婷婷| 精品无码久久久久久久久| 成人午夜天| 五月丁香激情综合| 国产高清av黄色看片| 一级片操逼视频| ztEJj| 91九色欧美| 五月丁香91| 久久中文人妻系列| 婷婷五月AA五月在线| 99热只有精| 26uuu亚洲| 日本天堂爱爱| 九九在线精品| 亚洲欧洲一二| 天天操B| 欧美日韩AAAAA| 六月丁香婷婷五月| 丁香激情网| 婷婷五月成人| 久久亭亭电影| 久思思热视频在线观看| www好屌操| 色五月婷婷亚洲| 五月天成人综合| 97热91| 91热网址| 天天上天天爽| 久久婷网| 欧美成人猛片AAAAAAA| 成人短视频免费| 九九热99视频在线| 色插综合网| 成功精品影院| 六月婷婷色综合| 996热re视频在线观看视频| 成人一级片| 狠狠干五月丁香| 九九色图| 中文婷婷狠狠| 激情五月深爱五月观看| 国产精品成人av在线观看春天| 99欧美| 曰韩五月丁香色婷婷无码| 久久婷婷丁香| 六月五月丁香五月欧美| 亚洲精品视频电影| 亚洲精品白浆高清久久久久久| 97精品综合久久内射| 色婷婷婷综合五月天| 久久怕怕视频| 午夜不卡久久精品无码免费 | 激情人妻综合| 五月天影院| 久久久久9| 射久久丁香五月| 5月丁香六月婷婷| 99自拍视频| 天堂草在线看www| 狠狠操综合| 五月天久久婷婷| www综合久久| 久久日韩婷婷五月| 青草久久五月婷伊人| 丁香五月影院| 精品综合爱| 五月丁香黄色视频| 伊人网欧美在线男人天堂五月丁香 | 九九爱精品网站| 福利视频在线播放| 色色A| 五月婷婷色影院| 五月天开心激情综合网| 亚洲视频图片婷婷五月| 久久在线人妻| 日韩五月天婷婷| 天天爽天天日人人爱| 超碰人人射| 97久人人| 99精品久久久| 日韩在线观看亚洲| 激情综合网色五月| av在线播放网站| 成人中文网| 黄网在线播放| 日本丁香五月| 开心五月激情网| 亚洲av骚货| 婷婷激情九月| 色五月天婷婷| 国产午夜一区二区三区| 中文无码婷婷| 97久久人人| 99久在线精品99re8热| 色五月成人| 九九热视频精品2| wwwss在线观看| 综合色色婷婷| 久99久在线| 婷婷丁香五月天综合AV| 午夜丁香丁香婷婷| 色婷婷丁香网| 黄涩毛片| 六月丁香好婷婷| 五月丁香在线婷婷美女| www,av好吊操| 天天肏高清在线| 色欲久久久久久综合网综合网| 婷婷激情综合| 亚洲天堂热| 五月丁香香蕉| 熟妇人妻中文字幕无码老熟妇| 青青草婷婷五月天| 殴美97色| 中文字幕激情综合| 大香蕉手机视频| 爱之国产色情综合| 久久伊人日日夜夜| 久久婷婷五月| 99热日韩| a网站免费观看| 北条麻妃伊人 | 91超碰人人操| 五月婷婷视频| 情色五月天 网站| 激情五月丁香色色去久久| 色婷婷丁香九月| AV在线免费播放| 五月丁香婷婷久久| 夜夜撸日日骑| 丁香五月激情综合| 色色丁香| 婷婷字幕在线| 99热线观看9| 爱爱色五月天| dingxiangtingtingliuyue| 99热99色| 婷婷五月天久久| 欧洲电影在线观看免费版英语版| 亚洲精品99| 五月丁香综合网| 91无码一区人妻A片蜜| 色五月色情| 无码色色色色色| 六月丁香婷婷色69| 免费亚洲婷婷五月| 92久久精品一区二区| 极品五月天| 中文字幕黄色片| 狠狠插狠狠| 97婷婷狠狠| 国产乱妇乱子在线播视频播放网站| www.久9| se99高清无码| 99热这里只有精品最新网址| 婷婷丁香18| 婷婷黄色网| 激情四射五月天| 激情开心五月天婷婷基地丁香社区| 91九色无码日韩| 曰韩少妇内射免费播放| 欧美婷婷色| 九九AV| 亚洲天天综合| 伊人超碰| 丁香六月天婷婷| 天天日天天舔天天摸| 天天爱天天做天天爽| 婷婷啪啪| 色综合久久88色综合天天| 9操在线| 五月丁香狠狠| 五月丁香啪| 性爱五月婷婷| 色婷婷六月激情| 影音先锋91| 中文AV网站| 看黄的网站18禁| 这里只有精彩视频| 亚洲婷婷性爱| 色色网站免费在线视频| 狠狠干,狠狠操| AV在线免费观看不卡| 久久综合这里只有精品1| 夜夜撸夜夜骑| 婷婷情色五月| 五月丁香六月欧美综合| 99精品久久久久| 97丁香视频| 九九九午夜影院成人| 日韩成人网址| 超碰在线国产9| 69色色视频| 欧亚成人A片一区二区| 97操碰| 亚洲综合视频网| 午夜激情久久| 无码色色| 99免费超碰在线| 9999热精品在线免费播放| 婷婷五月天奸女| 伊人久久大香线蕉综合网站| 婷婷色狠狠| 国产99久久久国产精品免费看| 色五月激情视频在线综合| 亚洲人妻Av| 综合www色| 五月天精品综合| 九九色网专区| 狠狠色无码| 欧洲色区| 国产五月天激情小说| 亚洲黄色影视| 欧洲不卡视频| 日本99在线视频| 色综合香蕉| 激情五月天色播| 大胆伊人久久| 激情五月天伊人影院| 色婷婷啪啪综合网| 99久久免费精品| 999热这里只有精品| 激情综合五月婷| 另类视频一区| 99久久久国产大片区| 九九热99热| 超碰99在线| 五月天啪啪啪| 五月婷婷激情综合在线| 99热精品无码| 狠狠色性| 91紱請| 开心五月深爱五月丁香五月激情五月| 91打屁股免费看| 思思99re这里只有| 开心五月婷婷伊人| 丁香激情五月少妇| HD久久精品视频| 丁香婷婷性久久| 操逼毛片国语对白| 99精品视频免费观看| se99高清无码| 色婷婷狠狠| 五月天激情网页| 亚洲天堂制| 色婷婷九月| 影音先锋综合网| 中文久久婷婷| 热99这里只是精品| 极品少妇XXXX精品少妇偷拍| 2025天天爽天天摸| 97超碰在线观看免费| 天天综合色| 操久久精| 婷婷五月色| 激情综合网婷婷久久| aaaa久久| 五月婷婷激情| 玖玖色资源| 久久久久久久人妻| 中文字幕簧片| 亚洲激情五月| 97操在线视频| 天天免费成年人视频| 色婷婷AV在线观看| 丁香五月天婷婷中文字幕| 东京热免费视频| 国产乱妇无乱码大黄AA片| 狠狠狠狠操| 久操福利| WWW.国产| 五月丁香啪啪网| 五月6香色婷婷视频| 日本精品人妻无码77777| 人人视频人人干人人做| 久久9精品| 丁香激情综合| 婷婷五月色色| 激情丁香五月婷| 色五月婷婷天堂| 久热9| 丁香五月在线看| 婷婷丁香色情| 欧美性色A片免费免费观看的| 99热成人精品网站| 亚洲日本激情| 伊人色五月| 成人在线日韩| www.com五月天| 丁香五月在线伊人| 色婷婷女优有码五月亭| 欧美在线| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 日韩一级片| 天天操夜夜玩!| 久久网日本| 久久se 综合网 | 久久久久98| 成人精品视频99在线观看免费| 丁香五月婷婷香| WWW.激情| 插逼综合网| 99热网精品| 色五月婷婷av| 色五月婷婷丁香五月| 思思热这里只有精品视频666| 一区=区操屄高清大全av| 99精品综合| 五月天亭亭俺也| 桔色成人官方网站| 久久精品63| 久久六月综合| 蜜桃人妻无码AV天堂三区| 天天操天天日天天操| 色综合99| 亚洲午夜电影| 99日热在线视频| 国产精品涩涩涩视频网站| 五月丁香六月婷婷成人电影| 九九视频精品视频精品| 午夜丁香婷婷| 大香av| 1024AV视频| 91久久久久久久| 久久丁香五月婷婷| 丁香五月综合色婷婷| 91人操| 91日综合欧美| 亚洲宗合激情| 久久婷婷六月综合| 色婷婷av在线观看| 狠狠穞A片一區二區三區| 久久久婷婷| www.久久久久久久| 碰超在线九色| Caoub青青超碰 | 91男同视频| 综合色99| www.色婷婷| 91九色精品熟女内射| 五月丁香啪综合| 色婷婷丁香五月天在线观看| 久久丁香久久| 婷婷五月丁香成人| eeuus五月婷| 色六月天天激情综合网| 91偷拍视频| AAA久久久| 麻豆雪千夏| 噜噜操操| 婷婷婷久久久| 9人人操人人看| 婷婷久久影院| 婷婷五月娱乐在线| 婷婷五月丁香综合桃花色网| 日本三级99人妇网站| 九九99精品免费播放| av国产精品| 超碰日韩人妻在线| 四川女人毛多水多A片| 五月天激情色色| 国产美女无遮挡裸体毛片A片| 无码人妻激情| www.99热| 色五月综合在线| 五月天久久久| 亚洲成人免费在线| 中字幕视频在线永久在线观看免费| 激情综合五月天| 久热99| 白人荫道BBWBBB大荫道| 99热婷婷| 涩五月婷婷| 久久er99热精品一区二区| 丰满少妇猛烈A片免费看观看 | 五月天丁香婷婷久久九| 激情网 久久| 色九九九综合| 久久久久久18| 欧美色色色色色色色色色色| 狠狠第四色| 性色欲情 网站| 婷婷久久久久久久| 六月丁香五月激情婷婷| 播五月丁香六月| 婷婷五月丁香五月| 五月婷婷人人人操| 超碰com| 色婷婷亚洲精品天天综| www.超碰在线| 精品一二三区久久AAA片| 欧美性生交A片免费看| Av中文在线| 大香蕉人人人| 色婷婷成人| 亚洲激情99| 九九热视频精品| 天天干天天爽| 色婷婷香蕉| 色狠狠色综合久久久绯色aⅴ影视| 色97啪啪| 五月婷婷与六月丁香图片激情| mmm1717.6dbm人人爱人人操| 99re这里只有精品首页| 亚洲一区二区无遮挡A片| 婷婷色播婷婷| 激情五月婷婷| 九九九九九九热| 久久久久久久久久久-久五月天婷婷| 色综合色婷色基地| 五月婷婷综合激情网| 五月丁香久久久| 国产激情婷婷| 久9视频| www,99热在线观看| 另类专区在线| 婷婷激情五月综合基地| 久久99精品久久久久久三级| 99热97| WWW色色色COM| 99在线观看视频| 99热这里有精品2| 激情五月天天狠狠久久| 欧美性生交XXXXX无码小说| 嫩草视频。| 五月婷丁香花| 精品,99| 国产在这里只有精品| 性爱激情五月| 大香蕉九九| 战争与艾拉电影免费观看| 久久ww| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 色婷婷五月天久久| 免费观看的av| 欧美毛卡| 婷婷一本和五月丁香| 涩涩五月天| 99丁香婷婷综合网| 99re热99| 天天天天爽爽天干| 狠狠狠狠狠狠狠狠| 丁香六月av| 日韩99色| 殴美日比视频| 91九色PORNY大屁股| 久久精品爱爱| 婷婷五月天国产在线播放| 国产又爽又猛又粗的视频A片| 色综合偷拍| 99热精品6| 日日干天天爽| 亚洲超级碰| 国产一区男女| 中文字幕在线免费观看视频| 亚洲视频无| 欧美色欲色欲天天天www| 九九色综合| 九九人人自拍| 激情五月天色婷婷综合| 色色五月婷| 欧美日韩成人在线观看| www,99热| 国产一区二区三区影院| 九九热视频99| 狠狠干无码| 九九色精品| 爆乳熟妇一区二区三区爆乳| 婷婷五月情天| 5月丁香啪啪啪| 五月天激情丁香| 丁香五月开心亚洲| 色小说婷婷五月天天天| 丁香五月首页| 久久综合影院| 日日爱激情| 在线观看视频1区| 色播播之激情五月婷婷| 色综合色色| 婷婷九月亚洲| 婷婷久久精品| 激情五月婷色| 久 久9 9 热 视 频| 99视频| 亚洲色情激情丁香五月| 婷香五月激情视频| 激情AV| 亚洲精品午夜国产va久久成人| 久久久国产精品黄毛片| 婷婷永久在线| 97人人干| 青青操绿aaa一区日v| wwwss在线观看| 成人国产综合| 99色五月| 碰97久久| 亚洲99在线| 成人丁香色| 丁香五月在线看| 色九月丁香婷婷蜜桃在线观看| 人妻精品久久久久久| 99热在线观看| 九九亚洲小视频| 噼里啪啦完整版中文在线观看| 婷婷五月天视频在线观看| 五月丁香美女| 久久婷婷伊人| 丁香五月亚洲激情婷婷射| 久久99热这里只有精品| 中文无码婷婷| 九热视频| 日本综合久| 欧美精品99久久久| 日日夜夜狠狠婷婷色| www.婷婷| VA婷婷| 五月丁香成人网| 激情五月激情综合网一级丸片| 久久思思热| 五月丁香成人| 国产精品久久久久久喷浆| www.色五月天.com| 碰碰碰97国产| 五月婷婷香| 婷婷六月丁香五月图区| 99免费热视频| 91九色欧美| 国产精品久久..4399| 色综合久| 五月色视频| 丁香五月五月婷婷欧美大香蕉 | 亚洲色色五月| 九九色播五月丁香| 国产欧美日韩性爱| 九月婷婷久久| 色五月婷婷大| 久久五月天影院| 99爱精品| 99热综合在线| 亚洲乱码日产精品BD| 婷婷丁香色无五月| 久久免费丁香| 人妻中文在线| 亚洲网站在线鸭子av| 色青青电影色五月| 激情丁香五月婷婷| 日本三级日本三级99| 中文字幕无码人妻少妇免费视频| 激情宗合网激情五月天| www.99热这里精品| 91AV婷婷| 九九视频这里只有精品在线播放 | 在线综合91| 亚洲永久四色| 成人欧美一区二区三区在线观看| 九九色插| 色色网站| 色婷婷丁香网| WWW、99热| 天天噜| 噜噜噜噜噜日本视频| 91大操| 特黄三级片| 这里只有免费的精品| 婷婷激情四射网| 亚洲精品久久久无码| 俺去也五月天婷婷| 国产亚洲色婷婷99精品| 色色热日| 伊人五月综合网| 色婷婷www| 婷婷六月激情小说网| 亚洲视频1区|