# Task **Repository Path**: wangnian/Task ## Basic Information - **Project Name**: Task - **Description**: 超简单的SpringBoot集成Quartz的任务系统,传执行时间,到点回调的url以及参数,加入重试机制 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 7 - **Forks**: 1 - **Created**: 2017-03-09 - **Last Updated**: 2022-06-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #Task 这是超级简单的HTTP调用的定时任务系统 1.使用jdk7+Springboot+quartz+retry+redis+mail 2.默认项目端口80 3.默认redis ip:127.0.0.1 port 6379 4.默认重试次数20 间隔1S 延迟倍数1.5 5.默认日志目录,当前目录 task-logger.log 默认10M大小拆分 运行时指定配置 Java -jar wangnian-task-0.0.1-SNAPSHOT.jar --server.port=12305 --logging.file=./task-logger.log --spring.redis.host=192.168.1.204 -spring.redis.port=6379 --task.redis.key=task-key --spring.redis.database=0 端口配置 --server.port 日志位置 --logging.file redis地址 --spring.redis.host redis端口 --spring.redis.port redisKEY --task.redis.key ###访问主页 http://loclahost:12305 { "TaskList": { "3eaf1b2b-d62d-4681-9b47-09d779d4fa6c": "{\"date\":\"2017-03-09 16:25:00\",\"description\":\"这是user:123的订单失效任务\",\"bodyParameter\":\"{\\\"type\\\":\\\"order\\\",\\\"userId\\\":\\\"123\\\"}\",\"url\":\"http://localhost:12306\"}", "faa7d520-b507-4b8d-8fc6-41a969767c9e": "{\"date\":\"2017-03-09 16:25:00\",\"description\":\"这是user:123的订单失效任务\",\"bodyParameter\":\"{\\\"type\\\":\\\"order\\\",\\\"userId\\\":\\\"123\\\"}\",\"url\":\"http://localhost:12306\"}" }, "name": "任务系统", "currentTackCount": 2 } 查看所有的任务以及任务数量 ###添加任务 http调用路径 http://loclahost:12305/addTask body JSON参数 { "date": "2017-03-09 16:25:00", "cronExpression": "0/10 * * * * ? *", "description": "这是user:123的订单失效任务", "bodyParameter": "{\"type\":\"order\",\"userId\":\"123\"}", "url": "http://localhost:12306" } 返回参数: {"msg":"成功加入任务,可以根据jobKey调用/deleteTask删除任务","code":"0","jobKey":"f07afe43-ba1a-4d37-b20c-93e10b6b030d"} //code为0 成功 其他都是错误 date :任务执行时间 (date和cron二选一,如果都有只有cron生效) cronExpression:cron表达式 (date和cron二选一,如果都有只有cron生效) description:任务的描述 url:回调的url,也就是执行时间会调用该url通知你 bodyParameter: 回调时候的参数 日志:添加一个任务=任务名:3eaf1b2b-d62d-4681-9b47-09d779d4fa6c,任务时间:2017-03-09 16:25:00,任务回调地址:http://localhost:12306,任务参数:{"type":"order","userId":"123"} ###删除任务 http调用路径 http://loclahost:12305/deleteTask body JSON参数 { "jobKey": "f07afe43-ba1a-4d37-b20c-93e10b6b030d", } 返回参数: {"msg":"删除任务成功","code":"0"} //code为0 成功 其他都是错误 ###需要注意 #####因为每个任务都会存在redis,项目重启时会自动读取redis里没有执行的任务继续执行 #####每个回调地址都需要返回大写的 "SUCCESS",定时任务没有收到成功的响应会根据配置的重试机制一直重试调用