zoukankan      html  css  js  c++  java
  • xxljob 学习

    参考架构

    环境准备

    • docker-compose
    version: "3"
    services: 
      job:
        image: xuxueli/xxl-job-admin:2.3.0
        ports: 
        - "8080:8080"
        volumes: 
        - "./tmp:/data/applogs"
        - "./application.properties:/application.properties"
      mysql:
        image: mysql:5.7
        volumes:
          - ./mysql:/var/lib/mysql
        ports:
          - 3316:3306
        command:  --sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION --lower_case_table_names=1
        environment:
          MYSQL_ROOT_PASSWORD: demoapp
          TZ: Asia/Shanghai
    • 环境启动

    启动之后,需要执行sql 初始化(参考)默认密码: admin 123456
    效果

    • 代码集成
      具体可以参考github demo 中的示例,代码很简单job 开发很简单,引用core 依赖就可以了
     
     @XxlJob("shardingJobHandler")
        public void shardingJobHandler() throws Exception {
     
            // 分片参数
            int shardIndex = XxlJobHelper.getShardIndex();
            int shardTotal = XxlJobHelper.getShardTotal();
            XxlJobHelper.log("分片参数:当前分片序号 = {}, 总分片数 = {}", shardIndex, shardTotal);
     
            // 业务逻辑
            for (int i = 0; i < shardTotal; i++) {
                if (i == shardIndex) {
                    XxlJobHelper.log("第 {} 片, 命中分片开始处理", i);
                } else {
                    XxlJobHelper.log("第 {} 片, 忽略", i);
                }
            }
     
        }

    说明

    xxljob 使用是比较简单的,但是提供的能力还是很不错的,官方文档很比较完备可以方便学习

    参考资料

    https://github.com/rongfengliang/xxljob-docker-compose
    https://github.com/xuxueli/xxl-job

  • 相关阅读:
    iOS--异步下载
    linux搭建ftp服务器
    hexo常用命令
    Markdown入门
    Markdown 语法和 MWeb 写作使用说明
    vi/vim
    微信聊天机器人
    .vimrc
    配置双机
    python学习笔记(一)
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/15203698.html
Copyright © 2011-2022 走看看