• 所以定时任务在平时开发中并不少见,而且对于现在快速消费的时代,每天都需要发送各种推送,消息都需要依赖定时任务去完成,应用非常广泛。

    xxl-job主要分为调度中心和执行器,简单来讲,调度中心就是后台管理,执行器就是执行定时任务的,就这么理解就行,没那么高大上。

    二、所需工具

    使用xxl-job需要先配置好maven、java环境,接下来先把所需要的工具都下载到本地

    下载xxl-job源码

    https://github.com/xuxueli/xxl-job.git

    咔咔使用的编辑器是Intellij IDEA,可以下载社区版

    下载maven

    下载java并安装,下载地址

    https://www.oracle.com/java/technologies/downloads/#java8-windows

    三、配置maven

    咔咔将下载的maven放到了D盘

    修改\apache-maven-3.9.0\conf\settings.xml文件

    把本来的配置修改为圈的内容

     <mirror>
      <id>aliyunmaven</id>
      <mirrorOf>*</mirrorOf>
      <name>阿里云公共仓库</name>
      <url>https://maven.aliyun.com/repository/public</url>
     </mirror>

    复制C:\Users\Administrator\.m2到maven中

    配置环境变量

    四、配置java环境

    这里没有修改java的安装目录,直接默认安装位置到C:\Program Files\Java

    环境变量都需要配置JAVA_HOME、CLASSPATH、path

    五、验证配置是否成功

    执行以下命令看是否配置成功

    java -verison

    javac -version

    mvn -version

    六、初始化MySQL表

    # 调度数据库初始化SQL脚本位置:/xxl-job/doc/db/tables_xxl_job.sql
    cd xxl-job/doc/db
    # 登录mysql
    mysql -uroot -p
    # 执行mysql初始化脚本
    source ./tables_xxl_job.sql 或者 source 绝对路径/tables_xxl_job.sql
    # 切换数据库
    use xxl_job;
    # 查看表是否创建完毕
    show tables;

    看到xxl_job就表示数据库已经导进去了

    七、部署调度中心

    打开编辑器后需要先把maven的目录修改为咱们自己下载的

    配置完成后,右击根目录的pom.xml文件,点击maven的Reload project

    修改配置文件 \xxl-job-admin\src\main\resources\application.properties数据库配置

    在根目录执行打包命令

    maven package

    执行完成后你就会在target中看到一个jar包

    将包xxl-job-admin-2.3.1.jar通过scp命令传输到服务器中,这里咔咔使用的是虚拟机

    执行命令,启动调度中心

    java -jar xxl-job-admin-2.3.1.jar

    使用你得域名加默认端口号直接访问http://192.168.17.128:8080/xxl-job-admin/jobinfo,就会看到如下界面

    八、部署执行器

    到官方提供的默认执行器目录下执行命令mvn package

    同样会打出一个执行器的包

    把执行器的包同样通过scp命令传输到服务器上,使用命令java -jar 包名进行执行

    执行器启动成功后在调度中心的执行器管理里边就可以看到机器地址,就代表已经注册器启动成功了

    九、执行PHP脚本

    先新增一个任务

    编辑脚本内容

    在服务器的/usr/local/nginx/html/kaka目录下存在一个php文件,点击保存

    在任务管理里边点击执行一次

    在日志里边就可以看到我们PHP文件里边输出的内容

    总结

    到这里对于xxl-job的安装部署并使用就全部聊完了,通过本文你就可以使用xxl-job来执行你的PHP脚本文件了

    下期文章我们再聊在实际项目中如何使用xxl了

    03-15 09:18