zoukankan      html  css  js  c++  java
  • 分布式任务调度平台XXL-JOB

    该项目自带文档,非常之详细

    参考:https://www.cnblogs.com/xuxueli/p/5021979.html

    http://www.xuxueli.com/xxl-job/#/?id=%E3%80%8A%E5%88%86%E5%B8%83%E5%BC%8F%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6%E5%B9%B3%E5%8F%B0xxl-job%E3%80%8B

    1.怎样解除调用XXX-job  项目中 的API   登录权限问题:

     在方法上加上注解@PermessionLimit(limit = false)

    @PermessionLimit(limit = false)
    @RequestMapping("/add")
    @ResponseBody
    public ReturnT<String> add(XxlJobInfo jobInfo) {
    return xxlJobService.add(jobInfo);
    }

    解决:

     deploying project on remote server that XxlRpcException: java.lang.InterruptedException 

    依赖:

            <!-- xxl-job-core 2019-07-12,sea excludes jetty from xxl-job as there 
                is a bug at deploying project on remote server that XxlRpcException: java.lang.InterruptedException 
                , it caused by low version jetty included in xxl-job-core -->
            <dependency>
                <groupId>com.xuxueli</groupId>
                <artifactId>xxl-job-core</artifactId>
                <version>${xxljob.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.eclipse.jetty</groupId>
                        <artifactId>jetty-client</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.eclipse.jetty</groupId>
                        <artifactId>jetty-server</artifactId>
                    </exclusion>
                </exclusions>
            </dependency> 
            <dependency>
                <groupId>org.apache.skywalking</groupId>
                <artifactId>apm-toolkit-trace</artifactId>
                <version>${skywalking.version}</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-server</artifactId>
                <version>${jetty.version}</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-client</artifactId>
                <version>${jetty.version}</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-bom</artifactId>
                <version>${jetty.version}</version>
                <type>pom</type>
            </dependency>

    配置:

    ### xxl-job
    xxl.job.admin.addresses = http://${xxl.job.ip}:9761/ufl-job-admin
    xxl.job.executor.appname = milestone-reception-service
    xxl.job.executor.ip = ${xxl.job.executor.ip}
    #xxl.job.executor.ip = 192.168.180.136
    xxl.job.executor.port = 7028
    xxl.job.accessToken = 
    xxl.job.executor.logpath = /tmp/applogs/xxl-job/jobhandler
    xxl.job.executor.logretentiondays = -1

    config:

    package com.icil.elsa.milestone.comon.config;
    
    import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.context.annotation.Configuration;
    
    
    @Configuration
    @ComponentScan(basePackages = "com.sea.web.client")
    @Slf4j
    public class XxlJobConfig {
    
        @Value("${xxl.job.admin.addresses}")
        private String adminAddresses;
       /* @Value("${xxl.job.admin.appname}")
        private String adminAppName;*/
    
        @Value("${xxl.job.executor.appname}")
        private String appName;
    
        @Value("${xxl.job.executor.ip}")
        private String ip;
    
        @Value("${xxl.job.executor.port}")
        private int port;
    
        @Value("${xxl.job.accessToken}")
        private String accessToken;
    
        @Value("${xxl.job.executor.logpath}")
        private String logPath;
    
        @Value("${xxl.job.executor.logretentiondays}")
        private int logRetentionDays;
    
    
        @Bean(initMethod = "start", destroyMethod = "destroy")
        public XxlJobSpringExecutor xxlJobExecutor() {
            log.info(">>>>>>>>>>> xxl-job config init.");
            XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
            xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
            xxlJobSpringExecutor.setAppName(appName);
            xxlJobSpringExecutor.setIp(ip);
            xxlJobSpringExecutor.setPort(port);
            xxlJobSpringExecutor.setAccessToken(accessToken);
            xxlJobSpringExecutor.setLogPath(logPath);
            xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);
    
            return xxlJobSpringExecutor;
        }
    }
     
  • 相关阅读:
    移动端日期段选择,不可选过去日期,可传入不可选日期,返回数组
    移动端的silder,未封装,基于zepto的touch模块,有参照修改过touch的bug
    ajax
    简单的cookie读写封装
    自己写的,然后配合zepto+iscroll的上拉加载
    达到
    迷茫
    (转)PropertyGrid相关
    (转)使用NuGet管理项目库
    (转)DDD方面两个开宗明义的文章
  • 原文地址:https://www.cnblogs.com/lshan/p/10407755.html
Copyright © 2011-2022 走看看