mirror of
https://github.com/PowerJob/PowerJob.git
synced 2025-07-17 00:00:04 +08:00
Merge branch 'master' into jenkins_auto_build
This commit is contained in:
commit
cb2422d9ce
10
.github/workflows/docker-image.yml
vendored
10
.github/workflows/docker-image.yml
vendored
@ -13,18 +13,18 @@ jobs:
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build the Docker image
|
||||
run: mvn clean package -Pdev -DskipTests -U -e -pl oh-my-scheduler-server,oh-my-scheduler-worker-agent -am && /bin/cp -rf oh-my-scheduler-server/target/*.jar oh-my-scheduler-server/docker/oms-server.jar && /bin/cp -rf oh-my-scheduler-worker-agent/target/*.jar oh-my-scheduler-worker-agent/oms-agent.jar
|
||||
run: mvn clean package -Pdev -DskipTests -U -e -pl powerjob-server,powerjob-worker-agent -am && /bin/cp -rf powerjob-server/target/*.jar powerjob-server/docker/powerjob-server.jar && /bin/cp -rf powerjob-worker-agent/target/*.jar powerjob-worker-agent/powerjob-agent.jar
|
||||
- uses: docker/build-push-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
repository: tjqq/oms-server
|
||||
repository: tjqq/powerjob-server
|
||||
tags: latest
|
||||
path: oh-my-scheduler-server/docker/
|
||||
path: powerjob-server/docker/
|
||||
- uses: docker/build-push-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
repository: tjqq/oms-agent
|
||||
repository: tjqq/powerjob-agent
|
||||
tags: latest
|
||||
path: oh-my-scheduler-worker-agent/
|
||||
path: powerjob-worker-agent/
|
||||
|
14
.github/workflows/maven.yml
vendored
14
.github/workflows/maven.yml
vendored
@ -23,16 +23,16 @@ jobs:
|
||||
- name: Build with Maven
|
||||
run: mvn -B clean package -Pdev -DskipTests --file pom.xml
|
||||
- name: upload build result
|
||||
run: mkdir staging && cp oh-my-scheduler-server/target/*.jar staging/oms-server.jar && cp oh-my-scheduler-client/target/*.jar staging/oms-client.jar && cp oh-my-scheduler-worker-agent/target/*.jar staging/oms-agent.jar
|
||||
run: mkdir staging && cp powerjob-server/target/*.jar staging/powerjob-server.jar && cp powerjob-client/target/*.jar staging/powerjob-client.jar && cp powerjob-worker-agent/target/*.jar staging/powerjob-agent.jar
|
||||
- uses: actions/upload-artifact@v1
|
||||
with:
|
||||
name: oms-server.jar
|
||||
path: staging/oms-server.jar
|
||||
name: powerjob-server.jar
|
||||
path: staging/powerjob-server.jar
|
||||
- uses: actions/upload-artifact@v1
|
||||
with:
|
||||
name: oms-client.jar
|
||||
path: staging/oms-client.jar
|
||||
name: powerjob-client.jar
|
||||
path: staging/powerjob-client.jar
|
||||
- uses: actions/upload-artifact@v1
|
||||
with:
|
||||
name: oms-agent.jar
|
||||
path: staging/oms-agent.jar
|
||||
name: powerjob-agent.jar
|
||||
path: staging/powerjob-agent.jar
|
||||
|
18
README.md
18
README.md
@ -1,15 +1,15 @@
|
||||
<p align="center">
|
||||
<img src="https://raw.githubusercontent.com/KFCFans/OhMyScheduler/master/others/images/oms-logo.png" alt="OhMyScheduler" title="OhMyScheduler" width="557"/>
|
||||
<img src="https://raw.githubusercontent.com/KFCFans/PowerJob/master/others/images/logo.png" alt="PowerJob" title="PowerJob" width="557"/>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://github.com/KFCFans/OhMyScheduler/actions"><img src="https://github.com/KFCFans/OhMyScheduler/workflows/Java%20CI%20with%20Maven/badge.svg?branch=master" alt="actions"></a>
|
||||
<a href="https://search.maven.org/search?q=com.github.kfcfans"><img alt="Maven Central" src="https://img.shields.io/maven-central/v/com.github.kfcfans/oh-my-scheduler-worker"></a>
|
||||
<a href="https://github.com/KFCFans/OhMyScheduler/releases"><img alt="GitHub release (latest SemVer)" src="https://img.shields.io/github/v/release/kfcfans/ohmyscheduler?color=%23E59866"></a>
|
||||
<a href="https://github.com/KFCFans/OhMyScheduler/blob/master/LICENSE"><img src="https://img.shields.io/github/license/KFCFans/OhMyScheduler" alt="LICENSE"></a>
|
||||
<a href="https://github.com/KFCFans/PowerJob/actions"><img src="https://github.com/KFCFans/PowerJob/workflows/Java%20CI%20with%20Maven/badge.svg?branch=master" alt="actions"></a>
|
||||
<a href="https://search.maven.org/search?q=com.github.kfcfans"><img alt="Maven Central" src="https://img.shields.io/maven-central/v/com.github.kfcfans/powerjob-worker"></a>
|
||||
<a href="https://github.com/KFCFans/PowerJob/releases"><img alt="GitHub release (latest SemVer)" src="https://img.shields.io/github/v/release/kfcfans/powerjob?color=%23E59866"></a>
|
||||
<a href="https://github.com/KFCFans/PowerJob/blob/master/LICENSE"><img src="https://img.shields.io/github/license/KFCFans/PowerJob" alt="LICENSE"></a>
|
||||
</p>
|
||||
|
||||
OhMyScheduler是基于Akka架构的新一代分布式调度与计算框架,能让您轻松完成作业的调度与繁杂任务的分布式计算。
|
||||
PowerJob(原OhMyScheduler)是全新一代分布式调度与计算框架,能让您轻松完成作业的调度与繁杂任务的分布式计算。
|
||||
# 简介
|
||||
### 主要特性
|
||||
* 使用简单:提供前端Web界面,允许开发者可视化地完成调度任务的管理(增、删、改、查)、任务运行状态监控和运行日志查看等功能。
|
||||
@ -22,14 +22,14 @@ OhMyScheduler是基于Akka架构的新一代分布式调度与计算框架,能
|
||||
* 高可用&高性能:调度服务器经过精心设计,一改其他调度框架基于数据库锁的策略,实现了无锁化调度。部署多个调度服务器可以同时实现高可用和性能的提升(支持无限的水平扩展)。
|
||||
* 故障转移与恢复:任务执行失败后,可根据配置的重试策略完成重试,只要执行器集群有足够的计算节点,任务就能顺利完成。
|
||||
|
||||
[在线试用地址](https://www.yuque.com/ohmyscheduler/guidence/hnbskn) 试用应用名称:oms-agent-test
|
||||
[在线试用地址](https://www.yuque.com/powerjob/guidence/hnbskn)
|
||||
### 适用场景
|
||||
* 有定时执行需求的业务场景:如每天凌晨全量同步数据、生成业务报表等。
|
||||
* 有需要全部机器一同执行的业务场景:如使用广播执行模式清理集群日志。
|
||||
* 有需要分布式处理的业务场景:比如需要更新一大批数据,单机执行耗时非常长,可以使用Map/MapReduce处理器完成任务的分发,调动整个集群加速计算。
|
||||
|
||||
### 同类产品对比
|
||||
| | QuartZ | xxl-job | SchedulerX 2.0 | OhMyScheduler |
|
||||
| | QuartZ | xxl-job | SchedulerX 2.0 | PowerJob |
|
||||
| -------------- | ------------------------ | ---------------------------------------- | ------------------------------------------------- | ------------------------------------------------------------ |
|
||||
| 定时类型 | CRON | CRON | CRON、固定频率、固定延迟、OpenAPI | **CRON、固定频率、固定延迟、OpenAPI** |
|
||||
| 任务类型 | 内置Java | 内置Java、GLUE Java、Shell、Python等脚本 | 内置Java、外置Java(FatJar)、Shell、Python等脚本 | **内置Java、外置Java(容器)、Shell、Python等脚本** |
|
||||
@ -43,7 +43,7 @@ OhMyScheduler是基于Akka架构的新一代分布式调度与计算框架,能
|
||||
|
||||
|
||||
# 文档
|
||||
**[超详细中文文档](https://www.yuque.com/ohmyscheduler/guidence/ztn4i5)** OR **[备用地址(内容可能更新不及时)](https://kfcfans.github.io/)**
|
||||
**[超详细中文文档](https://www.yuque.com/powerjob/guidence/ztn4i5)** OR **[备用地址(内容可能更新不及时)](https://kfcfans.github.io/)**
|
||||
|
||||
PS:感谢文档翻译平台[breword](https://www.breword.com/)对本项目英文文档翻译做出的巨大贡献!
|
||||
|
||||
|
BIN
others/images/logo.png
Normal file
BIN
others/images/logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 114 KiB |
Binary file not shown.
Before Width: | Height: | Size: 20 KiB |
@ -49,7 +49,7 @@ public class TestClient {
|
||||
|
||||
@Test
|
||||
public void testFetchJob() throws Exception {
|
||||
ResultDTO<JobInfoDTO> fetchJob = ohMyClient.fetchJob(7L);
|
||||
ResultDTO<JobInfoDTO> fetchJob = ohMyClient.fetchJob(1L);
|
||||
System.out.println(JsonUtils.toJSONStringUnsafe(fetchJob));
|
||||
}
|
||||
|
||||
|
@ -1,13 +1,12 @@
|
||||
${AnsiColor.GREEN}
|
||||
|
||||
███████ ██ ████ ████ ████████ ██ ██ ██
|
||||
██░░░░░██ ░██ ░██░██ ██░██ ██ ██ ██░░░░░░ ░██ ░██ ░██
|
||||
██ ░░██░██ ░██░░██ ██ ░██ ░░██ ██ ░██ █████ ░██ █████ ░██ ██ ██ ░██ █████ ██████
|
||||
░██ ░██░██████ ░██ ░░███ ░██ ░░███ ░█████████ ██░░░██░██████ ██░░░██ ██████░██ ░██ ░██ ██░░░██░░██░░█
|
||||
░██ ░██░██░░░██░██ ░░█ ░██ ░██ ░░░░░░░░██░██ ░░ ░██░░░██░███████ ██░░░██░██ ░██ ░██░███████ ░██ ░
|
||||
░░██ ██ ░██ ░██░██ ░ ░██ ██ ░██░██ ██░██ ░██░██░░░░ ░██ ░██░██ ░██ ░██░██░░░░ ░██
|
||||
░░███████ ░██ ░██░██ ░██ ██ ████████ ░░█████ ░██ ░██░░██████░░██████░░██████ ███░░██████░███
|
||||
░░░░░░░ ░░ ░░ ░░ ░░ ░░ ░░░░░░░░ ░░░░░ ░░ ░░ ░░░░░░ ░░░░░░ ░░░░░░ ░░░ ░░░░░░ ░░░
|
||||
███████ ██ ██
|
||||
░██░░░░██ ░██ ░██
|
||||
░██ ░██ ██████ ███ ██ █████ ██████ ░██ ██████ ░██
|
||||
░███████ ██░░░░██░░██ █ ░██ ██░░░██░░██░░█ ░██ ██░░░░██░██████
|
||||
░██░░░░ ░██ ░██ ░██ ███░██░███████ ░██ ░ ░██░██ ░██░██░░░██
|
||||
░██ ░██ ░██ ░████░████░██░░░░ ░██ ██ ░██░██ ░██░██ ░██
|
||||
░██ ░░██████ ███░ ░░░██░░██████░███ ░░█████ ░░██████ ░██████
|
||||
░░ ░░░░░░ ░░░ ░░░ ░░░░░░ ░░░ ░░░░░ ░░░░░░ ░░░░░
|
||||
${AnsiColor.BRIGHT_RED}
|
||||
* Maintainer: tengjiqi@gmail.com
|
||||
* SourceCode: https://github.com/KFCFans/OhMyScheduler
|
||||
|
Binary file not shown.
File diff suppressed because one or more lines are too long
@ -11,15 +11,14 @@ import lombok.extern.slf4j.Slf4j;
|
||||
@Slf4j
|
||||
public final class OmsBannerPrinter {
|
||||
|
||||
private static final String BANNER = "\n ███████ ██ ████ ████ ████████ ██ ██ ██\n" +
|
||||
" ██░░░░░██ ░██ ░██░██ ██░██ ██ ██ ██░░░░░░ ░██ ░██ ░██ \n" +
|
||||
" ██ ░░██░██ ░██░░██ ██ ░██ ░░██ ██ ░██ █████ ░██ █████ ░██ ██ ██ ░██ █████ ██████\n" +
|
||||
"░██ ░██░██████ ░██ ░░███ ░██ ░░███ ░█████████ ██░░░██░██████ ██░░░██ ██████░██ ░██ ░██ ██░░░██░░██░░█\n" +
|
||||
"░██ ░██░██░░░██░██ ░░█ ░██ ░██ ░░░░░░░░██░██ ░░ ░██░░░██░███████ ██░░░██░██ ░██ ░██░███████ ░██ ░ \n" +
|
||||
"░░██ ██ ░██ ░██░██ ░ ░██ ██ ░██░██ ██░██ ░██░██░░░░ ░██ ░██░██ ░██ ░██░██░░░░ ░██ \n" +
|
||||
" ░░███████ ░██ ░██░██ ░██ ██ ████████ ░░█████ ░██ ░██░░██████░░██████░░██████ ███░░██████░███ \n" +
|
||||
" ░░░░░░░ ░░ ░░ ░░ ░░ ░░ ░░░░░░░░ ░░░░░ ░░ ░░ ░░░░░░ ░░░░░░ ░░░░░░ ░░░ ░░░░░░ ░░░";
|
||||
|
||||
private static final String BANNER = "\n ███████ ██ ██ \n" +
|
||||
"░██░░░░██ ░██ ░██ \n" +
|
||||
"░██ ░██ ██████ ███ ██ █████ ██████ ░██ ██████ ░██ \n" +
|
||||
"░███████ ██░░░░██░░██ █ ░██ ██░░░██░░██░░█ ░██ ██░░░░██░██████ \n" +
|
||||
"░██░░░░ ░██ ░██ ░██ ███░██░███████ ░██ ░ ░██░██ ░██░██░░░██\n" +
|
||||
"░██ ░██ ░██ ░████░████░██░░░░ ░██ ██ ░██░██ ░██░██ ░██\n" +
|
||||
"░██ ░░██████ ███░ ░░░██░░██████░███ ░░█████ ░░██████ ░██████ \n" +
|
||||
"░░ ░░░░░░ ░░░ ░░░ ░░░░░░ ░░░ ░░░░░ ░░░░░░ ░░░░░ \n";
|
||||
|
||||
public static void print() {
|
||||
log.info(BANNER);
|
||||
|
@ -36,6 +36,6 @@ public abstract class BroadcastProcessor implements BasicProcessor {
|
||||
failed ++;
|
||||
}
|
||||
}
|
||||
return new ProcessResult(succeed == 0, String.format("succeed:%d, failed:%d", succeed, failed));
|
||||
return new ProcessResult(failed == 0, String.format("succeed:%d, failed:%d", succeed, failed));
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user