日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

SpringBoot整合PowerJob:構(gòu)建高可用分布式任務(wù)調(diào)度系統(tǒng)

SpringBoot整合PowerJob:構(gòu)建高可用分布式任務(wù)調(diào)度系統(tǒng) 1. 項(xiàng)目概述為什么我們需要PowerJob在構(gòu)建現(xiàn)代后端服務(wù)時(shí)定時(shí)任務(wù)和分布式調(diào)度是一個(gè)繞不開的話題。無論是每天凌晨的數(shù)據(jù)報(bào)表生成、定時(shí)的緩存刷新還是復(fù)雜的跨服務(wù)業(yè)務(wù)流程編排一個(gè)可靠的任務(wù)調(diào)度框架都是系統(tǒng)穩(wěn)定運(yùn)行的基石。早期我們可能用過Scheduled注解配合cron表達(dá)式或者在單機(jī)環(huán)境下跑個(gè)Quartz。但隨著業(yè)務(wù)微服務(wù)化服務(wù)實(shí)例動(dòng)態(tài)擴(kuò)縮容任務(wù)需要高可用、分片處理、動(dòng)態(tài)編排時(shí)這些傳統(tǒng)方案就顯得力不從心了。這時(shí)PowerJob 進(jìn)入了我們的視野。它是一款誕生于開源社區(qū)的分布式任務(wù)調(diào)度框架設(shè)計(jì)目標(biāo)就是解決在分布式、微服務(wù)架構(gòu)下任務(wù)調(diào)度的各種痛點(diǎn)。它提供了可視化控制臺(tái)、支持多種任務(wù)類型Java處理器、Shell、Python等、具備工作流編排、故障轉(zhuǎn)移、實(shí)時(shí)日志等強(qiáng)大功能。而 Spring Boot作為 Java 領(lǐng)域事實(shí)上的微服務(wù)開發(fā)標(biāo)準(zhǔn)其便捷的自動(dòng)配置和 starter 生態(tài)讓我們整合第三方組件變得異常輕松。所以“SpringBoot整合PowerJob”這個(gè)主題本質(zhì)上是在為我們的 Spring Boot 應(yīng)用注入一個(gè)強(qiáng)大、可靠的任務(wù)調(diào)度“引擎”。這不是簡單的 API 調(diào)用而是一套完整的企業(yè)級(jí)任務(wù)治理方案。接下來我將從一個(gè)實(shí)際使用者的角度拆解從零開始整合、配置到開發(fā)復(fù)雜任務(wù)的完整流程并分享那些官方文檔可能不會(huì)細(xì)說的“坑”和最佳實(shí)踐。2. 整體設(shè)計(jì)與環(huán)境準(zhǔn)備2.1 技術(shù)選型與架構(gòu)思考在決定整合 PowerJob 之前我們需要明確它的部署架構(gòu)。PowerJob 包含兩個(gè)核心組件PowerJob Server (調(diào)度服務(wù)器)負(fù)責(zé)任務(wù)的調(diào)度、分發(fā)、派發(fā)和監(jiān)控。它是整個(gè)系統(tǒng)的大腦需要獨(dú)立部署并保證高可用。PowerJob Worker (執(zhí)行器)嵌入在我們的 Spring Boot 應(yīng)用中的客戶端負(fù)責(zé)接收 Server 下發(fā)的任務(wù)并執(zhí)行具體的業(yè)務(wù)邏輯。這種設(shè)計(jì)實(shí)現(xiàn)了調(diào)度與執(zhí)行的解耦。我們的 Spring Boot 應(yīng)用作為 Worker可以專注于業(yè)務(wù)代碼而 Server 則負(fù)責(zé)全局的任務(wù)調(diào)度策略。對(duì)于生產(chǎn)環(huán)境建議至少部署兩個(gè) Server 實(shí)例通過接入同一個(gè)數(shù)據(jù)庫來實(shí)現(xiàn)高可用和負(fù)載均衡。版本選擇建議始終關(guān)注官方 GitHub 的 Release 版本。對(duì)于 Spring Boot 2.x 項(xiàng)目建議使用 PowerJob 4.x 版本對(duì)于 Spring Boot 3.x則需要選擇 PowerJob 5.x 及以上版本以確保 Java 版本和依賴的兼容性。本文將以 Spring Boot 2.7.x 和 PowerJob 4.3.2 為例進(jìn)行演示這是當(dāng)前企業(yè)中使用非常穩(wěn)定的一個(gè)組合。2.2 基礎(chǔ)環(huán)境搭建PowerJob Server 需要數(shù)據(jù)庫來存儲(chǔ)任務(wù)元數(shù)據(jù)、執(zhí)行記錄和日志。它支持 MySQL、PostgreSQL 和 Oracle。這里以最常用的 MySQL 為例。第一步初始化數(shù)據(jù)庫在你的 MySQL 實(shí)例中創(chuàng)建一個(gè)新的數(shù)據(jù)庫例如powerjob_daily。然后從 PowerJob 的 GitHub 倉庫powerjob-server項(xiàng)目下的script目錄獲取對(duì)應(yīng)的SQL初始化腳本powerjob-mysql.sql。執(zhí)行這個(gè)腳本它會(huì)創(chuàng)建所需的所有表。注意務(wù)必使用與你所下載的 PowerJob Server 版本相匹配的 SQL 腳本不同版本的表結(jié)構(gòu)可能有差異。直接使用錯(cuò)誤版本的腳本會(huì)導(dǎo)致 Server 啟動(dòng)失敗。第二步部署 PowerJob Server你有兩種主要方式部署 Server方式一獨(dú)立部署直接從 Release 頁面下載powerjob-server-standalone.jar。通過命令行java -jar powerjob-server-standalone.jar --spring.profiles.activeproduct啟動(dòng)。這種方式最簡單但需要你手動(dòng)管理進(jìn)程和配置。方式二Docker 部署推薦這是生產(chǎn)環(huán)境更優(yōu)雅的方式。官方提供了 Docker 鏡像tjqq/powerjob-server:latest。通過docker-compose可以輕松編排 Server 和 MySQL。這里給出一個(gè)簡單的docker-compose.yml示例version: 3 services: mysql: image: mysql:8.0 container_name: powerjob-mysql environment: MYSQL_ROOT_PASSWORD: root123456 MYSQL_DATABASE: powerjob_daily ports: - 3307:3306 volumes: - ./mysql/data:/var/lib/mysql - ./mysql/conf:/etc/mysql/conf.d command: --default-authentication-pluginmysql_native_password powerjob-server: image: tjqq/powerjob-server:latest container_name: powerjob-server depends_on: - mysql environment: # 數(shù)據(jù)庫配置 SPRING_DATASOURCE_URL: jdbc:mysql://mysql:3306/powerjob_daily?useUnicodetruecharacterEncodingUTF-8serverTimezoneAsia/Shanghai SPRING_DATASOURCE_USERNAME: root SPRING_DATASOURCE_PASSWORD: root123456 # Server 網(wǎng)絡(luò)配置供 Worker 連接 POWERJOB_WORKER_PORT: 27777 # 控制臺(tái)登錄賬號(hào)密碼 POWERJOB_ADMIN_PASSWORD: powerjob123 ports: - 7700:7700 # 控制臺(tái)端口 - 10086:10086 # 默認(rèn)的 Server RPC 端口可選映射 - 27777:27777 # Worker RPC 端口可選映射 volumes: - ./powerjob-server/logs:/root/logs使用docker-compose up -d啟動(dòng)后訪問http://你的服務(wù)器IP:7700即可看到 PowerJob 控制臺(tái)登錄頁使用環(huán)境變量中配置的密碼示例中為powerjob123登錄。實(shí)操心得在 Docker 部署時(shí)務(wù)必注意網(wǎng)絡(luò)連通性。如果 Worker你的 Spring Boot 應(yīng)用部署在宿主機(jī)或另一個(gè)容器內(nèi)需要確保能訪問到powerjob-server容器的10086調(diào)度端口和27777Worker 注冊(cè)端口。上述配置將端口映射到了宿主機(jī)方便測試。在生產(chǎn)環(huán)境你可能需要配置 Docker 自定義網(wǎng)絡(luò)或使用 Kubernetes Service。3. Spring Boot 應(yīng)用整合 PowerJob Worker3.1 項(xiàng)目依賴引入在你的 Spring Boot 項(xiàng)目的pom.xml中添加 PowerJob Worker 的 Starter 依賴。這是最省心的方法它自動(dòng)配置了必要的 Bean。dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter/artifactId /dependency !-- PowerJob Worker Starter -- dependency groupIdtech.powerjob/groupId artifactIdpowerjob-worker-spring-boot-starter/artifactId version4.3.2/version /dependency如果你還需要在代碼中動(dòng)態(tài)創(chuàng)建任務(wù)高級(jí)用法可以額外引入powerjob-client。3.2 核心配置詳解接下來在application.yml或application.properties中配置 Worker。這是整合的關(guān)鍵一步每一個(gè)配置項(xiàng)都直接影響著 Worker 的行為和與 Server 的通信。# application.yml powerjob: worker: # 1. 應(yīng)用名稱用于在Server控制臺(tái)標(biāo)識(shí)這一組Worker非常重要 app-name: powerjob-demo-app # 2. Server 地址PowerJob Server 的地址支持多個(gè)用逗號(hào)分隔 server-address: 192.168.1.100:7700 # 或者你的服務(wù)器IP:7700 # 3. 端口Worker 啟動(dòng)的RPC端口用于接收Server下發(fā)的任務(wù)默認(rèn)27777 port: 27777 # 4. 存儲(chǔ)策略用于存儲(chǔ)一些輕量級(jí)中間數(shù)據(jù)本地磁盤或數(shù)據(jù)庫 store-strategy: disk # 5. 最大結(jié)果長度任務(wù)執(zhí)行結(jié)果的最大長度超長會(huì)被截?cái)?max-result-length: 8192 # 6. 啟用測試模式如果為true會(huì)連接內(nèi)置的測試Server用于本地開發(fā)調(diào)試 enable-test-mode: false # 7. 允許的處理器包路徑指定掃描哪些包下的任務(wù)處理器不配置則掃描全部 # allowed-processor-packages: # - com.yourcompany.job.processor配置項(xiàng)深度解析app-name這是 Worker 的“身份標(biāo)識(shí)”。所有配置了相同app-name的 Spring Boot 應(yīng)用實(shí)例在 Server 看來都屬于同一個(gè)“應(yīng)用集群”。Server 會(huì)向這個(gè)集群內(nèi)的所有 Worker 派發(fā)任務(wù)。因此請(qǐng)確保同一業(yè)務(wù)模塊的應(yīng)用使用相同的app-name。server-address支持配置多個(gè) Server 地址如192.168.1.100:7700,192.168.1.101:7700Worker 會(huì)隨機(jī)選擇一個(gè)進(jìn)行注冊(cè)和心跳。這是實(shí)現(xiàn) Server 高可用客戶端側(cè)的關(guān)鍵配置。port確保該端口在部署 Worker 的機(jī)器上未被占用且防火墻規(guī)則允許 Server 訪問此端口。如果 Worker 運(yùn)行在 Docker 或 Kubernetes 內(nèi)可能需要額外的網(wǎng)絡(luò)配置。enable-test-mode本地開發(fā)神器。設(shè)置為true時(shí)無需啟動(dòng)真實(shí)的 PowerJob ServerWorker 會(huì)自動(dòng)連接一個(gè)內(nèi)存中的模擬 Server非常適合在本地 IDE 中跑單元測試或調(diào)試任務(wù)邏輯。3.3 編寫你的第一個(gè)任務(wù)處理器任務(wù)處理器Processor是承載具體業(yè)務(wù)邏輯的地方。PowerJob 提供了多種處理器類型最常用的是BasicProcessor。我們通過實(shí)現(xiàn)這個(gè)接口來定義任務(wù)。創(chuàng)建一個(gè)類實(shí)現(xiàn)BasicProcessor接口并加上Component注解讓其被 Spring 管理。package com.example.demo.job; import org.springframework.stereotype.Component; import tech.powerjob.worker.core.processor.ProcessResult; import tech.powerjob.worker.core.processor.TaskContext; import tech.powerjob.worker.core.processor.sdk.BasicProcessor; import lombok.extern.slf4j.Slf4j; Slf4j Component public class SimpleDemoJob implements BasicProcessor { Override public ProcessResult process(TaskContext context) throws Exception { // 1. 獲取任務(wù)參數(shù) String jobParams context.getJobParams(); log.info( SimpleDemoJob Start ); log.info(JobParams: {}, jobParams); log.info(JobId: {}, InstanceId: {}, context.getJobId(), context.getInstanceId()); // 2. 模擬執(zhí)行一些業(yè)務(wù)邏輯 try { // 這里是你的核心業(yè)務(wù)代碼比如調(diào)用某個(gè)服務(wù)、處理數(shù)據(jù)等 Thread.sleep(2000); // 模擬耗時(shí)操作 String result Processed: jobParams at System.currentTimeMillis(); log.info(Job execute successfully. Result: {}, result); // 3. 返回執(zhí)行結(jié)果 return new ProcessResult(true, result); } catch (Exception e) { log.error(SimpleDemoJob process failed., e); // 4. 執(zhí)行失敗返回 false 和錯(cuò)誤信息 return new ProcessResult(false, Failed: e.getMessage()); } } }關(guān)鍵點(diǎn)說明TaskContext包含了任務(wù)的完整上下文信息如任務(wù)ID、實(shí)例ID、任務(wù)參數(shù)、工作流上下文等是你在處理器中獲取元數(shù)據(jù)的主要途徑。ProcessResult任務(wù)的執(zhí)行結(jié)果。success字段表示成功與否msg字段會(huì)傳遞到 Server 并可以在控制臺(tái)查看。對(duì)于需要下游任務(wù)使用的場景這個(gè)msg可以作為輸出參數(shù)。日志強(qiáng)烈建議在任務(wù)開始、關(guān)鍵步驟和結(jié)束時(shí)打印日志。PowerJob Worker 會(huì)捕獲這些日志并發(fā)送到 Server你可以在控制臺(tái)的“任務(wù)實(shí)例”詳情中查看實(shí)時(shí)日志這對(duì)排查問題至關(guān)重要。4. 在控制臺(tái)創(chuàng)建并執(zhí)行任務(wù)啟動(dòng)你的 Spring Boot 應(yīng)用。如果配置正確你會(huì)在應(yīng)用日志中看到類似[PowerJob] PowerJobWorker has been started successfully!的信息?,F(xiàn)在打開 PowerJob Server 控制臺(tái) (http://server-ip:7700)。4.1 創(chuàng)建任務(wù)進(jìn)入任務(wù)管理登錄后在左側(cè)菜單找到“任務(wù)管理”點(diǎn)擊“新建任務(wù)”。填寫基礎(chǔ)信息任務(wù)名稱給你的任務(wù)起個(gè)名字如“簡單示例任務(wù)”。任務(wù)描述可選寫明任務(wù)用途。所屬應(yīng)用這里應(yīng)該能看到你在application.yml中配置的app-name如powerjob-demo-app。選擇它。配置任務(wù)任務(wù)參數(shù)可以在這里輸入 JSON 或普通字符串它會(huì)被傳遞到處理器的context.getJobParams()中。例如輸入{userId: 123, action: report}。任務(wù)執(zhí)行類型選擇“單機(jī)執(zhí)行”該任務(wù)只在某一臺(tái) Worker 上執(zhí)行或“廣播執(zhí)行”在所有 Worker 上執(zhí)行。對(duì)于需要分片處理的任務(wù)選擇“MapReduce”或“廣播”。處理器類型選擇“Java”。處理器信息這是最關(guān)鍵的一步。需要填寫你剛寫的處理器類的全限定名即com.example.demo.job.SimpleDemoJob。PowerJob Server 會(huì)根據(jù)這個(gè)類名向注冊(cè)上來的 Worker 查找對(duì)應(yīng)的處理器。Cron 表達(dá)式定義任務(wù)調(diào)度時(shí)間。例如0 0 2 * * ?表示每天凌晨2點(diǎn)執(zhí)行。也可以使用“秒 分 時(shí) 日 月 周”的格式或使用可視化編輯器。執(zhí)行策略除了定時(shí)還可以選擇“一次性”或“固定頻率”。高級(jí)配置這里可以配置重試次數(shù)、超時(shí)時(shí)間、并發(fā)度等。對(duì)于重要任務(wù)建議設(shè)置1-2次重試。4.2 啟動(dòng)作業(yè)實(shí)例創(chuàng)建好任務(wù)后它默認(rèn)是“禁用”狀態(tài)。你需要先點(diǎn)擊“啟用”按鈕啟用這個(gè)任務(wù)。然后可以立即點(diǎn)擊“運(yùn)行”來觸發(fā)一次執(zhí)行或者等待 Cron 表達(dá)式定義的定時(shí)時(shí)間到來。4.3 監(jiān)控與日志查看點(diǎn)擊“任務(wù)實(shí)例”菜單你可以看到所有任務(wù)的執(zhí)行記錄。找到你剛運(yùn)行的任務(wù)實(shí)例點(diǎn)擊“詳情”或“日志”可以進(jìn)入實(shí)時(shí)日志頁面。在這里你能看到處理器中打印的log.info信息以及任務(wù)的最終執(zhí)行結(jié)果ProcessResult中的消息。這是調(diào)試和監(jiān)控任務(wù)運(yùn)行狀態(tài)最直接的方式。注意事項(xiàng)處理器信息的類名必須完全正確包括大小寫。如果 Server 在 Worker 中找不到對(duì)應(yīng)的處理器任務(wù)實(shí)例狀態(tài)會(huì)變?yōu)椤皥?zhí)行失敗”日志中會(huì)顯示“Can‘t find processor by name ...”。常見的錯(cuò)誤是寫錯(cuò)了包名或類名。5. 進(jìn)階實(shí)戰(zhàn)分片任務(wù)與工作流5.1 實(shí)現(xiàn)分片處理MapReduce當(dāng)需要處理大量數(shù)據(jù)時(shí)比如處理一張百萬級(jí)別的用戶表單機(jī)執(zhí)行效率低下。PowerJob 的 MapReduce 處理器可以將任務(wù)分片讓集群中的多個(gè) Worker 并行處理。你需要實(shí)現(xiàn)MapReduceProcessor接口。它包含三個(gè)階段Map 階段在單個(gè) Worker 上執(zhí)行負(fù)責(zé)將大任務(wù)切分成多個(gè)子任務(wù)分片。Reduce 階段在所有 Worker 執(zhí)行完 Map 后在單個(gè) Worker 上執(zhí)行負(fù)責(zé)匯總結(jié)果。Process 階段每個(gè) Worker 處理分配給它的那個(gè)子任務(wù)分片。package com.example.demo.job; import com.google.common.collect.Lists; import org.springframework.stereotype.Component; import tech.powerjob.worker.core.processor.ProcessResult; import tech.powerjob.worker.core.processor.TaskContext; import tech.powerjob.worker.core.processor.sdk.MapReduceProcessor; import java.util.List; Component public class ShardingDemoJob implements MapReduceProcessor { Override public ProcessResult process(TaskContext context) throws Exception { // 這是處理單個(gè)分片的地方 log.info(當(dāng)前分片參數(shù): {}, context.getSubTask()); // 根據(jù)分片參數(shù)處理對(duì)應(yīng)的數(shù)據(jù)塊... return new ProcessResult(true, 分片 context.getCurrentSubTaskIndex() 處理完成); } Override public ProcessResult reduce(TaskContext context, ListTaskResult taskResults) throws Exception { // 匯總所有分片的結(jié)果 log.info(開始Reduce共收到{}個(gè)分片結(jié)果, taskResults.size()); int successCount 0; for (TaskResult tr : taskResults) { if (tr.isSuccess()) successCount; } return new ProcessResult(true, String.format(Reduce完成成功%d個(gè)失敗%d個(gè), successCount, taskResults.size() - successCount)); } }在控制臺(tái)創(chuàng)建任務(wù)時(shí)執(zhí)行類型選擇“MapReduce”處理器信息填寫com.example.demo.job.ShardingDemoJob。任務(wù)運(yùn)行時(shí)Server 會(huì)自動(dòng)進(jìn)行分片調(diào)度。5.2 編排復(fù)雜工作流PowerJob 支持 DAG有向無環(huán)圖工作流可以可視化地編排多個(gè)任務(wù)的執(zhí)行順序和依賴關(guān)系。創(chuàng)建多個(gè)任務(wù)首先像之前一樣創(chuàng)建好多個(gè)獨(dú)立的原子任務(wù)比如任務(wù)A數(shù)據(jù)清洗任務(wù)B數(shù)據(jù)計(jì)算任務(wù)C發(fā)送通知。創(chuàng)建工作流在控制臺(tái)“工作流管理”中新建一個(gè)工作流。拖拽編排在畫布上將創(chuàng)建好的任務(wù)節(jié)點(diǎn)拖入并用連接線定義它們的依賴關(guān)系。例如設(shè)置任務(wù)B依賴于任務(wù)A的成功任務(wù)C依賴于任務(wù)B的成功。配置工作流參數(shù)可以配置工作流級(jí)別的 Cron 表達(dá)式也可以配置單個(gè)節(jié)點(diǎn)的失敗處理策略如跳過、終止工作流等。運(yùn)行與監(jiān)控啟動(dòng)作業(yè)流后可以在“工作流實(shí)例”中查看整個(gè)流程的執(zhí)行狀態(tài)圖每個(gè)節(jié)點(diǎn)的狀態(tài)一目了然。工作流非常適合用于編排有嚴(yán)格先后順序或依賴關(guān)系的批處理任務(wù)大大提升了任務(wù)調(diào)度的靈活性和可維護(hù)性。6. 生產(chǎn)環(huán)境部署與運(yùn)維要點(diǎn)6.1 高可用與集群配置Server 集群生產(chǎn)環(huán)境務(wù)必部署至少兩個(gè) PowerJob Server 實(shí)例并指向同一個(gè)數(shù)據(jù)庫。它們會(huì)自動(dòng)組成集群通過數(shù)據(jù)庫鎖實(shí)現(xiàn) Leader 選舉只有 Leader 節(jié)點(diǎn)負(fù)責(zé)調(diào)度其他節(jié)點(diǎn)作為熱備。在docker-compose或 K8s 部署中只需啟動(dòng)多個(gè) Server 容器/Pod 即可。Worker 集群你的 Spring Boot 應(yīng)用Worker本身就是無狀態(tài)的可以水平擴(kuò)展。只需確保所有實(shí)例的app-name和server-address配置一致。Server 會(huì)感知到所有在線的 Worker。網(wǎng)絡(luò)與防火墻確保 Server 與 Worker 之間的網(wǎng)絡(luò)雙向可達(dá)。Server 需要能訪問 Worker 的port默認(rèn)27777以派發(fā)任務(wù)Worker 需要能訪問 Server 的server-address默認(rèn)7700端口進(jìn)行注冊(cè)和心跳。在云環(huán)境或容器網(wǎng)絡(luò)中要仔細(xì)配置安全組或網(wǎng)絡(luò)策略。6.2 數(shù)據(jù)庫與存儲(chǔ)優(yōu)化數(shù)據(jù)庫監(jiān)控PowerJob 在運(yùn)行中會(huì)產(chǎn)生大量的實(shí)例記錄和日志記錄。需要定期關(guān)注pj_instance_info,pj_instance_log等核心表的體積。可以在控制臺(tái)“系統(tǒng)管理”中配置日志的保留時(shí)間或者自行編寫腳本定期清理歷史數(shù)據(jù)避免數(shù)據(jù)庫被撐滿。存儲(chǔ)策略store-strategy配置為disk時(shí)Worker 會(huì)將一些運(yùn)行時(shí)數(shù)據(jù)如 MapReduce 的中間結(jié)果寫入本地磁盤。請(qǐng)確保 Worker 運(yùn)行環(huán)境的磁盤有足夠空間和寫入權(quán)限。對(duì)于容器化部署可能需要掛載 Volume。6.3 監(jiān)控與告警控制臺(tái)監(jiān)控PowerJob 控制臺(tái)提供了任務(wù)狀態(tài)、執(zhí)行歷史、運(yùn)行日志等基本監(jiān)控信息。健康檢查PowerJob Server 提供了/actuator/health端點(diǎn)需在啟動(dòng)參數(shù)中開啟spring.boot.admin.client.enabledtrue可以集成到你的統(tǒng)一監(jiān)控平臺(tái)如 Prometheus Grafana。自定義告警對(duì)于關(guān)鍵任務(wù)可以編寫監(jiān)聽器實(shí)現(xiàn)InstanceStatusListener在任務(wù)執(zhí)行失敗時(shí)通過釘釘、企業(yè)微信或郵件發(fā)送告警通知。7. 常見問題排查與調(diào)試技巧在實(shí)際整合和使用過程中你可能會(huì)遇到以下問題。這里我整理了一個(gè)速查表問題現(xiàn)象可能原因排查步驟與解決方案Worker 啟動(dòng)失敗報(bào)連接 Server 失敗1. Server 地址/端口錯(cuò)誤。2. 網(wǎng)絡(luò)不通。3. Server 未啟動(dòng)。1. 檢查server-address配置嘗試用telnet或curl測試連通性。2. 檢查防火墻/安全組規(guī)則。3. 查看 Server 容器/進(jìn)程日志確認(rèn)已正常啟動(dòng)并監(jiān)聽端口。任務(wù)創(chuàng)建后一直處于“等待調(diào)度”狀態(tài)1. 任務(wù)未啟用。2. Cron表達(dá)式設(shè)置的是未來時(shí)間。3. Server 集群無 Leader。1. 在控制臺(tái)確認(rèn)任務(wù)狀態(tài)是否為“啟用”。2. 檢查 Cron 表達(dá)式或用“運(yùn)行一次”測試。3. 查看 Server 日志確認(rèn)有節(jié)點(diǎn)成功競選為 Leader。任務(wù)實(shí)例狀態(tài)為“執(zhí)行失敗”日志顯示“Can‘t find processor”1. 處理器信息類名填寫錯(cuò)誤。2. 包含該處理器的 Jar 包未成功部署到 Worker。3. Worker 的 Spring 容器未成功加載該處理器 Bean。1. 仔細(xì)核對(duì)控制臺(tái)填寫的類名與代碼中的全限定名是否完全一致。2. 確認(rèn)部署的 Jar 包包含該類檢查打包配置。3. 確認(rèn)處理器類上有Component等 Spring 注解且所在包在 Spring 掃描路徑下。任務(wù)執(zhí)行超時(shí)1. 任務(wù)本身執(zhí)行時(shí)間過長。2. Worker 進(jìn)程 GC 停頓或假死。3. 網(wǎng)絡(luò)延遲導(dǎo)致結(jié)果上報(bào)超時(shí)。1. 優(yōu)化任務(wù)邏輯或在控制臺(tái)任務(wù)配置中調(diào)大“超時(shí)時(shí)間”。2. 檢查 Worker 所在機(jī)器的 CPU、內(nèi)存和 GC 情況。3. 檢查網(wǎng)絡(luò)狀況適當(dāng)調(diào)大powerjob.worker.request-timeout-ms配置默認(rèn) 30000ms。分片任務(wù)只有部分分片執(zhí)行1. 可用的 Worker 數(shù)量少于分片數(shù)。2. 部分 Worker 失聯(lián)或處于不健康狀態(tài)。1. 確保 Worker 集群有足夠多的實(shí)例。2. 檢查所有 Worker 節(jié)點(diǎn)的健康狀況和日志。Server 只會(huì)向健康的 Worker 派發(fā)任務(wù)。控制臺(tái)看不到實(shí)時(shí)日志1. Worker 未正確配置日志框架。2. 網(wǎng)絡(luò)問題導(dǎo)致日志發(fā)送失敗。3. Server 存儲(chǔ)日志的臨時(shí)目錄不可寫。1. 確保 Worker 使用了 SLF4J 門面如 Logback/Log4j2PowerJob 依賴它抓取日志。2. 檢查 Worker 與 Server 之間的網(wǎng)絡(luò)。3. 檢查 Server 啟動(dòng)用戶的磁盤權(quán)限。本地開發(fā)調(diào)試技巧善用測試模式將enable-test-mode設(shè)為true無需啟動(dòng) Server即可在本地運(yùn)行和調(diào)試處理器邏輯。非常適合單元測試。打印詳細(xì)上下文在process方法開始時(shí)打印TaskContext中的詳細(xì)信息如jobId,instanceId,jobParams這能幫你確認(rèn)任務(wù)執(zhí)行時(shí)的準(zhǔn)確入?yún)?。模擬 Server 環(huán)境對(duì)于需要測試分片、工作流等復(fù)雜場景可以在本地用 Docker 快速啟動(dòng)一個(gè) PowerJob Server 和 MySQL 進(jìn)行聯(lián)調(diào)這比直接上測試環(huán)境更高效。整合 PowerJob 的過程本質(zhì)上是在為你的系統(tǒng)搭建一個(gè)堅(jiān)固、靈活的任務(wù)調(diào)度基礎(chǔ)設(shè)施。從簡單的定時(shí)任務(wù)到復(fù)雜的分布式工作流它都能很好地覆蓋。關(guān)鍵在于理解其“調(diào)度-執(zhí)行”分離的架構(gòu)思想并做好生產(chǎn)環(huán)境的集群、監(jiān)控和運(yùn)維配置。一旦跑順你會(huì)發(fā)現(xiàn)它極大地解放了你在“任務(wù)管理”上的生產(chǎn)力讓你更專注于業(yè)務(wù)邏輯本身。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
在线中文AV| 九月丁香婷婷| 亚洲一区中文精品| 久久久999| 少妇专区一二三四五| 中文字幕 人妻不满 在线视频| 亚洲一区二区三区在线激情| 超碰97综合网| 久久仑合| 国产专区路线| 五月天婷婷欧美三区| 国产成人无码a| 2017,超碰| 日韩精品人妻中文字有码在线| 超碰狠狠操| 精品v日韩欧美国产| 国产女人和拘做爰视频| 国产在线视频午夜精华在| 男人的天堂久久| 久久久久9999精品九九九| 精品久久視頻在线| 日本99视频| 欧美网站免费| 亚洲精品色| 丝袜 亚洲 偷拍| 影音先锋国产精品| av凤凰久久久| 午夜精品久久久久久久男人的天堂| 久久久国产亚洲精品系列| 成年人网站在线免费观看| 久久夜夜| 国产精品直播在线观看直播| 综合影院永久入口国产| 无码操逼视频一下| 日韩精品碰碰| 999岛国大片| 99ri视频| 小泽玛利亚一二三| 精品无码一二三四区| 超碰人妻久久人妻中文97| 美中韩AV综合网| 亚州操操穴网| 亚洲人妻熟妇三十三区| 91美女在线视频| 二对二中文字幕。| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 欧美不卡五十路| 日韩一级欧美一级国产一级台湾| 亚洲婷婷丁香在线| 另类TS人妖一区二区三区| 大香蕉www.超碰| 国产精品干干干| 亚洲最新av无码成人精品区| 久久婷婷亚洲| 2001天天操| 国产精品2020| 大香蕉在线SuP| 97视频在线观看网站| 午夜福利一区二区三区四区五区色婷婷| 超碰视97中文| AAAA级日本片免费视频| 日本十八禁免费看污网站| 国产精品自拍xxxx| 五月综合色| 国产视频三区四区| 亚洲啪啪啪啪视香蕉| 东京热大香焦| 伊人丁香五月婷婷| 91狼人| 91超碰人人| 中 文字幕一区二区三四 五 区日 日 骚 | 亚洲色图欧美色图制服丝袜| 蜜桃久久一区二区| 欧美啪啪女女| 夜夜夜夜夜夜夜夜夜狠狠狠狠狠狠狠| 青青草中日韩在线| 国产美女在线精品免费看| 国产探花精品在线| 亚洲中文人妻色| AV色五月天| 国产精品高潮久久久无码| 国内毛片无遮挡国产| 亚洲精品视频在线播放| 78精品| 国产强奸91| 偷窥自拍亚洲天堂网爆| 日欧毛片久久| AV一区观看| 日韩AV电影网站| 夜夜操一区二区| 你懂的在线观看区国产| 亚洲天堂热| 1二区9| 97色碰| 国产剧情AV不卡在线观看| 亚州成人a∨| 嗯~啊~快点 死我视频免费看网站| 深夜福利黄片| 中文字幕乱码人妻一区二区三区,99精品| 婷婷精品国产欧美精品亚洲人人爽| J?P?NESEHD熟女熟妇伦| 无码一区二区三区四区五区六区七区八区九区十区视频 | 欧美一区二区三区日韩| 欧美日本天堂| 亚洲精品一二区| 日本人体九九九九九九| 亚洲中文字幕熟女少妇一区二区| 免费黄色A片| 国产精品欧美激在线| 舔足天天操天天射| 99久久com免费视频′| 欧美日韩精品久久久久东北老熟妇| 精品久久久久久中文字幕视频免费| 久久精品99| 男女性扦B| 国产高清无码一区三区二区| 国产外初女出血视频| 1人人看人人摸人人操| 麻豆性爱视频在线播放| 亚洲精品乱码线路中文字幕| 中文字幕乱碼在线| 久草视频观看视频在线| 精品九九九九九九九九九| 天天激清| 亚洲凸凹超碰成人| 无码免费精品高清| 好涩综合| Av色五月| 91大神精品长腿在线观看网站| 蜜臀少妇一区二区| 国产精品福利资源在线尤物| 伦理弟一页| 综合欧美日韩在线观看| 青青草在线视频美女| 久久精品国产72国产精品福利 | 日韩国产乱子伦App| 青青草字幕AV| 图片区小说区| 欧美色999| av操操不卡| 素人一区二区三区日韩| 久久69| 91美腿丝袜在线观看| 日韩黄色av中文字幕| 精品久久大胆人体| 激情丁香五月婷婷| 变态乱伦伪娘灌肠一区二区| 久久精品99| 人妻少妇蜜桃视频欧美一区| 91伊人久| 日韩欧美女求操每天更新| 男人的天堂2019AV| 国产精品色片一区二区| 99热在线播放| 久草热制服丝袜在线观看| 精品v日韩欧美国产| 男人的天堂Va| 大香蕉92| 日本97久久久精品| 色牛牛AV| 国产精品久久aV| 啊啊啊轻点在线观看| 天天干一干| 99e久久国产精品| 99热99re6国产在线播放| 中文字幕成人| 女人爽到高潮潮喷18禁网站 | 97超碰国产亚洲精品资源| 国产精品4p在线观看| 色噜噜狠狠色综无码久久| 99超碰色| 久久五月丁香| 伊人久操| 影音先锋少妇| 欧美片第一页| 天久久久噜噜噜久久国产精品爽爽| 日本999精品视频| 狼人久草| 日本色色的视频| 51国产午夜精品视频| 国产精品对白自产拍| 99操| 美女啊啊啊啊pc| 亚洲高清无码免费观看视频| 爆操无码| 天天爽人人综合免费7799| 国产偷拍网站| 精品人妻一区二区三区日产| a啊啊啊啊啊啊啊啊一区二区| 欧美亚洲厕所精品偷拍91| 色妹子A V| 精品一区二区三区蜜桃臀赵总 | 少妇诱惑视频| 人妻天天操天天爽视频免费 | 男人的天堂1024| 色97欧美| 人妻少妇精品| 人妻夜夜爽天天爽三区麻豆AV网站| 欧美色图小说综合| 日本熟女中文| 天天躁日日躁XXXXYY| 69av一区二区三区| 色官网色综合| 欧美劲爆视频一区二区| 亚洲1区2区三区高清中文字幕| 亚洲 无码 偷拍| 我要色综合网| 日本一级真人黄色性爱视频| 中文?日韩?免费?精品| 十八禁啪啪视频| 女人天堂av在线播放| 酒色综合网| 2017天天插| 久久久啊啊啊| 中文字幕精品探花视频| 偷拍亚洲熟女视频播放| 亚洲一级性爱视频免费看| 看免费的黄片| 91人妻素女| 亚洲各类熟们中文字幕| 欧美极品女人的天堂| 看看小穴| 96免费视频在线| 夜夜免费视频| 色吊丝 日日骚 清纯唯美| 易易A毛视频| 日本一区二区不卡| 亚洲砖码砖专无区2023| 91亚洲不卡一区| 综合天天网| 国产热av| 99久久久无码国产精品性啊聊| A级国产欧美激情在线| 亚洲图片日本AⅤ欧美在线| 亚洲少妇综合在线播放| 9九九九九视频在线观看| 第45页一区二区| wuyechaopeng| 欧美gv在线观看| 国产高清成人mv在线观看| 国内自拍 日韩激情 99| 国产专区路线| 欧美亚州综合网图片| 欧美组图日韩亚洲中文字幕| 欧美少妇性爱网站| 五月婷婷六月激情| 骚日日av| www久久国产精品| 美國A片| 色婷五月天| 欧亚日韩三区| 啊啊啊爽爽| 欧美久久人人网| 人妻啊啊人妻啊| 超碰在线97国产| 欧美激情精品| 日本人妻A片成人免费看片| 97亚洲一区| 亚洲在线A| 国产精品久久久久无码Av网曝门| 加勒比大香蕉视频在线| 国产中午字一暮区| 亚洲免费成人在线高清无码视频| 天天插天天干| 国产熟码AV| 伊人黄色片| 97 亚洲 日韩 欧美 在线| 欧洲一区二区三区四区在线观看| 人人妻碰人人免费| 69人妻精品一区二区绯色| 美日韩一二三区| 91欧美在线| 噜噜噜无码AV一级一级久久影院| 骚女高跟AV在线| 国产在线能看的你懂的| 日本丝袜美腿人妻九九| 97视频在线免费观看| 精品-91人妻子系列| 操淫穴亚洲五月丁香| 成全动漫视频观看免费下载| 亚洲AV无码天美传媒一区| 精品国产乱码久久久久久日本公司| 国内亚洲高清无码| 熟妇亚洲一区二区三区| 超碰97网站| 另类小说五月天| 蜜桃臀av一区二区| 一区二区三区精品黑丝白丝酒店对鸡| 青草精品视频一日本久久久久网站| av绯色| 牛牛久久国产精品视频一二三| 97干97色| 亚洲区限制级| 亚洲第一狼人丝袜美女另类| 91l欧美在线| 亚洲一区二区三区不卡国产欧美| 久久久穴999| 人妻偷拍一区二区三区| 欧美大香蕉97| 人人摸人人摸人人干| 超碰这里只有精品| 自拍偷拍 高清无码| 97网址97| 97在线精品| 久操免费观看| 欧美日韩免费专区在线| 蜜乳AV.COM| 狠狠躁天天躁日日躁97| 曰韩无码777| 日日躁夜夜躁狠狠躁超爽| 色婷婷视频| 极品白嫩美少妇在地板上位骑射淫水泛滥| 69精品在线| 13小男生GAY自慰脱裤子| 青青青青草av在线观看| 国产伦乱91| 怡红院久久老司机| 欧州激情视频在线一区二区| 国产网站在线播放| 国产精品乱码久久| 丁香婷婷激情五月天无毒不卡 | 狼狼色丁香久久婷婷综合五月| 男人的天堂2000| 久久婷婷综合国际产色怕| 一区二区三区一亚洲中文字幕、综合区灬| 超碰79人人乐| 久久久久久精品免费看A级| 日韩内| 曰本精品久久久| 国产欧美日韩一区二区三区| 99热这里都是精品| 99在线观看无大码| 五月丁香啪啪啪| 天天谢天天干| 欧美宗合色| 97超碰亚洲| 啪啪啪大香蕉| 综合影视国产无码| 精品人妻免费观看| 天天躁日日躁狠狠狠躁| 国产精品视频在线播放| 日本久久久久久久久| 日韩欧美国产一区二区三区四区| 久久久日本电影| 天天色怡春院| 人妻精品综合中文字幕在线| 久操不卡视频| 福利伊人玖玖国产| 五十路六十路素人熟女| 色妇综合网| 国产精品国产| 久久草视频污视频| 日日日啊啊啊| 69人妻精品一区二区绯色| 成人a大片在线观看| 国产一级高清免费观看| 极品色综合| 加勒比久久av| 亚洲天堂一区二区| 我想要啊 啊 啊| 97色97好| 麻豆久久久久久久久丝袜| 黄aaaaaaaaaaaaaaaaaa色网站| 亚洲影院无码在线| 亚洲春色一区二区三区| 久久久久久久性爱| 亚洲欧美日韩不卡人妻| 97欧美资源| 久久久9 9 9精品| 啊啊啊要高潮了| 爱爱动态试试看6 0秒| 九色97| 熟妇熟女视频一区二区三区| 丁香五月婷婷啪啪| 天天日天天舔天天喷天天射| 九九热AV| 中文字幕高清20页视频| 97日本超碰综合| 精品一区二区三区蜜桃臀赵总 | 日韩视频小说在线观看| 97视频在线视频| s片在线观看| 亚洲区限制级| 日韩中文字幕宗合在线| 大香蕉日韩欧美| 蜜臀在线网站| 97超级久久| 欧美成97爱| 麻豆视频一区二区| 视频不卡中文字幕| 啪啪啪东京| 无码天天操| 99re国产精品视频| 国人欧美精品一区二区| 婷婷五月天成人| 丰满人妻-区二区三区免费| 67914亚洲精品| 久久久98网站免费视频| 色综合中文字幕不卡| 九九九久千久久激情蜜桃在线看| 欧美日韩少妇色情| 人妻熟女一区二区| 亚洲天天操| 老熟女乱伦一区| 国产精品探花视频| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 偷看洗澡一二三区美女| 天天操女人| 中文字幕亚洲欧美在线不卡| 丝袜美腿射精91| 97在线亚洲| 一区二区影视| www亚洲免费| 国产一区二区啪啪视频| 天天日日日射| 久久久久成人网| 丝袜人妻av一区二区| 国产操操日韩三级黄| 超碰在线看| 闷骚老熟女15P| 涩亚洲欧洲| 插入逼91| 婷婷五月天福利| 久久久久亚洲精品| 亚洲在线欧美| 欧美性爱视频免费一区一A| 男人的天堂2019AV| 九七人妻在线| 人妻性爱一区二区| 色爱综合网| 午夜毛片高清免费不卡| 91综合熟女| AV污污污污| 蜜桃精品一区二区三区ww| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 91色爽欧美| 一二区在线观看视频| 蜜乳AV免费观看| 狠狠干婷婷| 伊人久久亚洲中文字幕不卡| 久草在线| 伊人99热| 久久青娱乐| 日韩熟女乱伦中出| 一区二区三区日韩欧美| 深夜视频| 天天日天天舔| 9I1性色影院| 91精品啪在线观看国产城中村| 91肏屄网| 96精品久久久久久久久久| 成人国产精品三级A片| 欧亚成人在线视频| 草莓精品视频在线免费观看| 欧美色图偷拍另类| 日本乱人伦片中文三区| 久99久视频精选| 91N综合网| 天堂8在线新版官网| 99re在线视频| 亚洲砖码砖专无区2023| 国产不卡的视频| 韩国成人精品久久久免费看| 久久99草| 中国国产精品一区视频| 天天激色| 久久久久久久久成人av解说| 天美传媒av在线| 四虎影视永久在线免费| jiujiujiujingpin| 午夜偷拍久久熟女| 免费国产| 久久婷五月天| 九九久久玖玖| 夜夜嗨AV蜜臀av| 色视频蜜乳| 男人干美女| 国产91av在线播放| 国产精品一区二区后入| 国产强奸超碰AV| 精品免费成人久久| 中文字幕二区日韩天堂| 精品蜜乳AV免费观看| 欧美黄色图片| 久久社区一区二区三区| 久久久九| 亚洲午夜免费狠狠干| 国产强奸乱伦第1页| 久草视频制服诱惑| 欧美大香蕉专区网| 久久久久久久| 亚洲淫乱骚妇AV| 东北丰满熟女国产一区| 97久操| 国产视频三区四区| 无码日韩人妻av一| 91性网| 国产精品色哟哟| 激情综合网五月婷婷五月天| 男人的天堂Va| 九九九九九用不成了| 亚洲欧洲日韩国产自在线| 96国产精品| 欧洲射精91| 人妻aa| 亚洲熟女综合一区二区| 欧美精品久久| 亚洲色堂免费视频| 人妻乱仑一区二区三区| 天天干人人看综合| 五月天九九日国产精品一区二区三区| 日韩三级久久久| 乳欲人妻办公室奶水| 欧美激情高清性猛交| 久久久久久九九九九-美女久久久久久久-成人AV | 天天天天天干夜夜夜夜夜操| 午夜视频黄| 欧美男人的天堂| 91天堂视频| 91九色网| 亚洲欧美日韩精品久| J?P?NESEHD熟女熟妇伦| 亚洲乱熟女一区二区| 亚洲综合在线高清| 久久久久人妻| 日韩AV无码中文一区二区| 精品九九| 夜夜欧美| 国产一区二区在线看| 欧美精品 - 91爱爱| 熟妇熟女视频一区二区三区| 国产18精品亚洲精品| 欧美高清无码免费视频高清版| 97伦综合| 久操视频在线| 亚洲人码13| 亚洲精品欧洲精品| 91女在线观看| 欧美色棕合| 久99| 色五月综合网| 国产精品岛国片在线观看| 1769国内精品视频| 黄色操人| 蜜臀AV秘一区翔田千里| 在线视频97| 国产精品不卡少妇白| 久久久96精品| 日韩欧美~中文字| 国产精彩女在线观看视频| 国产青视频| 蜜桃精久三区| 国产乱弄免费在线视频。| 91啪9色| 伊人大香蕉在线| 欧插网站| 色婷婷蜜臀av| 国产熟妇一区二区| 97在线无精品| 北野未奈加勒比av| 素人伊尹大香蕉免费下载视频| 亚洲自拍青操视频| 久久青娱乐| 日韩欧美三级| 国产精品96| 国产精品ww久久| 亚洲男人综合| 一线黄色免费性爱片| 强奸乱伦麻豆| 99热啪啪| 图色综合网| 超碰这里只有精品| 97欧美色综合| 好吊色综合| 黄片免费日韩| 亚欧成人综合影院| 国内精品伊人久久久久影院会| 97香蕉碰碰人妻国产欧美| 五月丁香综合啪啪| 欧美中文字幕男人天堂久久精品| 红桃视频高潮| 亚洲人精品午夜不卡| 成人无码欧美一级A片狼牙直播| 人人妻人人澡人人爽久久av| 国产精品人妻无码久久久互動交流| 日韩日本欧美在线观看| 免费A V在线播放| 久久婷婷五月综合| 在线 亚洲 网爆 自拍| 日本一久是| 97中文热色| 国产精品ⅴ无码大片在线看.| 盗摄女人妻在线| 天天干天天插| 一直超碰| 久久久人妻| 久操网无码在线| 日本天天色| 久久久∴| 韩国三级色呦呦| 家庭乱伦性爱av| 欧美有码激情视频一区二区三区| 狠狠亚洲| 又粗又长又大国产不卡| 26uuu国产免费观看| 中文啪啪视频| 欧美啪啪天堂| 91人妻精华帖| 无码91| 99色在线| 草草影院日本第一页| 五月丁香影视| 97综合久第一页| 26uuu国产亚洲综合| 国产一级片| 久久宗合亚洲| 亚洲欧美在线观看无码| 大香蕉操久久| 人人操人人操人妻人| 日韩国产不卡在线视频| 老女人日韩美91| 大茄子熟女AV导航| 人妻人人做人人澡人人爽欧美一区| 七久久久| 9 1果冻精品视频| 亚洲一区二区精品福利| 超碰碰激情97+久| 久久产精品一区二区三区电影| 亚洲欧洲综合视频在线| 亚洲人综合| 日韩美女啪啪一区| 久草资源欧美在线视频| 国产一国产一级毛片古装| 天天插天天操| 舔人妻中文免费视频| 萌白酱自拍视频| 欲射影视| 午夜视频好爽啊| 色五月天AV| 天天夜躁日日躁狠狠2002| 女人天堂AV五区在线| 色与欲影视| 久久精品国产精品亚洲艾通辽熟妇| 爱丝福利| 操逼日韩无码 | 后入精品| 99这里有精品视频| 欧综合网| 久久熟女人| 午夜性刺激视频免费观看| 97视频网站在线观看| 热99这里有精品综合久久| 中文无码一二三区| 国产午夜在线观看| 97超碰天天| 操B在线观看| 熟女网站最新| 91丝袜| 东北女人av| 精品无码一区二区三区色欲| 综合干干干av久久久综合网| 久久久久久久伊人精品| 日本熟妇色熟妇在线视频播放| 色噜噜精品一区二区三| 无码二级三级| 国产视频三区四区| 性爱Av免费| 羞答答AV中文字| 色情综合网| 国产无码成人无码| 久久久性爱视频| 亚洲精品影视老司机| 久久久女人| 亚洲色图久久成人| 日本黄色大片一级视频免费麻豆| 黑人干亚洲| 五月天开心网| 9国产超碰| 亚洲午夜蜜臀| 天天操女人| 一起草日韩| 亚州性色| 老司机免费视频在线91| 激情综合久久| 国产精品ⅴ无码大片在线看.| 91美女視頻| 国产11页| 思思热久久成人| 久久久久久十| 精品然女一区二区| 九九热精品| 国产av强奸美女| 少妇天堂| 夜夜爽爽夜夜精品视频| 色婷婷五月天| 日本高清_区二区三区 | 亚洲精品精品一区二区| 色综合一本| 18禁久久| 樱花草社区www中国| 丁香五月性爱| 欧美日韩一区二区三区四区蜜桃| 精品午夜福利| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 欧美亚洲高清| 久久久久久中文| 日韩中文字幕熟妇人妻 | 美女91av| 75大香蕉| 亚洲情色五月天| 动漫爆乳3D奶水一区在线观看| 五码视频在线观看| 外站AV在线| KK色在线影院| 高清肉丝中文无码| 欧美色图私拍91| A V少妇特黄三级| 一级久久性爱视频| 欧美黄片免费在线观看视频| 国产乱伦视频污| 日韩猛交| 亚洲骚逼少妇| 久啪视频| 四季av一区二区凹凸精品小说| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 乱伦一二三| 在线视频97| 青青草久草| 97在线免费视频观看| 青草伊人久久| 麻豆a'v电影| 国产乱子伦一区二区三区免看| 亚洲综合性感在线| 国产有码一区| 91色五月俺来也| 一牛影视久久久一区二区三区| 一区二区日韩欧美久久| 五月丁香激情综合网| 五月天色图| 任你草| 伊人AAA| 青青国产精品在线| 91美女在线精品视频| 95精品在线| 久久久久久久久久久人妻| 91色碰| 欧美超碰96| 日本A级视频| 国产精品suv一区| 国产精品天干天干综合网麻豆 | 噜噜噜在线视频| 久久夜黄色无码A级大片| 操高情无码| WWW黄片COM| 国产成人+综合亚洲+天堂| 99操逼| 亚洲高潮少妇| 嫩草 人人网精品| 欲射影视| 青青草五月份天| 91色宗合| 老司机深夜18禁污污网站| 91午夜无码| 国模吧 一区二区三区| 成人婷婷丁香| 久久综合女优| AV天黑人| 欧美色图片| 翔田千里AⅤHD无码| 国人欧美精品一区二区| 精品久久一区二区三区四区五区| 久久久久中出| 99蜜月精品久久| 天天干18禁| 国产黄色影片在线观看| www网站黄| 射丝袜高跟鞋99| 日日妻色网| 伊人久久AV诱惑悠悠| 成人影院永久免费观看网址| 日本一区二区成人在线| 日本一区三级韩国| 99热18这里只有精品| 密臀视频三区免费网站| 日韩无码操逼片| 国产成人综合网| 99热在线不卡| 欧美色图综合网| 亚洲av影音先锋| 国产乱婷婷精品二区三区| 九九人妻| 国产又黄又爽又刺激久久久久久 | 91性情| 亚洲欧洲精品视频发布| 花野真衣| 亚洲熟女一区二区| 亚洲欧洲综合av在线| 国产刺激视频| 懂色av中文字幕一区二区三区天美| 亚洲超碰97| 搡老熟女老女人老熟妇免费视频| 超碰97玖玖爱| 亚洲人天堂| 亚洲精品中文字幕一区在线视频| 亚洲熟女综合| 久久97精品久久久久久久不卡| 一级黄色性爱A级片| 男人的天堂激情| 91A欧美电影网站| 亚洲操逼无码| 福利天堂| 日本一区二区三区午夜观看| 伊人久久88国产女| 深夜激情| 人看人人摸人人操| 是还免费视频1727我| 亚洲精品自拍| 欧美大香蕉卡久久| 久久一区二区蜜桃| 亚洲成av人片色午夜乱码| 97碰碰日本乱偷人妻中文的| 亚洲av噜噜噜噜噜噜| 91neishe| 大香蕉中文在线| 五月天婷婷激情| 天堂亚洲精品| 综合色播| 99re视频在线播放青草| 亚洲五月婷婷| 精品在线78| 韩国黄色片精品久久久| 情色五月天就去干| 亚洲Av无码成人精品国产| 国产欧美黑人丰满在线| 岛国黄色短视频| 欧美色图人妻| 人人干人人操人人..com| 精品乱码在线观看| 91人妻尻屄视频| 狠狠操狠狠燥| 无码自拍SM| 久久久女人| 亚洲男人天堂Av| 丰满人妻一区二区三区| 一区久久久二区| 摸奶性爱视频网站在线免费播放| 青青草伊人久久| 亚洲AV无码翔田千里网站| 欧美影音在线| 国产免费一区在线观看| 亚洲 欧美 第一页| 亚洲精品久久久久久久久豆丁网| 91香蕉国产尤物视频| 日韩一级二级在线| 欧美一区二区三区另类精品| 亚洲怡春院| 97天堂| 亚洲成a人v欧美综合天堂下载| 黄色二级片网站| 性久久| 人妻少妇精品无码专区二区密桃| 91日韩在线| 性色AV网站| 久久熟女久| 欧美色五月| 超碰97人妻免费在线| 欧美少妇高潮久久91| 亚洲成?V人片在线观看福利| 亚洲动态色图| 97视频www| 欧美日韩成人在线| 98人妻精品一区二区色欲| 无码人妻精品一区二区三区九九| 破苞ⅩXXX性无码动漫无码| 日韩综合色图| 国产精品不卡一区二区三区| 日韩精品一区的| 婷婷伊人五月| 亚洲,欧美,综合网| 啊啊啊啊视频免费| 亚洲综合中文字幕有码| 少妇久久| av草草在线电影| 熟女一区二区| 免费一级欧美片片线观看| 久久久久久网址| 视频在线97| 婷婷五月天久久精品视频一区二区三区| 美国一区二区三区视频| 美女诱惑久久| 天天爱综合网| 4141514逼喷水三级片| 黄片无码在线制服| 欧美不卡在线一区二区| 東南亚性呦成人伦理资源在线视频| 啊嗯好大视频在线观看| 日韩av乱伦| 91社操逼| 三级日本一区二区三区| 日本精品一区二区不卡| 国产99999久久精品| 男女打扑克高清网站| 亚洲精品日日夜夜52| 日韩无码操逼片| 久久91| 91制服丝袜| 蜜臀久久精品久久久久视频| 欧美日韩222| 东京热男人的天堂网| 丝袜熟女一区二区三区| 74成人在线| 国产品精品自在在线午夜免费| 欧美图片校园春色| 91色综合色| 91久久久老司机| 97综合国产精品高潮久久| 99re9在线| 97婷婷色| 操一区| 国模吧 一区二区三区| 国产69精品久久久久99尤物| 欧美日韩另类在线播放| 五月丁香黄色网| 神马久久久久久| 人妻少妇精品视频一区二区三区| 久久婷婷苹果| 久久久久久久久久久精| 中文字幕精品专区搜索结果91| 六月婷婷一区二区三区| 久久99999| 丝袜视频一区二区在线播放国产中文| 91大神电影天堂| 超碰国产情侣自拍网| 97亚洲综合电影| 欧美第一页性| 日本一区二区电影网站| 嗯嗯嗯啊啊啊在线免费观看| 大香蕉伊人色偷偷在线| 骚逼高潮久久精品| 亚洲美乱| 欧美狠狠弄| 99蜜桃臀亚洲成人在线观看| 久久一二三四五六七八九区区| 丝袜综合| 日韩欧美天天爽爽爽天天爽爽 | 大香蕉乱伦视频网| 这里只有精品视频在线| 五月婷婷六月丁香| 手机av天堂久久久久| 人人操天天爽| 97超碰亚洲| 日日干夜夜骑| 久久日韩肥臀| 国产精品久久久 | 射丝袜高跟鞋99| 1二区9| 五月天AV资源| 精品久久久久久久| 国产精品久久天天干| 多毛小伙内射老太婆 | 97超碰伊人| 中文字幕97| 激情抓乳插进去啪啪啪日韩| 乱伦日本色图AⅤ| 天天干天天爽| 色欲人妻一区二区在线| 午夜精品久久久99热蜜桃的功能特点| 亚洲情色 自拍| 日本视频在线中文字幕| 青青操综合网| 日韩啪啪啪啪啪| 美欧老女人97| 96国产精品| 亚洲男人综合| 3p国产欧美99热| 国内精品不卡无毒99999| 亚洲熟女乱综合一区二区三区 | 五月天偷拍| 夜夜国产一区| 精品玖九九久| 91精品久久久| 天天日天天操心| 97公开久久| 亚洲 在线| 亚洲成人免费中文字幕| 密桃99999| 亚洲凸凹超碰成人| 欧美成人性活片| 福利在线观看一区二区| AV色天香在线| 久久风骚城市人| 欧美偷拍区| 麻豆国产尤物AV| 免费超碰97久久| 久久久久少妇| 国模精品娜娜一二三区| 久久神马影院| 天天综合网~91| 熟女字幕| 青青操在线亚洲视频观看欧美在线 | 97天天操天天干| 性色A∨91| 日本精品第一视频在'| 久草婷婷| 97色97干| 九九热精品| 啊啊啊啊啊舒服| 精品国产一区二区三区在线播出| 综合熟女| 美女上床网站| 日本丝袜人妻内射| 鸥美精品一区二区久久婷婷| 欧美97超碰| 丁香五月天激情| 人妻天天爽夜夜爽2| 国产成年精品高清在线观看91| 俺去久久| 91一区二匹| 激情网五月天| 新怡红院| 亚洲精品久久久久久久蜜桃臀| 十八禁一区二区无码观看| 91性高朝久久久久久久久| 青娱乐亚洲热| 超碰欧美97| 一二三四日本视频高清| 大香蕉中文在线| 欧美九9 9 9| 激情欧美97| 亚洲日韩一区电影| 九九九九精品精| 东京热亚洲一区二区| 干B网| 成人 日韩欧美一区| 久久精品国产亚洲av水密被窝| 久操热线| 加勒比海人人操超碰在线| 日本99热| 国产97免费视频| 亚洲影视综合网| 2020久久免费视频| 亚洲男人的天堂一区二区| 亚洲无码偷拍| 国产91精品久久久久久久网曝门| 日韩欧美操逼xxx| 久久久不卡区一区二区三区久久久| 日本人妻中文字幕精品| 99只有精品| 亚洲最大的综合性av| 后入式福利| 丁香五月色| 免费观看日本操逼视频| 人妻无码后入| 国产精品欧美日韩久久| 91九色丰满高潮| 亚洲综合在线视频| 2020久久免费视频| 制服少妇欧美| 国产精选三级在线观看| 91黄站| 激情文学 国产一二三aV| 久久精品日韩| 深夜激情| 97网址www| 国产一在线观看| 人妻人久久精品中文字幕| 日产狠狠干| 国产狂喷潮在线精品| 少妇丝袜在线观看AV| 久久激情网| 日本黄大片在线观看视频| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 婷婷五月天社区| 欧美v亚洲v综合v国产v妖精| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊| 狠狠色狠狠色狠狠五月| 欧美 亚洲精品首页| 久久伊人网视频一区二区三区| 能在线播放的国产三级| 大香蕉日韩| 极品后入免费视频| 99热综合| 精品成人亚洲午夜电影| 99热这里都是精品| 神马久久网| 五月丁香啪| 草草影院最新网址| 日韩99999| 无码人妻精品一区二区三区九九| 99re在线观看| 伊人精品久久网站| 91日韩国产欧美亚洲另类精盘州至城都| 色999偷自拍拍| 成人短视频在线观看| 中文人妻av高清一区| 亚洲欧美日韩不卡人妻| 亚洲熟女一区| 强奸少妇AV导航网| 91精品国产麻豆国产自产在| 被男人吃奶很爽的毛片| 大香蕉99999| 91青青在线视频| 久草婷婷| 97干日韩| 色五月激情综合网| 强奸乱伦大香蕉| 黄片视频观看| 国产精品乱码久久久| 中国熟女91| 欧美日韩婷婷中文| 九久久九精品视频| 大香蕉婷婷| 熟女人妻一区二区三区| 亚洲密乳AV| 秋霞怕怕片| 成人国产二区三区在线,男女精品。| www.男人天堂| 日韩国产十八禁| 按摩中文字幕| 爽爽淫人网| 亚洲夜夜欢无码一区二区| 国产极品美女高潮无套在线观看| 国产美女在线精品免费看| 嗯嗯啊好爽| 欧美成人精品欧美一级乱黄一区二…| 青草影院内射高潮| baiduhicn.com。| 青青草色情网站视频| 人妻在线中出视频| 亚洲欧洲美腿丝袜| 伊色综合天堂色97| 夜夜嗨一区二区| 婷婷五月天补不补| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 中美日韩毛片| 精品欧美А∨无码黑人大荫蒂 | 嗯啊啊啊轻点视频 | 成人青青草原伊人| 97综合久第一页| 国产超碰欧美| 99最新日韩偷拍视频| 亚洲加勒比色图| 日本高清视频在线观看黄已三辽| 欧美色图在线视频少妇| 欧美激情亚洲情色| 九九热午夜欧亚国产视频| 精品视频久久区| 色97国产69香蕉| 欧美综合色图片| 资源新线在线天堂| 中文字幕后石码三区四区| 国产精品久久久啊| 热思思免费视频| 中文字幕精品一区二| 尤物黄色在线观看网站| 乱伦AVxx| 99啪啪| 婷婷三区| 欧美猛交黑寡妇中文字幕| 五月天欧美色图|