码迷,mamicode.com
首页 > 其他好文 > 详细

Elastic-job使用及原理

时间:2017-04-13 00:14:25      阅读:2258      评论:0      收藏:0      [点我收藏+]

标签:server   context   nts   zookeeper   enter   install   over   www   依赖   

一、如何使用

引入maven依赖

<!-- elastic-job start -->
<dependency>
    <groupId>com.dangdang</groupId>
    <artifactId>elastic-job-lite-core</artifactId>
    <version>2.0.0</version>
</dependency>
<dependency>
    <groupId>com.dangdang</groupId>
    <artifactId>elastic-job-lite-spring</artifactId>
    <version>2.0.0</version>
</dependency>
<!-- elastic-job end -->

<!-- zookeeper -->
<dependency>
    <groupId>org.apache.zookeeper</groupId>
    <artifactId>zookeeper</artifactId>
    <version>3.4.9</version>
</dependency>

作业开发

public class TestTask implements SimpleJob{

    public void execute(ShardingContext context) {
    System.out.println("定时任务测试");
    }

}

作业配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:reg="http://www.dangdang.com/schema/ddframe/reg"
    xmlns:job="http://www.dangdang.com/schema/ddframe/job"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.dangdang.com/schema/ddframe/reg
        http://www.dangdang.com/schema/ddframe/reg/reg.xsd
        http://www.dangdang.com/schema/ddframe/job
        http://www.dangdang.com/schema/ddframe/job/job.xsd
        ">

<!-- 配置注册中心 ,任务的信息都会在zk中存储 -->
<reg:zookeeper id="regCenter" server-lists="127.0.0.1:2181" namespace="test-job"
    base-sleep-time-milliseconds="1000" max-sleep-time-milliseconds="3000" max-retries="3" />

<!-- 配置简单作业   -->
<job:simple id="testTask"
    class="com.xxx.TestTask"
    registry-center-ref="regCenter" cron="0 10 * * * ?"
    sharding-total-count="1" overwrite="true"><!-- 分片为1,即不需要分片;支持覆盖,即会用本次的配置覆盖缓存在zk中的配置 -->
    <job:event-log /><!-- job运行日志记录到log -->
    <job:event-rdb driver="${ds1.jdbc.driver_class_name}" <!-- job运行日志记录到DB, 详细参考:http://dangdangdotcom.github.io/elastic-job/post/user_guide/common/event_trace/-->
        url="${ds1.jdbc.url}" username="${ds1.jdbc.username}" password="${ds1.jdbc.password}"
        log-level="INFO" />
</job:simple>

</beans>

 

二、原理

有lite版和cloud版,我们采用的是lite版本,无中心化。

参考:http://dangdangdotcom.github.io/elastic-job/post/principles/lite/

 

三、运维工具

部署方式

部署运维平台war文件(elastic-job-lite-console.war)至任何支持Servlet的Web容器(可选)。 运维平台以war包形式提供,可自行部署至tomcat或jetty等支持servlet的web容器中。elastic-job-console.war可通过mvn install编译或maven中央仓库获取。

WEB-INF/classes/conf/auth.properties记录的是登录用户和密码

功能说明

两个维度查看:job维度、服务器维度

job维护:手动触发job,停止job,删除job,修改job配置,job状态查看。lite版本没有手动添加任务功能

Elastic-job使用及原理

标签:server   context   nts   zookeeper   enter   install   over   www   依赖   

原文地址:http://www.cnblogs.com/acyouai/p/6702044.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!