当前位置: 首页 > news >正文

网站建设免费软件新蒲建设集团网站

网站建设免费软件,新蒲建设集团网站,个人在百度上发广告怎么发,wordpress免费公司官网主题正常定时任务场景 任务1从第0秒开始执行#xff0c;执行3秒结束 任务1再从第5秒开始执行#xff0c;执行3秒结束#xff0c;以此类推 每一个任务执行都不会有冲突#xff0c;都不会有干扰#xff0c;在规定的5秒时间内#xff0c;任务1都能执行完成 定时任务的并发场景…正常定时任务场景 任务1从第0秒开始执行执行3秒结束 任务1再从第5秒开始执行执行3秒结束以此类推 每一个任务执行都不会有冲突都不会有干扰在规定的5秒时间内任务1都能执行完成 定时任务的并发场景 什么是定时任务的并发 任务2从第0秒开始执行执行7秒结束这个定时任务 任务2再从第5秒开始执行这时第一个定时任务由于数量大尚未执行完成任务2 开始第2次任务开始执行7秒结束但是任务2执行的第一次和执行第二次有重叠部分这一部分成为定时任务的并发这一部分有可能处理相同的数据。 案例理解在定时定点给一个用户发短信一个用户只发一次如果是定时任务并发有可能给同一个用户发送2次短信 定时任务并发代码演示 package com.gblfy.job;import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import java.time.LocalTime;public class MyJob implements Job {Overridepublic void execute(JobExecutionContext context) throws JobExecutionException {LocalTime localTime LocalTime.now();System.out.println(Thread.currentThread().getName()开始执行 localTime);try {//休眠7秒Thread.sleep(7000);} catch (InterruptedException e) {e.printStackTrace();}LocalTime endTime LocalTime.now();System.out.println(Thread.currentThread().getName()结束执行 endTime);} } 找一组分析一下 Worker-1开始执行17:55:08 Worker-2开始执行17:55:12 Worker-1结束执行17:55:15 Worker-3开始执行17:55:17 Worker-2结束执行17:55:19 Worker-1开始执行17:55:22 Worker-3结束执行17:55:24定时任务并发数据开始分析 Worker-1和Worker-2 开始执行间隔5秒 Worker-1 开始执行和Worker-1 结束执行 间隔7秒Worker-2和Worker-3 开始执行间隔5秒 Worker-2 开始执行和Worker-2 结束执行 间隔7秒Worker-3和Worker-1 开始执行间隔5秒 Worker-3 开始执行和Worker-3 结束执行 间隔7秒如何防止定时任务并发 在Job类上添加DisallowConcurrentExecution注解 防止并发示例 package com.gblfy.job;import org.quartz.DisallowConcurrentExecution; import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import java.time.LocalTime;DisallowConcurrentExecution public class MyJob implements Job {Overridepublic void execute(JobExecutionContext context) throws JobExecutionException {LocalTime localTime LocalTime.now();System.out.println(Thread.currentThread().getName() 开始执行 localTime);try {//休眠7秒Thread.sleep(7000);} catch (InterruptedException e) {e.printStackTrace();}LocalTime endTime LocalTime.now();System.out.println(Thread.currentThread().getName() 结束执行 endTime);} } 找一组分析一下 Worker-1开始执行18:08:17 Worker-1结束执行18:08:24 Worker-2开始执行18:08:24 Worker-2结束执行18:08:31 Worker-3开始执行18:08:31 Worker-3结束执行18:08:38 Worker-1开始执行18:08:42 Worker-1结束执行18:08:49定时任务并发数据开始分析 Worker-1 开始执行和结束执行 间隔7秒 Worker-2 开始执行和结束执行 间隔7秒 Worker-3 开始执行和结束执行 间隔7秒Worker-2 第一次执行应该是 Worker-2开始执行18:08:22但是由于Worker-1还没有结束等待Worker-1执行完成后Worker-2开始执行Worker-3 第一次执行应该是 Worker-3开始执行18:08:27但是由于Worker-2 还没有结束等待Worker-2执行完成后Worker-3开始执行Worker-1 第二次执行应该是 Worker-1 开始执行18:08:32但是由于Worker-3 还没有结束等待Worker-3 执行完成后Worker-1开始执行单这次定时任务会触发Qartz的Misfire的错过机制等到下一个节点执行第2次的Worker-1 Worker-3结束执行18:08:38 Worker-1开始执行18:08:42 从以上数据可以看出当地二次执行 Worker-1时按照上面的规则应该是Worker-1开始执行18:08:38对吧 第1次错过执行Worker-2 第2次错过执行Worker-3 当错过2次定时任务就会Qartz的Misfire的错过机制Qartz的Misfire的错过机制 当定时任务错过2次之后会触发Qartz的Misfire的错过机制触发及之后上面的错过的2次定时任务会取消等到下一个节点执行定时任务。
http://www.pierceye.com/news/415484/

相关文章:

  • 邓修明调研成都网站建设鞍山建一个网站大概要多少钱
  • 聊城网站开发公司专业开发小程序公司
  • 三门峡网站建设推广用个人电脑做服务器建网站
  • 黄冈论坛交友网站首页seo怎么做
  • 网站注册域名 免费网站建设进度及实施过程
  • 如何购买一个网站的域名小程序开发公司网
  • 产品包装设计素材网站均安建网站
  • 甘肃建设网站找别人做网站需要注意什么
  • php做电子商城网站创业找项目
  • 网站建设建设公司有哪些帝国手机网站cms系统
  • 网站设计包括什么软件房产交易网上预约平台
  • 企业做网站有什么好处坏处四川住房城乡和城乡建设厅网站首页
  • 小学学校网站建设计划广州seo顾问服务
  • 做淘宝素材网站哪个好用网站制作网站建设需要多少钱
  • 住房建设部官方网站设计费计取wordpress仿百度搜索主题
  • 云建站平台哪家好沈阳百度seo关键词排名优化软件
  • 响应式网站设计的优点国内优秀设计网站
  • 网站开发集成环境国内html5网站欣赏
  • iis7.5 没有默认网站北京seo的排名优化
  • 两学一做网站是多少钱营销型网站策划怎么做
  • 渭南做网站的自建房设计图
  • 移动网站建设价格线上推广专员是干嘛的
  • 做化妆刷的外贸网站企业网站托管备案
  • 湖南省建设干部学校 网站金融直播室网站建设
  • 贵州建设厅特殊工种考试网站photoshop平面设计教学视频
  • 怎么推广我的网站代理网站推荐
  • wordpress主题站模板做网站跟做APP哪个容易
  • 杭州网站建设公司推荐网站建设优化服务渠道
  • php是网站开发语言吗做网站前端需要编程基础吗
  • python 网站开发 前端企业信用信息系统官网