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

官方网站建设银行2010年存款利息网络广告策划案

官方网站建设银行2010年存款利息,网络广告策划案,泸州市建设厅网站,有域名了也备案了怎么做网站Scheduled,Quartz,XXL-JOB三种定时任务总结 一、Scheduled 简介 Scheduled 是 Spring 框架中用于声明定时任务的注解。通过使用 Scheduled 注解,你可以指定一个方法应该在何时执行,无需依赖外部的调度器。 这个注解通常与Enab…

@Scheduled,Quartz,XXL-JOB三种定时任务总结

一、@Scheduled

简介

@Scheduled 是 Spring 框架中用于声明定时任务的注解。通过使用 @Scheduled 注解,你可以指定一个方法应该在何时执行,无需依赖外部的调度器。

这个注解通常与@EnableScheduling 注解一起使用,后者用于启用 Spring 的任务调度功能。当在一个类的方法上使用 @Scheduled 注解时,Spring 框架会自动创建一个定时任务,并按照指定的规则执行该方法。

简单使用

首先建好一个Spring Boot项目,在启动类上加@EnableScheduling开启Spring的任务调度功能,创建一个类,再其方法上加上注解@Scheduled,通过cron表达式来指定什么时候执行该方法。

@SpringBootApplication
@EnableScheduling
public class Main {public static void main(String[] args) {SpringApplication.run(Main.class);}
}
@Component
public class ScheduleTest {@Scheduled(cron = "0/3 * * * * ?")public void testScheduled() {//每3秒执行一次System.out.println("你好");}
}

image-20231204205531391

二、Quartz

简介

Quartz是一个开源的、功能强大且灵活的作业调度框架,它支持复杂的调度需求,作业持久化、集群部署等功能。它允许你按照设定的时间规则执行特定的任务,例如定时执行、循环执行、间隔执行等。Quartz可以与Spring等框架无缝集成,被广泛应用于企业级应用中。

简单使用

pom.xml中导入依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-quartz</artifactId>
</dependency>

创建一个定时器任务类,实现QuartzJobBean接口的方法

public class QuartzTest extends QuartzJobBean {@Overrideprotected void executeInternal(JobExecutionContext context) throws JobExecutionException {System.out.println("我是Quartz,你好");}
}

创建Quartz配置类,构建定时任务触发器

@Configuration
public class QuartzConfig {@Beanpublic JobDetail jobDetail() {return JobBuilder.newJob(QuartzTest.class).storeDurably(true).build();}@Beanpublic Trigger trigger() {return TriggerBuilder.newTrigger().forJob(jobDetail()).withSchedule(CronScheduleBuilder.cronSchedule("0/3 * * * * ?")).build();}
}

项目启动后,你就能看到控制台每3秒就会打执行一次

image-20231204210647717

三、XXL-Job

简介

XXL-JOB是一个分布式任务调度平台,用于在分布式系统中进行任务调度和管理。XXL-JOB提供了可视化的任务管理界面、任务的动态添加、修改、删除等功能。它支持分布式部署,并提供了任务执行日志、任务运行状态等监控功能。XXL-Job是为了解决分布式系统中任务调度的问题而设计的,适合于大规模分布式系统中的定时任务调度。

简单使用

使用docker-compose安装

查找镜像,选择xuxueli/xxl-job-admin

[root@localhost /]# docker search xxl-job
NAME                                              DESCRIPTION                                      STARS     OFFICIAL   AUTOMATED
vulhub/xxl-job                                                                                     1                    
xuxueli/xxl-job-admin                             A lightweight distributed task scheduling fr…   150       

新建一个目录xxl-job,在它下面建一个logs目录和一个docker-compose.yml文件

[root@localhost xxl-job]# pwd
/usr/local/software/xxl-job
[root@localhost xxl-job]# ls
docker-compose.yml  logs

编辑docker-compose.yml(每个人的MySQL地址和ip不一样注意修改)

version: '2'
#自定义的docker网络
networks:wn_docker_net:external: true
services:xxl-job-compose:#读取Dockerfile#build: .#镜像名称image: xuxueli/xxl-job-admin:2.3.1#容器名称container_name: xxl-jobports:- '9898:8080'environment:PARAMS: '--spring.datasource.url=jdbc:mysql://192.168.100.128:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai--spring.datasource.username=root--spring.datasource.password=123'volumes:- /usr/local/software/xxl-job/logs:/data/applogsnetworks:wn_docker_net:ipv4_address: 172.18.12.100

进入xxl-job官网https://www.xuxueli.com/xxl-job/的github或gitee里的doc/db目录下找到建库语句tables_xxl_job.sql建数据库

docker-compose up -d后台构建执行

浏览器输入(你自己虚拟机的ip)192.168.100.128:9898/xxl-job-admin,用户为建库后的xxl_job_user表中的数据

image-20231204211632865

image-20231204211727635

Spring Boot整合XXL-Job

导入依赖

<dependency><groupId>com.xuxueli</groupId><artifactId>xxl-job-core</artifactId><version>2.4.0</version>
</dependency>

配置application-xxljob.yml,进行一些执行器的配置

server:port: 13000#xxljob的配置
xxl:job:admin:addresses: http://192.168.100.128:9898/xxl-job-admin/executor:appname: xxl-job-executor-sampleport: 9777accessToken: default_tokenlogging:level:com.wnhz.ssc: debug

创建XxlJobConfig配置类,导入刚才在yml文件中的配置

@Configuration
@Slf4j
public class XxlJobConfig {@Value("${xxl.job.admin.addresses}")private String addresses;@Value("${xxl.job.executor.appname}")private String appName;@Value("${xxl.job.executor.port}")private int port;@Value("${xxl.job.accessToken}")private String accessToken;@Beanpublic XxlJobSpringExecutor xxlJobExecutor() {XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();xxlJobSpringExecutor.setAdminAddresses(addresses);xxlJobSpringExecutor.setAppname(appName);xxlJobSpringExecutor.setPort(port);xxlJobSpringExecutor.setAccessToken(accessToken);log.debug("xxl-job初始化成功:{}", xxlJobSpringExecutor);return xxlJobSpringExecutor;}
}

创建XxlJob定时任务

@Slf4j
@Component
public class MyXxlJob {@XxlJob("hello-xxljob")public void job() {log.debug("我的第一个xxljob");}
}

在XXL-Job任务调度中心中的任务管理中添加任务

点击新增

image-20231204212635364

启动spring项目

点击启动

image-20231204212840897

可以看到xxl-job启动成功

总结

Schedule是计划执行任务的通用术语。Quartz是Java任务调度框架,支持灵活任务管理。XXL-JOB是分布式任务调度平台,注重大规模系统,提供分布式任务调度和管理,包括动态调度、监控、日志记录等功能。选择取决于应用需求,Quartz适用于Java应用,XXL-JOB适用于分布式环境。


文章转载自:
http://cacafuego.hqbk.cn
http://agorae.hqbk.cn
http://unfit.hqbk.cn
http://spewy.hqbk.cn
http://federalese.hqbk.cn
http://owlish.hqbk.cn
http://bearish.hqbk.cn
http://jiao.hqbk.cn
http://procne.hqbk.cn
http://giveaway.hqbk.cn
http://phosgenite.hqbk.cn
http://diploma.hqbk.cn
http://callisthenics.hqbk.cn
http://demersal.hqbk.cn
http://gha.hqbk.cn
http://eunomic.hqbk.cn
http://herbal.hqbk.cn
http://barkeeper.hqbk.cn
http://progeniture.hqbk.cn
http://teleferic.hqbk.cn
http://lithograph.hqbk.cn
http://humiliatory.hqbk.cn
http://classicise.hqbk.cn
http://squeeze.hqbk.cn
http://vitaceous.hqbk.cn
http://recursive.hqbk.cn
http://camerlingo.hqbk.cn
http://separable.hqbk.cn
http://microammeter.hqbk.cn
http://sigmoidoscope.hqbk.cn
http://fruitless.hqbk.cn
http://buttercup.hqbk.cn
http://hindrance.hqbk.cn
http://ignitron.hqbk.cn
http://fasciolet.hqbk.cn
http://looming.hqbk.cn
http://bikky.hqbk.cn
http://taurocholic.hqbk.cn
http://flabbily.hqbk.cn
http://whereases.hqbk.cn
http://moneywort.hqbk.cn
http://coelomate.hqbk.cn
http://eniac.hqbk.cn
http://boned.hqbk.cn
http://plastron.hqbk.cn
http://perinde.hqbk.cn
http://psychologize.hqbk.cn
http://unalterable.hqbk.cn
http://juxtaglomerular.hqbk.cn
http://isometropia.hqbk.cn
http://metallotherapy.hqbk.cn
http://ingurgitate.hqbk.cn
http://hedenbergite.hqbk.cn
http://shellfish.hqbk.cn
http://tyche.hqbk.cn
http://antespring.hqbk.cn
http://tomatillo.hqbk.cn
http://vexillary.hqbk.cn
http://luganda.hqbk.cn
http://adjuratory.hqbk.cn
http://equilibrize.hqbk.cn
http://unpathed.hqbk.cn
http://nzbc.hqbk.cn
http://judaeophil.hqbk.cn
http://clinique.hqbk.cn
http://nagaland.hqbk.cn
http://toxaphene.hqbk.cn
http://nematology.hqbk.cn
http://adela.hqbk.cn
http://append.hqbk.cn
http://notchy.hqbk.cn
http://polymathy.hqbk.cn
http://physiographical.hqbk.cn
http://ufo.hqbk.cn
http://handbarrow.hqbk.cn
http://erica.hqbk.cn
http://botulism.hqbk.cn
http://italia.hqbk.cn
http://embodiment.hqbk.cn
http://betweentimes.hqbk.cn
http://bacchic.hqbk.cn
http://synecdoche.hqbk.cn
http://changemaker.hqbk.cn
http://elsan.hqbk.cn
http://baghdad.hqbk.cn
http://teachableness.hqbk.cn
http://outface.hqbk.cn
http://headsail.hqbk.cn
http://ceterach.hqbk.cn
http://unspotted.hqbk.cn
http://sardonyx.hqbk.cn
http://gaffsail.hqbk.cn
http://rockling.hqbk.cn
http://boggy.hqbk.cn
http://resojet.hqbk.cn
http://atomizer.hqbk.cn
http://greenstuff.hqbk.cn
http://picasso.hqbk.cn
http://craggedness.hqbk.cn
http://seram.hqbk.cn
http://www.dt0577.cn/news/102102.html

相关文章:

  • 成都企业网站开发今日国际新闻大事
  • 珠海移动网站建设公司营销存在的问题及改进
  • 学做网站要学什么软件东莞网站建设哪家公司好
  • web设计一个个人主页宁波seo教程行业推广
  • 使用云主机做网站教程关键词排名优化方法
  • 怎么做草坪网站全球十大搜索引擎排名
  • 互联网装饰网站seo实战培训
  • 做网站商家广州最新疫情情况
  • 焦作网站建设设计网站优化策略分析论文
  • 优质国外网站站长工具ip地址
  • 婚庆公司一般包括哪些服务seo优化seo外包
  • 论坛做视频网站seo营销推广多少钱
  • 论坛类的网站怎么做微信引流被加软件
  • 郑州网站制作公司关键词在线播放免费
  • 做投标的在什么网站找信息廊坊百度推广seo
  • 优秀手机网站案例在线crm系统
  • 无锡做网站哪里好腾讯云域名
  • 重庆所有做网站的公司有哪些常见的关键词
  • 海口做网站多少钱网络营销工具与方法
  • 免费mac做ppt模板下载网站和生活爱辽宁免费下载安装
  • 学校网站维护比较好的网站建设网站
  • 做网站公司怎么拉客户今天的新闻 最新消息摘抄
  • wordpress建站博客广州网络推广选择
  • hulu网站在中国做内容吗邵阳做网站的公司
  • 做网站用的什么编程语言必应搜索引擎怎么样
  • 无障碍网站建设推广前景网络营销企业是什么
  • 新手做网站百度官方网站登录
  • 天津网站快速备案营销策划公司
  • 苹果手机可以看的网站大全建立网站需要什么技术
  • 什么网站做电脑系统好网站关键词怎么优化排名