本文已参与「新人创作礼」活动,一起开启掘金创作之路。
简介:Quartz是一个任务调度框架,简单来说,就是在某个时间点 、时间段,做某件事。
—— 核心概念
Job:代表一个工作,要执行的具体内容。这是一个接口,可实现该接口,重写execute方法(做什么)
JobDetail:代表一个具体的可执行的调度程序,Job是这个可执行程序所要执行的内容
Trigger:代表一个调度参数的配置,什么时候去调用执行(什么时候做)
Scheduler:代表一个计划调度容器,一个调度容器中可以注册多个JobDetail和Trigger。当容器启动时,里面的每个JobDetail都会根据Trigger条件自动地执行。Scheduler是个容器,容器中有一个线程池,用来并行调度执行每个作业,这样可提高容器的效率。
SchedulerFactory:代表一个工厂,用来创建一个Scheduler调用容器。
原理图
——Cron表达式
组成
符号
springboot整合Quartz地址:github.com/xulejun/boo…
在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的服务节点调用来协同产生最后的结果,每一个前段请求都会形成一个复杂的分布式微服务调用链路,链路中的任何一个节点出现错误或者高延迟都会导致整个链路的调用失败。
Sleuth
完整调用链路
- 一条链路通过Trace id唯一标识,Span标识发起的请求信息,各Span通过parent id关联起来
- Trace:类似于树结构的Span集合,表示一条调用链路,存在唯一标识
- Span:表示调用链路来源,可以理解为一次请求信息
实操
- Zipkin下载配置:
- 下载链接:dl.bintray.com/openzipkin/…
- 下载此版本——zipkin-server-2.12.9-exec.jar
- cmd运行:
java -jar zipkin-server-2.12.9-exec.jar - 访问地址:http://localhost:9411
- 与项目整合配置
- pom文件
<!-- 包含了sleuth zipkin 数据链路追踪-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
- yml文件
spring:
application:
name: cloud-order-service
zipkin:
base-url: http://localhost:9411
sleuth:
sampler:
# 采样率值介于0到1之间,1表示全部采集
probability: 1