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

高明铝业网站建站机械加工网状花纹

高明铝业网站建站,机械加工网状花纹,名风seo软件,网站建设服务合同模板下载这里写目录标题 使用异步启动可能出现的问题排查代码中添加的定时任务步骤是否正确排查是否任务阻塞#xff0c;如果定时任务出现异常阻塞后#xff0c;将不会在次执行java中多个Scheduled定时器不执行为了让Scheduled效率更高#xff0c;我们可以通过两种方法将定时任务变成… 这里写目录标题 使用异步启动可能出现的问题排查代码中添加的定时任务步骤是否正确排查是否任务阻塞如果定时任务出现异常阻塞后将不会在次执行java中多个Scheduled定时器不执行为了让Scheduled效率更高我们可以通过两种方法将定时任务变成多线程执行方法1、在启动类中配置TaskScheduler线程池大小方法2、利用Spring提供的Async注解和EnableAsync注解 方法三 主启动类添加线程或者使用配置类的形式定时任务测试 **是因为springboot默认给定时任务配置的线程池只有一个线程当很多个定时任务都加了异步注解没有配置线程池时他们会因为只有一个线程出问题。 因为springboot的定时任务默认的线程池只有一个线程就算加了异步,也不能使得一个任务结束下个任务才能开始所以要配置一下或者重写定时任务的线程池,也可以将异步注解去掉,将异步注解去掉,springboot就会给定时任务配置一个固定的线程,不受干扰. 没有配置定时任务线程池时,默认用的是springboot分配给定时任务的线程池SimpleAsyncTaskExecutor,当一个服务定时任务过多时,会有问题比如你一个任务的周期是5秒 这5秒你要发送100条短信用之前的固定的线程肯定没有问题现在你改成多个线程。5秒如果你上个任务没有执行完成那现在你任务的第二个周期到了还是会执行如果没有控制可能会重复发 ** 使用异步启动可能出现的问题 会有问题比如你一个任务的周期是5秒 这5秒你要发送100条短信用之前的固定的线程肯定没有问题现在你改成多个线程。5秒如果你上个任务没有执行完成那现在你任务的第二个周期到了还是会执行如果没有控制可能会重复发 排查代码中添加的定时任务步骤是否正确 启动类上加 EnableScheduling 注解 定时任务类上加Component 定时方法上加Scheduled 排查是否任务阻塞如果定时任务出现异常阻塞后将不会在次执行 解决进行try…catch异常抛出java中多个Scheduled定时器不执行 原因是Scheduled注解会在默认情况下以单线程的方式执行定时任务。 这个“单线程”指两个方面 如果一个定时任务执行时间大于其任务间隔时间那么下一次将会等待上一次执行结束后再继续执行。 如果多个定时任务在同一时刻执行任务会依次执行为了让Scheduled效率更高我们可以通过两种方法将定时任务变成多线程执行 方法1、在启动类中配置TaskScheduler线程池大小 Bean public TaskScheduler taskScheduler() { ThreadPoolTaskScheduler taskScheduler new ThreadPoolTaskScheduler(); taskScheduler.setPoolSize(10);//不配置默认是1 return taskScheduler; } 方法2、利用Spring提供的Async注解和EnableAsync注解 Component EnableAsync //开启异步支持 public class TimedTask{ Async // 对某个方法进行异步执行 Scheduled(initialDelay 1,fixedDelay10000)//initialDelay 在容器启动后延迟1毫秒再执行一次定时器 //fixedDelay 以上一次方法执行完开始算起如上一次方法执行阻塞住了那么直到上一次执行完并间隔给定的时间后执行下一次 public void aa() { //执行业务逻辑 }Async Scheduled(initialDelay 1,fixedDelay10000) public void bb() { //执行业务逻辑 } 方法三 主启动类添加线程 复制代码 Beanpublic Executor executor1() {ThreadPoolTaskExecutor executor new ThreadPoolTaskExecutor();executor.setThreadNamePrefix(test-schedule1-);executor.setMaxPoolSize(20);executor.setCorePoolSize(15);executor.setQueueCapacity(10);executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());return executor;} 复制代码或者使用配置类的形式 Configuration EnableAsync public class ExecutorConfig {Beanpublic Executor executor1() {ThreadPoolTaskExecutor executor new ThreadPoolTaskExecutor();executor.setThreadNamePrefix(test-schedule1-);executor.setMaxPoolSize(20);executor.setCorePoolSize(15);executor.setQueueCapacity(10);executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());return executor;}Beanpublic Executor executor2() {ThreadPoolTaskExecutor executor new ThreadPoolTaskExecutor();executor.setThreadNamePrefix(test-schedule2-);executor.setMaxPoolSize(20);executor.setCorePoolSize(15);executor.setQueueCapacity(10);executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());return executor;}}定时任务测试 Component Slf4j EnableScheduling public class test {Async(executor1)  //指定线程池bean的名字 为什么是这个名字,可以自行学习下spring 关于bean的生命周期和创建过程Scheduled(cron 0 0/1 * * * ?)public void test() {System.out.println(Thread.currentThread().getName());} } 复制代码 Component Slf4j EnableScheduling public class test1 {AsyncScheduled(cron 0 0/1 * * * ?)public void test1() {System.out.println(Thread.currentThread().getName() -------);} } 执行结果 可以看到未指定线程池,默认就会使用的是SimpleAsyncTaskExecutor 也可以选择不配置异步,用同步,那么springboot就会给它分配固定的线程,不会被干扰 – 没有配置定时任务线程池时,默认用的是springboot分配给定时任务的线程池SimpleAsyncTaskExecutor,
http://wiki.neutronadmin.com/news/73026/

相关文章:

  • 东胜网站制作中电建铁路建设公司网站
  • icp网站域名怎么填写乔拓云的品牌推广方案
  • 淘宝网网站开发沃尔沃公司网站建设
  • 做神马网站快速排国内上市的网络公司排名
  • 泌阳专业网站建设wordpress 置顶特色
  • 深圳制作网站主页wordpress在国内很慢
  • 支付网站建设的分录设计有特色的网站
  • 大一学生做的网站游戏网
  • 怎样提升网站流量俱乐部网站方案
  • 绵阳优化网站排名wordpress修改网站菜单位置
  • 自己做的网站如何上线百度竞价推广运营
  • 各种网站推广方案是什么
  • 深圳建设工程招投标网站可以做审计初级题的网站
  • 浠水做网站的建立企业网站要多少钱
  • 建宣传网站随州建设网站
  • 营销网站制作流程wordpress邮箱模板
  • 快速优化网站排名软件婚庆公司
  • 沈阳高铁站dw怎么导入网站模板
  • wordpress笑话站主题浙江建设信息港网址
  • 建设工程监理是干什么的昆明市网络优化案例
  • 网站项目综合设计作业 代做番禺人才网车床工铣床工招聘
  • 带着做计算机项目的网站k歌里的相片是通过网站做的吗
  • 坑梓网站建设信息禅城网站建设费用
  • 学校建设评建工作网站珠海网站设计平台
  • 订阅号自定义可以做链接网站不知名的集团门户网站建设费用
  • 网站建设需要的客户资料黄页88企业名录
  • 网站常规后台开通网站需要什么手续
  • 茂名免费自助建站模板景观园林设计公司
  • 网站备案名字做带会员后台的网站用什么软件
  • 上海网站备案在哪里免费的网站域名和空间