首先咱先来了解一下JDK和Spring线程池对于解决定时任务的问题
在分布式服务器的情况下,每台服务器代码一致,当有controller请求时,会只有一台服务器进行处理,但是在定时任务的情况下,每台服务器都会进行定时任务,程序运行的参数存在内存当中,每台服务器的信息不能共享,不知道其他服务器正在干什么,所以说此时系统就会出现问题。
所以才采取Quartz进行解决定时任务的问题
使用Quartz的时候,程序运行的参数会存在数据库当中,因为数据只有一个,当一台服务器进行访问数据当中的任务参数时,如果任务显示是正在等待中,该服务器会进行任务处理,也会随之将任务状态修改为正在处理当中,当其他服务器访问数据库时,数据库中会显示任务正在运行,此时其他服务器就不会进行此任务处理
通过共享数据来处理定时任务



