zoukankan      html  css  js  c++  java
  • 使用xxl-job框架,小白戳进来

    官方文档在这里:http://www.xuxueli.com/xxl-job/#/

    看这类型框架,先去了解一下分布式和集群的概念。

    先去https://gitee.com/xuxueli0323/xxl-job(码云)或者GitHub上把源码撸下来是没有错的,我这里是去码云上在idea开发环境clone下来的,完了,看文档

    2.2编译源码,有源码结构,说的很清晰哦,说:xxl-job-admin:调度中心,,在往下看就知道调度中心的作用了。(具体部署接着下面文档看啊,我这边就说我的使用流程)所以,可以先启动调度中心,让xxl-job-admin这个项目跑起来,怎么跑?没有jetty的就用Tomcat跑,把调度中心项目打war包放到Tomcat webapp下(我没实际操作过听说的),我这边是配置的jetty嘛,

    在xxl-job-admin下找到pom.xml,打开,先加入依赖,和其他类似的位置

     <!-- jetty -->
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-webapp</artifactId>
                <version>9.4.7.v20170914</version>
                <scope>test</scope>
            </dependency>

    </dependencies>后面(换行)加入以下代码:

    <build>
            <finalName>xxl-job</finalName>
            <plugins>
                <plugin>
                    <groupId>org.eclipse.jetty</groupId>
                    <artifactId>jetty-maven-plugin</artifactId>
                    <version>9.4.7.v20170914</version>
                    <configuration>
                        <!--<jvmArgs>-Xms128M -Xmx512M -XX:PermSize=120M -XX:MaxPermSize=120M</jvmArgs>-->
                        <httpConnector>
                            <port>8084</port>
                        </httpConnector>
                        <systemProperties>
                            <systemProperty>
                                <name>spring.profiles.active</name>
                                <value>development</value>
                            </systemProperty>
                        </systemProperties>
                        <useTestClasspath>true</useTestClasspath>
                        <stopKey>foo</stopKey>
                        <stopPort>8989</stopPort>
                        <webAppConfig>
                            <contextPath>/</contextPath>
                        </webAppConfig>
                    </configuration>
                </plugin>
            </plugins>
        </build>

    看右侧,如下图:启动jetty(双击)

    启动过程如发现端口有冲突,pom.xml刚刚配置改端口。启动成功。

    本地访问localhost:8084,调度中心页面启动。

    文档说:xxl-job-executor:执行器示例,看2.4章节 作用和建议,我们就用他说的xxl-job-executor-sample-spring这个好了,人家括号里说明了(可直接使用,也可以参考其并将现有项目改造成执行器),我就把这个项目考在自己的项目下跑啦,怎么考呢?如图,这两个文件,修修改改到自己的项目的配置文件里啊。配置里面的执行器的一些配置其实就是你调度中心,执行器管理里面新增的数据参数哦。再就是把DemoJobHandler这个考到自己的项目下,我是拷到项目的service下的了。然后跑自己的项目,(还有一个很重要,在文档1.4下说中央仓库地址,请把这个引入自己项目的pom.xml下吧);

    启动自己项目,处理报错异常,直到启动成功!地址栏输入自己的ip:9998(配置里默认的)

     执行器成功了!

    再回到调度中心,任务管理,新增任务,测试嘛,就默认,然后输入主要是JobHandler填demoJobHandler,注解里的value,如下图:

    Cron*是什么?自行百度啊,我这里给一个一分钟执行一次的规则:0 0/1 * * * ? *

    确定执行器任务管理和你的配置数据对应的,然后可以启动执行,是否成功查看调度日志,没有成功就排查错误吧,我这边操作流程就是这样的,最后是成功的,当然也遇到很多问题咯,调度中心文档也说了,关于数据库自己本地弄一个mysql数据库,连接的时候就连接本地的,流程就是这样,希望可以帮助一些第一次接触这些分布式框架的人 

  • 相关阅读:
    聊下 git 使用前的一些注意事项
    .NET架构设计、框架设计系列文章总结
    聊下 git remote prune origin
    聊下git pull --rebase
    聊下git merge --squash
    git 命令使用总结
    聊下 git rebase -i
    ElasticSearch大数据分布式弹性搜索引擎使用
    DDD实施经验分享—价值导向、从上往下进行(圈内第一个吃螃蟹DDD实施方案)
    SaaS产品项目实施流程
  • 原文地址:https://www.cnblogs.com/maku/p/8267784.html
Copyright © 2011-2022 走看看