msa-scheduler-use
Introduction
msa-scheduler是为调度众多定时任务而生的调度中心,msa-scheduler单机最大可承受几万个定时任务的执行,可采用集群模式,可将定时任务平均 分配到各个集群节点,减轻单机执行任务的负担,有如下特点:
- 可伸缩
- 错失触发
- 任务优先级
- 发送http请求调用任务,将定时任务从应用中解耦(支持spring cloud eureka服务发现、microcmpt服务发现以及传统的url)
Quick Start
step1:下载zip并解压
step2:执行doc下的sql脚本
step3:启动scheduler
- [windows] 执行scheduler.cmd脚本
- [linux] 执行scheduler.sh脚本
step4:添加一个定时任务
访问http://localhost:8080/scheduler-ui.html,新增任务
Open mail notification
step1:通过提供的工具,对scheduler.mail.password加密并修改config/scheduler.properties中scheduler.mail.password的值
工具下载:mail-encrypt
step2:运行加密工具包
java -jar mail-encrypt.jar
step3:根据提示,输入你要加密的邮箱授权码,按回车键,加密后的密码会显示在窗口下方
Please input your encode data:
123456
After your encode data is:MTIzNDU2MXEydzNlNHIhQCMk
Properties Introduction
属性 | 值 | 说明 |
scheduler.zk.enable | true/false | 开启zk服务注册中心,默认为false |
scheduler.zk.addresses | localhost:2181 | zk访问地址,根据自己的zk地址而定,多个以英文逗号分隔 |
scheduler.mail.enable | true/false | 是否开启发送邮件通知 |
scheduler.mail.host | 示例格式:smtp.qq.com | 邮箱主机服务器地址 |
scheduler.mail.username | 示例格式:1378127237@qq.com | 发送人邮件地址 |
scheduler.mail.password | 发送人邮箱授权码,加密后的 | |
scheduler.mail.protocol | smtp | 邮箱协议,默认为smtp |
scheduler.mail.to | 示例格式:1378127237@qq.com | 接收人邮箱地址,多个以英文逗号分隔 |
scheduler.mail.properties.mail.smtp.auth | true/false | 邮箱授权 |
scheduler.mail.properties.mail.smtp.starttls.enable | true/false | 开启tls |
scheduler.mail.properties.mail.smtp.stattls.required | true/false | ttl是否必要 |
scheduler.quartz.threadPool.threadCount | 示例格式:13 | quartz核心线程池大小 |
scheduler.quartz.dataSource.quartzDS.driver | 示例格式:com.mysql.jdbc.Driver | mysql数据库驱动类,如果是6.0版本以上驱动类注意 |
scheduler.quartz.dataSource.quartzDS.URL | 示例格式:jdbc:mysql://localhost:3306/quartz?characterEncoding=utf-8&useSSL=false | mysql数据库地址 |
scheduler.quartz.dataSource.quartzDS.user | 示例:root | 数据库用户名 |
scheduler.quartz.dataSource.quartzDS.password | 示例格式:123456 | 数据库密码 |
scheduler.quartz.dataSource.quartzDS.maxConnections | 示例格式:5 | 数据库最大连接池大小 |
scheduler.quartz.jobStore.isClustered | true/false | 开启集群 |
scheduler.quartz.jobStore.clusterCheckinInterval | 示例格式:15000 | 集群节点心跳检测时间 |
scheduler.okhttp.connect-timeout | 示例格式:20 | http连接超时时间,单位:秒 |
scheduler.okhttp.read-timeout | 示例格式:30 | http读超时间,单位:秒 |
scheduler.okhttp.write-timeout | 示例格式:30 | http写超时间,单位:秒 |
scheduler.okhttp.retries | 示例格式:3 | http请求重试次数 |
scheduler.quartz.threadPool.threadCount | 示例格式:13 | quartz核心线程池大小 |
scheduler.eureka.client.enable | true/false | 是否启用eureka服务注册中心 |
scheduler.eureka.client.defaultZone | 示例格式:http://localhost/eureka/ | eureka服务注册中心url |