[doc] release oms guidance

This commit is contained in:
tjq 2020-05-21 20:36:05 +08:00
parent 537b2e6433
commit 1a7a6f4fa8
29 changed files with 2323 additions and 44 deletions

View File

@ -0,0 +1,31 @@
---
title: FAQ
weight: 1000
---
{{< hint info >}}
这里记录一些好问题和高频问题。
{{< /hint >}}
### Q生成环境能用吗
A可以。框架从发布到现在已经趋于稳定且开发者[@KFCFans](https://github.com/KFCFans)当前有充足的时间维护框架一旦发现bug可以联系我保证第一时间修复
### Q请问有没有通过API增删改查执行的操作
AOpenAPI就是为此而生的。OpenAPI在Http的基础上进行了封装提供规范的接口完成任务的管理与运维。
### QIgnite也支持分布式计算请问这个项目有什么优势
A从本质上讲OhMyScheduler是一个具有分布式计算能力的调度平台而Ignite是一个分布式计算平台前者立足于调度虽然本项目的亮点是分布式计算没错啦…后者立足于大数据计算两者立足点不同。
从分布式计算的角度来讲Ignite确实具备全部OhMyScheduler的功能毕竟人家是Apache顶级项目...OhMyScheduler-Worker集群可以看成嵌入式的Ignite集群整体对外提供服务。两者虽然表面上功能有所重合但背后的设计理念是截然不同的。
Ignite本质上是由分布式内存SQL数据库发展而来的分布式计算平台它解决的问题更偏向于大数据处理Spark、Hadoop之类因此对于传统的Java项目并不是非常友好比如官方推荐的部署模式是建立独立的Ignite集群负责计算业务应用只负责提交代码。再比如获取各种资源Spring Bean都需要先注入Ignite中这对于依赖繁杂的业务来说是非常痛苦的。
而OhMyScheduler就是面向业务应用设计的从示例代码中也能看出开发OhMyScheduler的处理器是没有任何额外的成本的想要某个SpringBean直接注入即可。想要分发任务调用map方法即可开发者的学习和使用成本会低很多。
一句话总结就是Ignite的分布式计算偏向于数据侧适用于大数据处理。而OhMyScheduler的分布式计算偏向于业务侧适用于传统Java应用的业务处理。
此外高效开发一直是OhMyScheduler的设计理念像在线查看任务运行情况、在线查看任务运行日志等功能在实际开发中将会非常实用。

View File

@ -0,0 +1,25 @@
---
title: 开发计划
weight: 4
---
{{< hint info >}}
截止目前v1.2.0),框架的基本功能(调度和分布式计算)已经趋于稳定,大家可以放心接入使用。不过为了使框架更为成熟易用,仍有需要不断改进和开发的地方。
{{< /hint >}}
## 下阶段规划
* 支持DAG工作流
* 任务的优先级系统,需要可抢占式实现,~~~而不是SchedulerX那种傻等式~~~
* 在线日志的限流 & 本地数据库分表提升在线日志最大吞吐量
* 保护性判断(优先级较低,太繁琐了且意义不大,毕竟面向开发者,大家不会乱填参数对不对~)
## 共同建设邀请 (❁´◡`❁)*✲゚*
都看到这里了,相比您对本项目产生了**浓厚**的兴趣,欢迎加入开源社区,为框架贡献自己的力量~
PR、Issue求求了
如果有什么想法、建议或意见都欢迎联系作者tengjiqi@gmail.com。

View File

@ -0,0 +1,10 @@
---
title: 迁移指南
weight: 2
---
{{< hint info >}}
记录当发生不兼容的版本变更时,开发者需要做出的升级和迁移。
{{< /hint >}}
暂无

View File

@ -0,0 +1,53 @@
---
title: 更新日志
weight: 1
---
## 规范:语义化版本
{{< hint info >}}
为了避免后期维护困难,本框架需要时刻遵守如下准则:
{{< /hint >}}
**版本格式**:主版本号.次版本号.修订号
**递增规则**
1. 主版本号:当做了不兼容的 API 修改
2. 次版本号:当你做了向下兼容的功能性新增
3. 修订号:当你做了向下兼容的问题修正
## 更新记录
### v1.2.0 [2020.5.21]
* 新增容器扩展能力,极大提升系统的灵活性和扩展性。
* 新增**OhMyAgent**代理worker与容器技术相结合可提供巨大的灵活可定制性。
* 新增“垃圾回收机制”,定期清理工作区产生的垃圾,降低磁盘占用。
* 新增**OhMyClient**高可用特性允许开发者填入多个IP进行容错。
* 切换Web容器为了获得更好的websocket支持OhMyScheduler当前使用**undertow**取代Tomcat作为Web容器。
* 移除Worker自动寻找可用端口功能目前仅使用配置文件制定的端口。
* 更改了worker序列化框架复用技术从对象池切换到了ThreadLocal为了容器技术而作出的微小性能牺牲
* 美化了前端页面(再次感谢[某知名上市电商公司前端工程师](https://github.com/fengnan0929)对本项目的大力支持)!
* 修复在线日志在部分情况下无法正确显示的BUG。
* 修复了若干我想不起来了但是确实修复了的BUG
### v1.1.0 [2020.5.11]
* 新增在线日志功能,可在控制台直接查看任务运行时日志,高效便捷!
* 美化了部分前端页面T_T
* 修复若干BUG
### v1.0.0 [2020.4.20]
**第一个正式版本**,发布了以下特性:
- 支持CRON、固定频率、固定延迟和API四种调度策略。
- 支持单机、广播、**MapReduce**三种执行模式。
- 支持任意的水平扩展,性能强劲无上限。
- 具有强大的故障转移与恢复能力,只要保证集群可用节点数足够,任务就能顺利完成。
- 仅依赖数据库,部署简单,上手容易,开发高效,仅需几行代码即可获得整个集群的分布式计算能力。
- 支持SpringBean、普通Java类内置/外置、Shell、Python等处理器。

View File

@ -14,7 +14,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book

View File

@ -14,7 +14,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<link rel="alternate" type="application/rss+xml" href="https://kfcfans.gitee.io/ohmyscheduler/categories/index.xml" title="OhMyScheduler" />
<!--
Made with Book Theme
@ -170,7 +170,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -181,12 +181,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>

View File

@ -0,0 +1,390 @@
<!DOCTYPE html>
<html lang="en" dir=>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="这里记录一些好问题和高频问题。 Q生成环境能用吗 A可以框架从发布到现在已经趋于稳定且开发者@KFCFans当前有充足的时间维护框架一旦发现bug可以联系我保证第一时间修复
Q请问有没有通过API增删改查执行的操作 AOpenAPI就是为此而生的。OpenAPI在Http的基础上进行了封装提供规范的接口完成任务的管理与运维。
QIgnite也支持分布式计算请问这个项目有什么优势 A从本质上讲OhMyScheduler是一个具有分布式计算能力的调度平台而Ignite是一个分布式计算平台前者立足于调度虽然本项目的亮点是分布式计算没错啦…后者立足于大数据计算两者立足点不同。
从分布式计算的角度来讲Ignite确实具备全部OhMyScheduler的功能毕竟人家是Apache顶级项目&hellip;OhMyScheduler-Worker集群可以看成嵌入式的Ignite集群整体对外提供服务。两者虽然表面上功能有所重合但背后的设计理念是截然不同的。
Ignite本质上是由分布式内存SQL数据库发展而来的分布式计算平台它解决的问题更偏向于大数据处理Spark、Hadoop之类因此对于传统的Java项目并不是非常友好比如官方推荐的部署模式是建立独立的Ignite集群负责计算业务应用只负责提交代码。再比如获取各种资源Spring Bean都需要先注入Ignite中这对于依赖繁杂的业务来说是非常痛苦的。
而OhMyScheduler就是面向业务应用设计的从示例代码中也能看出开发OhMyScheduler的处理器是没有任何额外的成本的想要某个SpringBean直接注入即可。想要分发任务调用map方法即可开发者的学习和使用成本会低很多。
一句话总结就是Ignite的分布式计算偏向于数据侧适用于大数据处理。而OhMyScheduler的分布式计算偏向于业务侧适用于传统Java应用的业务处理。
此外高效开发一直是OhMyScheduler的设计理念像在线查看任务运行情况、在线查看任务运行日志等功能在实际开发中将会非常实用。">
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="FAQ" />
<meta property="og:description" content="这里记录一些好问题和高频问题。 Q生成环境能用吗 A可以框架从发布到现在已经趋于稳定且开发者@KFCFans当前有充足的时间维护框架一旦发现bug可以联系我保证第一时间修复
Q请问有没有通过API增删改查执行的操作 AOpenAPI就是为此而生的。OpenAPI在Http的基础上进行了封装提供规范的接口完成任务的管理与运维。
QIgnite也支持分布式计算请问这个项目有什么优势 A从本质上讲OhMyScheduler是一个具有分布式计算能力的调度平台而Ignite是一个分布式计算平台前者立足于调度虽然本项目的亮点是分布式计算没错啦…后者立足于大数据计算两者立足点不同。
从分布式计算的角度来讲Ignite确实具备全部OhMyScheduler的功能毕竟人家是Apache顶级项目&hellip;OhMyScheduler-Worker集群可以看成嵌入式的Ignite集群整体对外提供服务。两者虽然表面上功能有所重合但背后的设计理念是截然不同的。
Ignite本质上是由分布式内存SQL数据库发展而来的分布式计算平台它解决的问题更偏向于大数据处理Spark、Hadoop之类因此对于传统的Java项目并不是非常友好比如官方推荐的部署模式是建立独立的Ignite集群负责计算业务应用只负责提交代码。再比如获取各种资源Spring Bean都需要先注入Ignite中这对于依赖繁杂的业务来说是非常痛苦的。
而OhMyScheduler就是面向业务应用设计的从示例代码中也能看出开发OhMyScheduler的处理器是没有任何额外的成本的想要某个SpringBean直接注入即可。想要分发任务调用map方法即可开发者的学习和使用成本会低很多。
一句话总结就是Ignite的分布式计算偏向于数据侧适用于大数据处理。而OhMyScheduler的分布式计算偏向于业务侧适用于传统Java应用的业务处理。
此外高效开发一直是OhMyScheduler的设计理念像在线查看任务运行情况、在线查看任务运行日志等功能在实际开发中将会非常实用。" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://kfcfans.gitee.io/ohmyscheduler/docs/faq/" />
<title>FAQ | OhMyScheduler</title>
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
-->
</head>
<body dir=>
<input type="checkbox" class="hidden" id="menu-control" />
<main class="container flex">
<aside class="book-menu">
<nav>
<h2 class="book-brand">
<a href="/ohmyscheduler"><span>OhMyScheduler</span>
</a>
</h2>
<div class="book-search">
<input type="text" id="book-search-input" placeholder="Search" aria-label="Search" maxlength="64" data-hotkeys="s/" />
<div class="book-search-spinner hidden"></div>
<ul id="book-search-results"></ul>
</div>
<ul>
<li>
<span>快速开始</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/startup/1-server-startup/" class="">调度中心Server部署</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/2-worker-startup/" class="">执行器Worker初始化</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/3-processor-develop/" class="">处理器开发</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/4-console-guide/" class="">任务管理与在线运维</a>
</li>
</ul>
</li>
<li>
<span>高级特性</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/super/container/" class="">容器</a>
</li>
<li>
<a href="/ohmyscheduler/docs/super/openapi/" class="">OpenAPI</a>
</li>
</ul>
</li>
<li>
<span>版本与升级</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="active">FAQ</a>
</li>
</ul>
</nav>
<script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script>
</aside>
<div class="book-page">
<header class="book-header">
<div class="flex align-center justify-between">
<label for="menu-control">
<img src="/ohmyscheduler/svg/menu.svg" class="book-icon" alt="Menu" />
</label>
<strong>FAQ</strong>
<label for="toc-control">
<img src="/ohmyscheduler/svg/toc.svg" class="book-icon" alt="Table of Contents" />
</label>
</div>
<input type="checkbox" class="hidden" id="toc-control" />
<aside class="hidden clearfix">
<nav id="TableOfContents">
<ul>
<li>
<ul>
<li><a href="#q生成环境能用吗">Q生成环境能用吗</a></li>
<li><a href="#q请问有没有通过api增删改查执行的操作">Q请问有没有通过API增删改查执行的操作</a></li>
<li><a href="#qignite也支持分布式计算请问这个项目有什么优势">QIgnite也支持分布式计算请问这个项目有什么优势</a></li>
</ul>
</li>
</ul>
</nav>
</aside>
</header>
<article class="markdown"><blockquote class="book-hint info">
这里记录一些好问题和高频问题。
</blockquote>
<h3 id="q生成环境能用吗">Q生成环境能用吗</h3>
<p>A可以。框架从发布到现在已经趋于稳定且开发者<a href="https://github.com/KFCFans">@KFCFans</a>当前有充足的时间维护框架一旦发现bug可以联系我保证第一时间修复</p>
<h3 id="q请问有没有通过api增删改查执行的操作">Q请问有没有通过API增删改查执行的操作</h3>
<p>AOpenAPI就是为此而生的。OpenAPI在Http的基础上进行了封装提供规范的接口完成任务的管理与运维。</p>
<h3 id="qignite也支持分布式计算请问这个项目有什么优势">QIgnite也支持分布式计算请问这个项目有什么优势</h3>
<p>A从本质上讲OhMyScheduler是一个具有分布式计算能力的调度平台而Ignite是一个分布式计算平台前者立足于调度虽然本项目的亮点是分布式计算没错啦…后者立足于大数据计算两者立足点不同。</p>
<p>从分布式计算的角度来讲Ignite确实具备全部OhMyScheduler的功能毕竟人家是Apache顶级项目&hellip;OhMyScheduler-Worker集群可以看成嵌入式的Ignite集群整体对外提供服务。两者虽然表面上功能有所重合但背后的设计理念是截然不同的。</p>
<p>Ignite本质上是由分布式内存SQL数据库发展而来的分布式计算平台它解决的问题更偏向于大数据处理Spark、Hadoop之类因此对于传统的Java项目并不是非常友好比如官方推荐的部署模式是建立独立的Ignite集群负责计算业务应用只负责提交代码。再比如获取各种资源Spring Bean都需要先注入Ignite中这对于依赖繁杂的业务来说是非常痛苦的。</p>
<p>而OhMyScheduler就是面向业务应用设计的从示例代码中也能看出开发OhMyScheduler的处理器是没有任何额外的成本的想要某个SpringBean直接注入即可。想要分发任务调用map方法即可开发者的学习和使用成本会低很多。</p>
<p>一句话总结就是Ignite的分布式计算偏向于数据侧适用于大数据处理。而OhMyScheduler的分布式计算偏向于业务侧适用于传统Java应用的业务处理。</p>
<p>此外高效开发一直是OhMyScheduler的设计理念像在线查看任务运行情况、在线查看任务运行日志等功能在实际开发中将会非常实用。</p>
</article>
<footer class="book-footer">
<div class="flex flex-wrap justify-between">
</div>
</footer>
<div class="book-comments">
</div>
<label for="menu-control" class="hidden book-menu-overlay"></label>
</div>
<aside class="book-toc">
<nav id="TableOfContents">
<ul>
<li>
<ul>
<li><a href="#q生成环境能用吗">Q生成环境能用吗</a></li>
<li><a href="#q请问有没有通过api增删改查执行的操作">Q请问有没有通过API增删改查执行的操作</a></li>
<li><a href="#qignite也支持分布式计算请问这个项目有什么优势">QIgnite也支持分布式计算请问这个项目有什么优势</a></li>
</ul>
</li>
</ul>
</nav>
</aside>
</main>
</body>
</html>

View File

@ -14,7 +14,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<link rel="alternate" type="application/rss+xml" href="https://kfcfans.gitee.io/ohmyscheduler/docs/index.xml" title="OhMyScheduler" />
<!--
Made with Book Theme
@ -170,7 +170,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -181,12 +181,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>

View File

@ -10,5 +10,32 @@
<atom:link href="https://kfcfans.gitee.io/ohmyscheduler/docs/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>开发计划</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/todo/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://kfcfans.gitee.io/ohmyscheduler/docs/todo/</guid>
<description>截止目前v1.2.0),框架的基本功能(调度和分布式计算)已经趋于稳定,大家可以放心接入使用。不过为了使框架更为成熟易用,仍有需要不断改进和开发的地方。 下阶段规划 支持DAG工作流 任务的优先级系统需要可抢占式实现而不是SchedulerX那种傻等式 在线日志的限流 &amp;amp; 本地数据库分表提升在线日志最大吞吐量 保护性判断(优先级较低,太繁琐了且意义不大,毕竟面向开发者,大家不会乱填参数对不对~) 共同建设邀请 (❁´◡`❁)✲゚ 都看到这里了,相比您对本项目产生了浓厚的兴趣,欢迎加入开源社区,为框架贡献自己的力量~
PR、Issue求求了
如果有什么想法、建议或意见都欢迎联系作者tengjiqi@gmail.com。</description>
</item>
<item>
<title>FAQ</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/faq/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://kfcfans.gitee.io/ohmyscheduler/docs/faq/</guid>
<description>这里记录一些好问题和高频问题。 Q生成环境能用吗 A可以。框架从发布到现在已经趋于稳定且开发者@KFCFans当前有充足的时间维护框架一旦发现bug可以联系我保证第一时间修复
Q请问有没有通过API增删改查执行的操作 AOpenAPI就是为此而生的。OpenAPI在Http的基础上进行了封装提供规范的接口完成任务的管理与运维。
QIgnite也支持分布式计算请问这个项目有什么优势 A从本质上讲OhMyScheduler是一个具有分布式计算能力的调度平台而Ignite是一个分布式计算平台前者立足于调度虽然本项目的亮点是分布式计算没错啦…后者立足于大数据计算两者立足点不同。
从分布式计算的角度来讲Ignite确实具备全部OhMyScheduler的功能毕竟人家是Apache顶级项目&amp;hellip;OhMyScheduler-Worker集群可以看成嵌入式的Ignite集群整体对外提供服务。两者虽然表面上功能有所重合但背后的设计理念是截然不同的。
Ignite本质上是由分布式内存SQL数据库发展而来的分布式计算平台它解决的问题更偏向于大数据处理Spark、Hadoop之类因此对于传统的Java项目并不是非常友好比如官方推荐的部署模式是建立独立的Ignite集群负责计算业务应用只负责提交代码。再比如获取各种资源Spring Bean都需要先注入Ignite中这对于依赖繁杂的业务来说是非常痛苦的。
而OhMyScheduler就是面向业务应用设计的从示例代码中也能看出开发OhMyScheduler的处理器是没有任何额外的成本的想要某个SpringBean直接注入即可。想要分发任务调用map方法即可开发者的学习和使用成本会低很多。
一句话总结就是Ignite的分布式计算偏向于数据侧适用于大数据处理。而OhMyScheduler的分布式计算偏向于业务侧适用于传统Java应用的业务处理。
此外高效开发一直是OhMyScheduler的设计理念像在线查看任务运行情况、在线查看任务运行日志等功能在实际开发中将会非常实用。</description>
</item>
</channel>
</rss>

View File

@ -28,7 +28,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
@ -183,7 +183,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -194,12 +194,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>
@ -368,7 +408,7 @@ https://github.com/alex-shpak/hugo-book
<strong>建议自己根据项目中的Dockerfile稍作修改制作自己的Docker镜像而不是直接使用官方镜像</strong>原因在于容器功能需要用到Git和Maven来编译代码库而公司内部往往都会搭建自己的私有仓库所以Git容器功能没办法正常运行<strong>官方镜像中的调度服务器不支持Git容器的部署</strong>)。
</blockquote>
<p><a href="https://hub.docker.com/r/tjqq/oms-server">Docker Hub地址</a></p>
<p><a href="https://hub.docker.com/r/tjqq/oms-server/tags">Docker Hub地址</a></p>
<p>部署流程:</p>
<ol>
<li>下载镜像:<code>docker pull tjqq/oms-server</code></li>
@ -394,7 +434,7 @@ https://github.com/alex-shpak/hugo-book
<blockquote>
<p>每一个业务系统初次接入OhMyScheduler时都需要<strong>先完成应用注册</strong></p>
</blockquote>
<p><img src="/oms-console-welcome.png" alt="WelcomePage" /></p>
<p><img src="/ohmyscheduler/oms-console-welcome.png" alt="WelcomePage" /></p>
<ul>
<li>应用注册,用于进行业务分组:
<ul>

View File

@ -22,7 +22,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
@ -177,7 +177,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -188,12 +188,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>
@ -371,6 +411,16 @@ https://github.com/alex-shpak/hugo-book
<blockquote>
<p>agent是一个没有任何业务逻辑的执行器其实就是为worker加了一个main方法</p>
</blockquote>
<blockquote class="book-hint info">
<strong>推荐直接使用Docker部署<a href="https://hub.docker.com/r/tjqq/oms-agent/tags">oms-agent</a></strong>
</blockquote>
<p>与server一样启动参数通过环境变量<code>-e PARAMS</code>传入,全部参数请见底部。</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">docker run -d
-e PARAMS<span style="color:#f92672">=</span><span style="color:#e6db74">&#34;--app oms-agent-test --server 192.168.1.1:7700,192.168.1.2:7700&#34;</span>
-p 27777:27777 --name my-oms-agent
-v ~/docker/my-oms-agent:/root tjqq/oms-agent:$version
</code></pre></div><hr>
<p>代码编译方式启动示例:<code>java -jar oh-my-scheduler-worker-agent-1.2.0.jar -a my-agent</code></p>
<pre><code>Usage: OhMyAgent [-hV] -a=&lt;appName&gt; [-e=&lt;storeStrategy&gt;] [-l=&lt;length&gt;]
[-p=&lt;port&gt;] [-s=&lt;server&gt;]
@ -384,8 +434,7 @@ OhMyScheduler-Worker代理
-s, --server=&lt;server&gt; 调度中心地址,多值英文逗号分隔,格式 IP:Port OR domain
-V, --version Print version information and exit.
</code></pre><p>Docker镜像<a href="https://hub.docker.com/r/tjqq/oms-agent">Docker Hub</a></p>
</article>
</code></pre></article>

View File

@ -20,7 +20,7 @@ ProcessResult process(TaskContext context) throws Exception; 方法入参TaskCon
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
@ -175,7 +175,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -186,12 +186,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>

View File

@ -32,7 +32,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
@ -187,7 +187,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -198,12 +198,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>

View File

@ -14,7 +14,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<link rel="alternate" type="application/rss+xml" href="https://kfcfans.gitee.io/ohmyscheduler/docs/startup/index.xml" title="OhMyScheduler" />
<!--
Made with Book Theme
@ -170,7 +170,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -181,12 +181,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>

View File

@ -20,7 +20,7 @@ oms-template-origin // 工程名称,可以自由更改 ├── pom.xml └
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
@ -175,7 +175,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -186,12 +186,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>

View File

@ -14,7 +14,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<link rel="alternate" type="application/rss+xml" href="https://kfcfans.gitee.io/ohmyscheduler/docs/super/index.xml" title="OhMyScheduler" />
<!--
Made with Book Theme
@ -170,7 +170,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -181,12 +181,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>

View File

@ -22,7 +22,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
@ -177,7 +177,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -188,12 +188,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>

View File

@ -0,0 +1,370 @@
<!DOCTYPE html>
<html lang="en" dir=>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="截止目前v1.2.0),框架的基本功能(调度和分布式计算)已经趋于稳定,大家可以放心接入使用。不过为了使框架更为成熟易用,仍有需要不断改进和开发的地方。 下阶段规划 支持DAG工作流 任务的优先级系统需要可抢占式实现而不是SchedulerX那种傻等式 在线日志的限流 &amp; 本地数据库分表提升在线日志最大吞吐量 保护性判断优先级较低太繁琐了且意义不大毕竟面向开发者大家不会乱填参数对不对 共同建设邀请 (´`) 都看到这里了相比您对本项目产生了浓厚的兴趣欢迎加入开源社区为框架贡献自己的力量
PR、Issue求求了
如果有什么想法、建议或意见都欢迎联系作者tengjiqi@gmail.com。">
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="开发计划" />
<meta property="og:description" content="截止目前v1.2.0),框架的基本功能(调度和分布式计算)已经趋于稳定,大家可以放心接入使用。不过为了使框架更为成熟易用,仍有需要不断改进和开发的地方。 下阶段规划 支持DAG工作流 任务的优先级系统需要可抢占式实现而不是SchedulerX那种傻等式 在线日志的限流 &amp; 本地数据库分表提升在线日志最大吞吐量 保护性判断优先级较低太繁琐了且意义不大毕竟面向开发者大家不会乱填参数对不对 共同建设邀请 (´`) 都看到这里了相比您对本项目产生了浓厚的兴趣欢迎加入开源社区为框架贡献自己的力量
PR、Issue求求了
如果有什么想法、建议或意见都欢迎联系作者tengjiqi@gmail.com。" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://kfcfans.gitee.io/ohmyscheduler/docs/todo/" />
<title>开发计划 | OhMyScheduler</title>
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
-->
</head>
<body dir=>
<input type="checkbox" class="hidden" id="menu-control" />
<main class="container flex">
<aside class="book-menu">
<nav>
<h2 class="book-brand">
<a href="/ohmyscheduler"><span>OhMyScheduler</span>
</a>
</h2>
<div class="book-search">
<input type="text" id="book-search-input" placeholder="Search" aria-label="Search" maxlength="64" data-hotkeys="s/" />
<div class="book-search-spinner hidden"></div>
<ul id="book-search-results"></ul>
</div>
<ul>
<li>
<span>快速开始</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/startup/1-server-startup/" class="">调度中心Server部署</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/2-worker-startup/" class="">执行器Worker初始化</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/3-processor-develop/" class="">处理器开发</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/4-console-guide/" class="">任务管理与在线运维</a>
</li>
</ul>
</li>
<li>
<span>高级特性</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/super/container/" class="">容器</a>
</li>
<li>
<a href="/ohmyscheduler/docs/super/openapi/" class="">OpenAPI</a>
</li>
</ul>
</li>
<li>
<span>版本与升级</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="active">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>
</nav>
<script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script>
</aside>
<div class="book-page">
<header class="book-header">
<div class="flex align-center justify-between">
<label for="menu-control">
<img src="/ohmyscheduler/svg/menu.svg" class="book-icon" alt="Menu" />
</label>
<strong>开发计划</strong>
<label for="toc-control">
<img src="/ohmyscheduler/svg/toc.svg" class="book-icon" alt="Table of Contents" />
</label>
</div>
<input type="checkbox" class="hidden" id="toc-control" />
<aside class="hidden clearfix">
<nav id="TableOfContents">
<ul>
<li><a href="#下阶段规划">下阶段规划</a></li>
<li><a href="#共同建设邀请-゚">共同建设邀请 (❁´◡`❁)<em>✲゚</em></a></li>
</ul>
</nav>
</aside>
</header>
<article class="markdown"><blockquote class="book-hint info">
截止目前v1.2.0),框架的基本功能(调度和分布式计算)已经趋于稳定,大家可以放心接入使用。不过为了使框架更为成熟易用,仍有需要不断改进和开发的地方。
</blockquote>
<h2 id="下阶段规划">下阶段规划</h2>
<ul>
<li>支持DAG工作流</li>
<li>任务的优先级系统,需要可抢占式实现,<del><del>而不是SchedulerX那种傻等式</del></del></li>
<li>在线日志的限流 &amp; 本地数据库分表提升在线日志最大吞吐量</li>
<li>保护性判断(优先级较低,太繁琐了且意义不大,毕竟面向开发者,大家不会乱填参数对不对~)</li>
</ul>
<h2 id="共同建设邀请-゚">共同建设邀请 (❁´◡`❁)<em>✲゚</em></h2>
<p>都看到这里了,相比您对本项目产生了<strong>浓厚</strong>的兴趣,欢迎加入开源社区,为框架贡献自己的力量~</p>
<p>PR、Issue求求了</p>
<p>如果有什么想法、建议或意见都欢迎联系作者tengjiqi@gmail.com。</p>
</article>
<footer class="book-footer">
<div class="flex flex-wrap justify-between">
</div>
</footer>
<div class="book-comments">
</div>
<label for="menu-control" class="hidden book-menu-overlay"></label>
</div>
<aside class="book-toc">
<nav id="TableOfContents">
<ul>
<li><a href="#下阶段规划">下阶段规划</a></li>
<li><a href="#共同建设邀请-゚">共同建设邀请 (❁´◡`❁)<em>✲゚</em></a></li>
</ul>
</nav>
</aside>
</main>
</body>
</html>

View File

@ -5,16 +5,16 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="更新日志" />
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="版本与升级" />
<meta property="og:description" content="" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://kfcfans.gitee.io/ohmyscheduler/docs/version/" />
<title>更新日志 | OhMyScheduler</title>
<title>版本与升级 | OhMyScheduler</title>
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<link rel="alternate" type="application/rss+xml" href="https://kfcfans.gitee.io/ohmyscheduler/docs/version/index.xml" title="OhMyScheduler" />
<!--
Made with Book Theme
@ -170,7 +170,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -181,12 +181,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>
@ -223,7 +263,7 @@ https://github.com/alex-shpak/hugo-book
<img src="/ohmyscheduler/svg/menu.svg" class="book-icon" alt="Menu" />
</label>
<strong>更新日志</strong>
<strong>版本与升级</strong>
<label for="toc-control">
<img src="/ohmyscheduler/svg/toc.svg" class="book-icon" alt="Table of Contents" />

View File

@ -1,14 +1,35 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>更新日志 on OhMyScheduler</title>
<title>版本与升级 on OhMyScheduler</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/version/</link>
<description>Recent content in 更新日志 on OhMyScheduler</description>
<description>Recent content in 版本与升级 on OhMyScheduler</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<atom:link href="https://kfcfans.gitee.io/ohmyscheduler/docs/version/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>更新日志</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/version/update/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://kfcfans.gitee.io/ohmyscheduler/docs/version/update/</guid>
<description>规范:语义化版本 为了避免后期维护困难,本框架需要时刻遵守如下准则: 版本格式:主版本号.次版本号.修订号
递增规则:
主版本号:当做了不兼容的 API 修改 次版本号:当你做了向下兼容的功能性新增 修订号:当你做了向下兼容的问题修正 更新记录 v1.2.0 [2020.5.21] 新增容器扩展能力,极大提升系统的灵活性和扩展性。 新增OhMyAgent代理worker与容器技术相结合可提供巨大的灵活可定制性。 新增“垃圾回收机制”,定期清理工作区产生的垃圾,降低磁盘占用。 新增OhMyClient高可用特性允许开发者填入多个IP进行容错。 切换Web容器为了获得更好的websocket支持OhMyScheduler当前使用undertow取代Tomcat作为Web容器。 移除Worker自动寻找可用端口功能目前仅使用配置文件制定的端口。 更改了worker序列化框架复用技术从对象池切换到了ThreadLocal为了容器技术而作出的微小性能牺牲。 美化了前端页面(再次感谢某知名上市电商公司前端工程师对本项目的大力支持)! 修复在线日志在部分情况下无法正确显示的BUG。 修复了若干我想不起来了但是确实修复了的BUG v1.1.0 [2020.5.11] 新增在线日志功能,可在控制台直接查看任务运行时日志,高效便捷! 美化了部分前端页面T_T 修复若干BUG v1.0.0 [2020.4.20] 第一个正式版本,发布了以下特性:
支持CRON、固定频率、固定延迟和API四种调度策略。 支持单机、广播、MapReduce三种执行模式。 支持任意的水平扩展,性能强劲无上限。 具有强大的故障转移与恢复能力,只要保证集群可用节点数足够,任务就能顺利完成。 仅依赖数据库,部署简单,上手容易,开发高效,仅需几行代码即可获得整个集群的分布式计算能力。 支持SpringBean、普通Java类内置/外置、Shell、Python等处理器。 </description>
</item>
<item>
<title>迁移指南</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/version/migrate/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://kfcfans.gitee.io/ohmyscheduler/docs/version/migrate/</guid>
<description>记录当发生不兼容的版本变更时,开发者需要做出的升级和迁移。 暂无</description>
</item>
</channel>
</rss>

View File

@ -0,0 +1,346 @@
<!DOCTYPE html>
<html lang="en" dir=>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="记录当发生不兼容的版本变更时,开发者需要做出的升级和迁移。 暂无">
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="迁移指南" />
<meta property="og:description" content="记录当发生不兼容的版本变更时,开发者需要做出的升级和迁移。 暂无" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://kfcfans.gitee.io/ohmyscheduler/docs/version/migrate/" />
<title>迁移指南 | OhMyScheduler</title>
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
-->
</head>
<body dir=>
<input type="checkbox" class="hidden" id="menu-control" />
<main class="container flex">
<aside class="book-menu">
<nav>
<h2 class="book-brand">
<a href="/ohmyscheduler"><span>OhMyScheduler</span>
</a>
</h2>
<div class="book-search">
<input type="text" id="book-search-input" placeholder="Search" aria-label="Search" maxlength="64" data-hotkeys="s/" />
<div class="book-search-spinner hidden"></div>
<ul id="book-search-results"></ul>
</div>
<ul>
<li>
<span>快速开始</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/startup/1-server-startup/" class="">调度中心Server部署</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/2-worker-startup/" class="">执行器Worker初始化</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/3-processor-develop/" class="">处理器开发</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/4-console-guide/" class="">任务管理与在线运维</a>
</li>
</ul>
</li>
<li>
<span>高级特性</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/super/container/" class="">容器</a>
</li>
<li>
<a href="/ohmyscheduler/docs/super/openapi/" class="">OpenAPI</a>
</li>
</ul>
</li>
<li>
<span>版本与升级</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="active">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>
</nav>
<script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script>
</aside>
<div class="book-page">
<header class="book-header">
<div class="flex align-center justify-between">
<label for="menu-control">
<img src="/ohmyscheduler/svg/menu.svg" class="book-icon" alt="Menu" />
</label>
<strong>迁移指南</strong>
<label for="toc-control">
<img src="/ohmyscheduler/svg/toc.svg" class="book-icon" alt="Table of Contents" />
</label>
</div>
<input type="checkbox" class="hidden" id="toc-control" />
<aside class="hidden clearfix">
<nav id="TableOfContents"></nav>
</aside>
</header>
<article class="markdown"><blockquote class="book-hint info">
记录当发生不兼容的版本变更时,开发者需要做出的升级和迁移。
</blockquote>
<p>暂无</p>
</article>
<footer class="book-footer">
<div class="flex flex-wrap justify-between">
</div>
</footer>
<div class="book-comments">
</div>
<label for="menu-control" class="hidden book-menu-overlay"></label>
</div>
<aside class="book-toc">
<nav id="TableOfContents"></nav>
</aside>
</main>
</body>
</html>

View File

@ -0,0 +1,411 @@
<!DOCTYPE html>
<html lang="en" dir=>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="规范:语义化版本 为了避免后期维护困难本框架需要时刻遵守如下准则 版本格式主版本号.次版本号.修订号
递增规则:
主版本号:当做了不兼容的 API 修改 次版本号:当你做了向下兼容的功能性新增 修订号:当你做了向下兼容的问题修正 更新记录 v1.2.0 [2020.5.21] 新增容器扩展能力,极大提升系统的灵活性和扩展性。 新增OhMyAgent代理worker与容器技术相结合可提供巨大的灵活可定制性。 新增“垃圾回收机制”,定期清理工作区产生的垃圾,降低磁盘占用。 新增OhMyClient高可用特性允许开发者填入多个IP进行容错。 切换Web容器为了获得更好的websocket支持OhMyScheduler当前使用undertow取代Tomcat作为Web容器。 移除Worker自动寻找可用端口功能目前仅使用配置文件制定的端口。 更改了worker序列化框架复用技术从对象池切换到了ThreadLocal为了容器技术而作出的微小性能牺牲。 美化了前端页面(再次感谢某知名上市电商公司前端工程师对本项目的大力支持)! 修复在线日志在部分情况下无法正确显示的BUG。 修复了若干我想不起来了但是确实修复了的BUG v1.1.0 [2020.5.11] 新增在线日志功能,可在控制台直接查看任务运行时日志,高效便捷! 美化了部分前端页面T_T 修复若干BUG v1.0.0 [2020.4.20] 第一个正式版本,发布了以下特性:
支持CRON、固定频率、固定延迟和API四种调度策略。 支持单机、广播、MapReduce三种执行模式。 支持任意的水平扩展,性能强劲无上限。 具有强大的故障转移与恢复能力,只要保证集群可用节点数足够,任务就能顺利完成。 仅依赖数据库,部署简单,上手容易,开发高效,仅需几行代码即可获得整个集群的分布式计算能力。 支持SpringBean、普通Java类内置/外置、Shell、Python等处理器。 ">
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="更新日志" />
<meta property="og:description" content="规范:语义化版本 为了避免后期维护困难本框架需要时刻遵守如下准则 版本格式主版本号.次版本号.修订号
递增规则:
主版本号:当做了不兼容的 API 修改 次版本号:当你做了向下兼容的功能性新增 修订号:当你做了向下兼容的问题修正 更新记录 v1.2.0 [2020.5.21] 新增容器扩展能力,极大提升系统的灵活性和扩展性。 新增OhMyAgent代理worker与容器技术相结合可提供巨大的灵活可定制性。 新增“垃圾回收机制”,定期清理工作区产生的垃圾,降低磁盘占用。 新增OhMyClient高可用特性允许开发者填入多个IP进行容错。 切换Web容器为了获得更好的websocket支持OhMyScheduler当前使用undertow取代Tomcat作为Web容器。 移除Worker自动寻找可用端口功能目前仅使用配置文件制定的端口。 更改了worker序列化框架复用技术从对象池切换到了ThreadLocal为了容器技术而作出的微小性能牺牲。 美化了前端页面(再次感谢某知名上市电商公司前端工程师对本项目的大力支持)! 修复在线日志在部分情况下无法正确显示的BUG。 修复了若干我想不起来了但是确实修复了的BUG v1.1.0 [2020.5.11] 新增在线日志功能,可在控制台直接查看任务运行时日志,高效便捷! 美化了部分前端页面T_T 修复若干BUG v1.0.0 [2020.4.20] 第一个正式版本,发布了以下特性:
支持CRON、固定频率、固定延迟和API四种调度策略。 支持单机、广播、MapReduce三种执行模式。 支持任意的水平扩展,性能强劲无上限。 具有强大的故障转移与恢复能力,只要保证集群可用节点数足够,任务就能顺利完成。 仅依赖数据库,部署简单,上手容易,开发高效,仅需几行代码即可获得整个集群的分布式计算能力。 支持SpringBean、普通Java类内置/外置、Shell、Python等处理器。 " />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://kfcfans.gitee.io/ohmyscheduler/docs/version/update/" />
<title>更新日志 | OhMyScheduler</title>
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
-->
</head>
<body dir=>
<input type="checkbox" class="hidden" id="menu-control" />
<main class="container flex">
<aside class="book-menu">
<nav>
<h2 class="book-brand">
<a href="/ohmyscheduler"><span>OhMyScheduler</span>
</a>
</h2>
<div class="book-search">
<input type="text" id="book-search-input" placeholder="Search" aria-label="Search" maxlength="64" data-hotkeys="s/" />
<div class="book-search-spinner hidden"></div>
<ul id="book-search-results"></ul>
</div>
<ul>
<li>
<span>快速开始</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/startup/1-server-startup/" class="">调度中心Server部署</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/2-worker-startup/" class="">执行器Worker初始化</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/3-processor-develop/" class="">处理器开发</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/4-console-guide/" class="">任务管理与在线运维</a>
</li>
</ul>
</li>
<li>
<span>高级特性</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/super/container/" class="">容器</a>
</li>
<li>
<a href="/ohmyscheduler/docs/super/openapi/" class="">OpenAPI</a>
</li>
</ul>
</li>
<li>
<span>版本与升级</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="active">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>
</nav>
<script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script>
</aside>
<div class="book-page">
<header class="book-header">
<div class="flex align-center justify-between">
<label for="menu-control">
<img src="/ohmyscheduler/svg/menu.svg" class="book-icon" alt="Menu" />
</label>
<strong>更新日志</strong>
<label for="toc-control">
<img src="/ohmyscheduler/svg/toc.svg" class="book-icon" alt="Table of Contents" />
</label>
</div>
<input type="checkbox" class="hidden" id="toc-control" />
<aside class="hidden clearfix">
<nav id="TableOfContents">
<ul>
<li><a href="#规范语义化版本">规范:语义化版本</a></li>
<li><a href="#更新记录">更新记录</a>
<ul>
<li><a href="#v120-2020521">v1.2.0 [2020.5.21]</a></li>
<li><a href="#v110-2020511">v1.1.0 [2020.5.11]</a></li>
<li><a href="#v100-2020420">v1.0.0 [2020.4.20]</a></li>
</ul>
</li>
</ul>
</nav>
</aside>
</header>
<article class="markdown"><h2 id="规范语义化版本">规范:语义化版本</h2>
<blockquote class="book-hint info">
为了避免后期维护困难,本框架需要时刻遵守如下准则:
</blockquote>
<p><strong>版本格式</strong>:主版本号.次版本号.修订号</p>
<p><strong>递增规则</strong></p>
<ol>
<li>主版本号:当做了不兼容的 API 修改</li>
<li>次版本号:当你做了向下兼容的功能性新增</li>
<li>修订号:当你做了向下兼容的问题修正</li>
</ol>
<h2 id="更新记录">更新记录</h2>
<h3 id="v120-2020521">v1.2.0 [2020.5.21]</h3>
<ul>
<li>新增容器扩展能力,极大提升系统的灵活性和扩展性。</li>
<li>新增<strong>OhMyAgent</strong>代理worker与容器技术相结合可提供巨大的灵活可定制性。</li>
<li>新增“垃圾回收机制”,定期清理工作区产生的垃圾,降低磁盘占用。</li>
<li>新增<strong>OhMyClient</strong>高可用特性允许开发者填入多个IP进行容错。</li>
<li>切换Web容器为了获得更好的websocket支持OhMyScheduler当前使用<strong>undertow</strong>取代Tomcat作为Web容器。</li>
<li>移除Worker自动寻找可用端口功能目前仅使用配置文件制定的端口。</li>
<li>更改了worker序列化框架复用技术从对象池切换到了ThreadLocal为了容器技术而作出的微小性能牺牲</li>
<li>美化了前端页面(再次感谢<a href="https://github.com/fengnan0929">某知名上市电商公司前端工程师</a>对本项目的大力支持)!</li>
<li>修复在线日志在部分情况下无法正确显示的BUG。</li>
<li>修复了若干我想不起来了但是确实修复了的BUG</li>
</ul>
<h3 id="v110-2020511">v1.1.0 [2020.5.11]</h3>
<ul>
<li>新增在线日志功能,可在控制台直接查看任务运行时日志,高效便捷!</li>
<li>美化了部分前端页面T_T</li>
<li>修复若干BUG</li>
</ul>
<h3 id="v100-2020420">v1.0.0 [2020.4.20]</h3>
<p><strong>第一个正式版本</strong>,发布了以下特性:</p>
<ul>
<li>支持CRON、固定频率、固定延迟和API四种调度策略。</li>
<li>支持单机、广播、<strong>MapReduce</strong>三种执行模式。</li>
<li>支持任意的水平扩展,性能强劲无上限。</li>
<li>具有强大的故障转移与恢复能力,只要保证集群可用节点数足够,任务就能顺利完成。</li>
<li>仅依赖数据库,部署简单,上手容易,开发高效,仅需几行代码即可获得整个集群的分布式计算能力。</li>
<li>支持SpringBean、普通Java类内置/外置、Shell、Python等处理器。</li>
</ul>
</article>
<footer class="book-footer">
<div class="flex flex-wrap justify-between">
</div>
</footer>
<div class="book-comments">
</div>
<label for="menu-control" class="hidden book-menu-overlay"></label>
</div>
<aside class="book-toc">
<nav id="TableOfContents">
<ul>
<li><a href="#规范语义化版本">规范:语义化版本</a></li>
<li><a href="#更新记录">更新记录</a>
<ul>
<li><a href="#v120-2020521">v1.2.0 [2020.5.21]</a></li>
<li><a href="#v110-2020511">v1.1.0 [2020.5.11]</a></li>
<li><a href="#v100-2020420">v1.0.0 [2020.4.20]</a></li>
</ul>
</li>
</ul>
</nav>
</aside>
</main>
</body>
</html>

View File

@ -3,7 +3,7 @@ input.addEventListener('focus',init);input.addEventListener('keyup',search);docu
const characterPressed=String.fromCharCode(event.charCode);if(!isHotkey(characterPressed)){return;}
input.focus();event.preventDefault();}
function isHotkey(character){const dataHotkeys=input.getAttribute('data-hotkeys')||'';return dataHotkeys.indexOf(character)>=0;}
function init(){input.removeEventListener('focus',init);input.required=true;loadScript('/ohmyscheduler/flexsearch.min.js');loadScript('/ohmyscheduler/en.search-data.min.415b9efb332dc463bc8ad5e36d161bfe46403b0c38923ed7353fe2eb834fd9b7.js',function(){input.required=false;search();});}
function init(){input.removeEventListener('focus',init);input.required=true;loadScript('/ohmyscheduler/flexsearch.min.js');loadScript('/ohmyscheduler/en.search-data.min.d511b35de2f0b83562f51f0bf38460e719dee5a90e78d64caca7ec38766fc6f5.js',function(){input.required=false;search();});}
function search(){while(results.firstChild){results.removeChild(results.firstChild);}
if(!input.value){return;}
const searchHits=window.bookSearchIndex.search(input.value,10);searchHits.forEach(function(page){const li=document.createElement('li'),a=li.appendChild(document.createElement('a'));a.href=page.href;a.textContent=page.title;results.appendChild(li);});}

View File

@ -5,9 +5,10 @@
<meta name="generator" content="Hugo 0.71.0" />
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="项目地址 GitHub | Gitee
<meta name="description" content="项目地址 GitHub
Gitee
产品介绍 OhMyScheduler是基于Akka架构的一款分布式调度与计算框架对标 Alibaba SchedulerX2.0),其主要功能特性如下:
使用简单提供前端Web界面允许开发者可视化地完成调度任务的管理增、删、改、查、任务运行状态监控和运行日志查看等功能。 定时策略完善支持CRON表达式、固定频率、固定延迟和API四种定时调度策略。 执行模式丰富支持单机、广播、Map、MapReduce四种执行模式其中Map/MapReduce处理器能使开发者寥寥数行代码便获得集群分布式计算的能力。 执行器支持广泛支持Spring Bean、普通Java对象、Shell、Python等处理器应用范围广比如广播执行&#43;Shell脚本用来清理日志 运维便捷支持在线日志功能执行器产生的日志可以在前端控制台页面实时显示降低debug成本极大地提高开发效率。 依赖精简最小仅依赖关系型数据库MySQL/Oracle/MS SQLServer&hellip;扩展依赖为MongoDB用于存储庞大的在线日志。 高可用&amp;高性能:调度服务器经过精心设计,一改其他调度框架基于数据库锁的策略,实现了无锁化调度。部署多个调度服务器可以同时实现高可用和性能的提升(支持无限的水平扩展)。 故障转移与恢复:任务执行失败后,可根据配置的重试策略完成重试,只要执行器集群有足够的计算节点,任务就能顺利完成。 适用场景 有定时执行需求的业务场景:如每天凌晨全量同步数据、生成业务报表等。 有需要全部机器一同执行的业务场景:如日志清理。 有需要分布式处理的业务场景比如需要更新一大批数据单机执行耗时非常长可以使用Map/MapReduce处理器完成任务的分发调动整个集群加速计算。 同类产品对比 QuartZ xxl-job SchedulerX 2.0 OhMyScheduler 定时类型 CRON CRON CRON、固定频率、固定延迟、OpenAPI CRON、固定频率、固定延迟、OpenAPI 任务类型 内置Java 内置Java、GLUE Java、Shell、Python等脚本 内置Java、外置JavaFatJar、Shell、Python等脚本 内置Java、外置Java容器、Shell、Python等脚本 分布式任务 无 静态分片 MapReduce动态分片 MapReduce动态分片 在线任务治理 不支持 支持 支持 支持 日志白屏化 不支持 支持 不支持 支持 调度方式及性能 基于数据库锁,有性能瓶颈 基于数据库锁,有性能瓶颈 不详 无锁化设计,性能强劲无上限 报警监控 无 邮件 短信 邮件,提供接口允许开发者扩展 系统依赖 MySQL MySQL 人民币(公测期间免费,哎,帮打个广告吧) 任意Spring Data Jpa支持的关系型数据库MySQL、Oracle&hellip; DAG工作流 不支持 不支持 支持 暂不支持,有明确开发计划 ">
使用简单提供前端Web界面允许开发者可视化地完成调度任务的管理增、删、改、查、任务运行状态监控和运行日志查看等功能。 定时策略完善支持CRON表达式、固定频率、固定延迟和API四种定时调度策略。 执行模式丰富支持单机、广播、Map、MapReduce四种执行模式其中Map/MapReduce处理器能使开发者寥寥数行代码便获得集群分布式计算的能力。 执行器支持广泛支持Spring Bean、内置/外置Java类、Shell、Python等处理器应用范围广。 运维便捷支持在线日志功能执行器产生的日志可以在前端控制台页面实时显示降低debug成本极大地提高开发效率。 依赖精简最小仅依赖关系型数据库MySQL/Oracle/MS SQLServer&hellip;扩展依赖为MongoDB用于存储庞大的在线日志。 高可用&amp;高性能:调度服务器经过精心设计,一改其他调度框架基于数据库锁的策略,实现了无锁化调度。部署多个调度服务器可以同时实现高可用和性能的提升(支持无限的水平扩展)。 故障转移与恢复:任务执行失败后,可根据配置的重试策略完成重试,只要执行器集群有足够的计算节点,任务就能顺利完成。 适用场景 有定时执行需求的业务场景:如每天凌晨全量同步数据、生成业务报表等。 有需要全部机器一同执行的业务场景:如使用广播执行模式清理集群日志。 有需要分布式处理的业务场景比如需要更新一大批数据单机执行耗时非常长可以使用Map/MapReduce处理器完成任务的分发调动整个集群加速计算。 同类产品对比 QuartZ xxl-job SchedulerX 2.0 OhMyScheduler 定时类型 CRON CRON CRON、固定频率、固定延迟、OpenAPI CRON、固定频率、固定延迟、OpenAPI 任务类型 内置Java 内置Java、GLUE Java、Shell、Python等脚本 内置Java、外置JavaFatJar、Shell、Python等脚本 内置Java、外置Java容器、Shell、Python等脚本 分布式任务 无 静态分片 MapReduce动态分片 MapReduce动态分片 在线任务治理 不支持 支持 支持 支持 日志白屏化 不支持 支持 不支持 支持 调度方式及性能 基于数据库锁,有性能瓶颈 基于数据库锁,有性能瓶颈 不详 无锁化设计,性能强劲无上限 报警监控 无 邮件 短信 邮件,提供接口允许开发者扩展 系统依赖 MySQL MySQL 人民币(公测期间免费,哎,帮打个广告吧) 任意Spring Data Jpa支持的关系型数据库MySQL、Oracle&hellip; DAG工作流 不支持 不支持 支持 暂不支持,有明确开发计划 ">
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="介绍" />
<meta property="og:description" content="" />
<meta property="og:type" content="website" />
@ -17,7 +18,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<link rel="alternate" type="application/rss+xml" href="https://kfcfans.gitee.io/ohmyscheduler/index.xml" title="OhMyScheduler" />
<!--
Made with Book Theme
@ -173,7 +174,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -184,12 +185,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>
@ -242,14 +283,15 @@ https://github.com/alex-shpak/hugo-book
<article class="markdown"><p><img src="oms-logo.png" alt="logo" /></p>
<h2 id="项目地址">项目地址</h2>
<p><a href="https://github.com/KFCFans/OhMyScheduler">GitHub</a> | <a href="https://gitee.com/KFCFans/OhMyScheduler">Gitee</a></p>
<p>GitHub<a href="https://github.com/KFCFans/OhMyScheduler"><img src="https://img.shields.io/github/stars/kfcfans/OhMyScheduler?style=social" alt="GitHub stars" /></a> <a href="https://github.com/KFCFans/OhMyScheduler"><img src="https://img.shields.io/github/forks/kfcfans/OhMyScheduler?style=social" alt="GitHub forks" /></a></p>
<p>Gitee <a href="https://gitee.com/KFCFans/OhMyScheduler"><img src="https://gitee.com/KFCFans/OhMyScheduler/badge/star.svg?theme=dark" alt="star" /></a> <a href="https://gitee.com/KFCFans/OhMyScheduler"><img src="https://gitee.com/KFCFans/OhMyScheduler/badge/fork.svg?theme=dark" alt="fork" /></a></p>
<h2 id="产品介绍">产品介绍</h2>
<p><strong>OhMyScheduler是基于Akka架构的一款分布式调度与计算框架对标 Alibaba SchedulerX2.0),其主要功能特性如下</strong></p>
<ul>
<li>使用简单提供前端Web界面允许开发者可视化地完成调度任务的管理增、删、改、查、任务运行状态监控和运行日志查看等功能。</li>
<li>定时策略完善支持CRON表达式、固定频率、固定延迟和API四种定时调度策略。</li>
<li>执行模式丰富支持单机、广播、Map、MapReduce四种执行模式其中Map/MapReduce处理器能使开发者寥寥数行代码便获得集群分布式计算的能力。</li>
<li>执行器支持广泛支持Spring Bean、普通Java对象、Shell、Python等处理器应用范围广比如广播执行+Shell脚本用来清理日志</li>
<li>执行器支持广泛支持Spring Bean、内置/外置Java类、Shell、Python等处理器应用范围广。</li>
<li>运维便捷支持在线日志功能执行器产生的日志可以在前端控制台页面实时显示降低debug成本极大地提高开发效率。</li>
<li>依赖精简最小仅依赖关系型数据库MySQL/Oracle/MS SQLServer&hellip;扩展依赖为MongoDB用于存储庞大的在线日志</li>
<li>高可用&amp;高性能:调度服务器经过精心设计,一改其他调度框架基于数据库锁的策略,实现了无锁化调度。部署多个调度服务器可以同时实现高可用和性能的提升(支持无限的水平扩展)。</li>
@ -258,7 +300,7 @@ https://github.com/alex-shpak/hugo-book
<h2 id="适用场景">适用场景</h2>
<ul>
<li>有定时执行需求的业务场景:如每天凌晨全量同步数据、生成业务报表等。</li>
<li>有需要全部机器一同执行的业务场景:如日志清理</li>
<li>有需要全部机器一同执行的业务场景:如使用广播执行模式清理集群日志</li>
<li>有需要分布式处理的业务场景比如需要更新一大批数据单机执行耗时非常长可以使用Map/MapReduce处理器完成任务的分发调动整个集群加速计算。</li>
</ul>
<h2 id="同类产品对比">同类产品对比</h2>

View File

@ -22,6 +22,18 @@
oms-template-origin // 工程名称,可以自由更改 ├── pom.xml └── src ├── main │ ├── java │ │ └── cn │ │ └── edu │ │ └── zju │ │ └── tjq │ │ └── container │ │ └── samples // 所有处理器代码必须位于该目录下,其余类随意 │ └── resources // 严禁随意更改以下两个配置文件(允许添加,不允许更改现有内容) │ ├── oms-worker-container-spring-context.xml │ └── oms-worker-container.</description>
</item>
<item>
<title>更新日志</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/version/update/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://kfcfans.gitee.io/ohmyscheduler/docs/version/update/</guid>
<description>规范:语义化版本 为了避免后期维护困难,本框架需要时刻遵守如下准则: 版本格式:主版本号.次版本号.修订号
递增规则:
主版本号:当做了不兼容的 API 修改 次版本号:当你做了向下兼容的功能性新增 修订号:当你做了向下兼容的问题修正 更新记录 v1.2.0 [2020.5.21] 新增容器扩展能力,极大提升系统的灵活性和扩展性。 新增OhMyAgent代理worker与容器技术相结合可提供巨大的灵活可定制性。 新增“垃圾回收机制”,定期清理工作区产生的垃圾,降低磁盘占用。 新增OhMyClient高可用特性允许开发者填入多个IP进行容错。 切换Web容器为了获得更好的websocket支持OhMyScheduler当前使用undertow取代Tomcat作为Web容器。 移除Worker自动寻找可用端口功能目前仅使用配置文件制定的端口。 更改了worker序列化框架复用技术从对象池切换到了ThreadLocal为了容器技术而作出的微小性能牺牲。 美化了前端页面(再次感谢某知名上市电商公司前端工程师对本项目的大力支持)! 修复在线日志在部分情况下无法正确显示的BUG。 修复了若干我想不起来了但是确实修复了的BUG v1.1.0 [2020.5.11] 新增在线日志功能,可在控制台直接查看任务运行时日志,高效便捷! 美化了部分前端页面T_T 修复若干BUG v1.0.0 [2020.4.20] 第一个正式版本,发布了以下特性:
支持CRON、固定频率、固定延迟和API四种调度策略。 支持单机、广播、MapReduce三种执行模式。 支持任意的水平扩展,性能强劲无上限。 具有强大的故障转移与恢复能力,只要保证集群可用节点数足够,任务就能顺利完成。 仅依赖数据库,部署简单,上手容易,开发高效,仅需几行代码即可获得整个集群的分布式计算能力。 支持SpringBean、普通Java类内置/外置、Shell、Python等处理器。 </description>
</item>
<item>
<title>调度中心Server部署</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/startup/1-server-startup/</link>
@ -64,6 +76,15 @@ oms-template-origin // 工程名称,可以自由更改 ├── pom.xml └
@Configuration public class OhMySchedulerConfig { @Bean public OhMyWorker initOMS() throws Exception { // 服务器HTTP地址端口号为 server.port而不是 ActorSystem port List&amp;lt;String&amp;gt; serverAddress = Lists.</description>
</item>
<item>
<title>迁移指南</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/version/migrate/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://kfcfans.gitee.io/ohmyscheduler/docs/version/migrate/</guid>
<description>记录当发生不兼容的版本变更时,开发者需要做出的升级和迁移。 暂无</description>
</item>
<item>
<title>处理器开发</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/startup/3-processor-develop/</link>
@ -94,5 +115,32 @@ ProcessResult process(TaskContext context) throws Exception; 方法入参TaskCon
任务重试次数实例级别失败了整个任务实例重试会更换TaskTracker本次任务实例的Master节点代价较大大型Map/MapReduce慎用。 子任务重试次数Task级别每个子Task失败后单独重试会更换ProcessorTracker本次任务实际执行的Worker节点代价较小推荐使用。 注对于单机任务来说假如任务重试次数和子任务重试次数都配置了1且都执行失败实际执行次数会变成4次推荐任务实例重试配置为0子任务重试次数根据实际情况配置。 机器配置用来标明允许执行任务的机器状态避开那些摇摇欲坠的机器0代表无任何限制。</description>
</item>
<item>
<title>开发计划</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/todo/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://kfcfans.gitee.io/ohmyscheduler/docs/todo/</guid>
<description>截止目前v1.2.0),框架的基本功能(调度和分布式计算)已经趋于稳定,大家可以放心接入使用。不过为了使框架更为成熟易用,仍有需要不断改进和开发的地方。 下阶段规划 支持DAG工作流 任务的优先级系统需要可抢占式实现而不是SchedulerX那种傻等式 在线日志的限流 &amp;amp; 本地数据库分表提升在线日志最大吞吐量 保护性判断(优先级较低,太繁琐了且意义不大,毕竟面向开发者,大家不会乱填参数对不对~) 共同建设邀请 (❁´◡`❁)✲゚ 都看到这里了,相比您对本项目产生了浓厚的兴趣,欢迎加入开源社区,为框架贡献自己的力量~
PR、Issue求求了
如果有什么想法、建议或意见都欢迎联系作者tengjiqi@gmail.com。</description>
</item>
<item>
<title>FAQ</title>
<link>https://kfcfans.gitee.io/ohmyscheduler/docs/faq/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://kfcfans.gitee.io/ohmyscheduler/docs/faq/</guid>
<description>这里记录一些好问题和高频问题。 Q生成环境能用吗 A可以。框架从发布到现在已经趋于稳定且开发者@KFCFans当前有充足的时间维护框架一旦发现bug可以联系我保证第一时间修复
Q请问有没有通过API增删改查执行的操作 AOpenAPI就是为此而生的。OpenAPI在Http的基础上进行了封装提供规范的接口完成任务的管理与运维。
QIgnite也支持分布式计算请问这个项目有什么优势 A从本质上讲OhMyScheduler是一个具有分布式计算能力的调度平台而Ignite是一个分布式计算平台前者立足于调度虽然本项目的亮点是分布式计算没错啦…后者立足于大数据计算两者立足点不同。
从分布式计算的角度来讲Ignite确实具备全部OhMyScheduler的功能毕竟人家是Apache顶级项目&amp;hellip;OhMyScheduler-Worker集群可以看成嵌入式的Ignite集群整体对外提供服务。两者虽然表面上功能有所重合但背后的设计理念是截然不同的。
Ignite本质上是由分布式内存SQL数据库发展而来的分布式计算平台它解决的问题更偏向于大数据处理Spark、Hadoop之类因此对于传统的Java项目并不是非常友好比如官方推荐的部署模式是建立独立的Ignite集群负责计算业务应用只负责提交代码。再比如获取各种资源Spring Bean都需要先注入Ignite中这对于依赖繁杂的业务来说是非常痛苦的。
而OhMyScheduler就是面向业务应用设计的从示例代码中也能看出开发OhMyScheduler的处理器是没有任何额外的成本的想要某个SpringBean直接注入即可。想要分发任务调用map方法即可开发者的学习和使用成本会低很多。
一句话总结就是Ignite的分布式计算偏向于数据侧适用于大数据处理。而OhMyScheduler的分布式计算偏向于业务侧适用于传统Java应用的业务处理。
此外高效开发一直是OhMyScheduler的设计理念像在线查看任务运行情况、在线查看任务运行日志等功能在实际开发中将会非常实用。</description>
</item>
</channel>
</rss>

View File

@ -10,6 +10,10 @@
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/startup/</loc>
</url>
<url>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/version/update/</loc>
</url>
<url>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/startup/1-server-startup/</loc>
</url>
@ -22,6 +26,10 @@
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/startup/2-worker-startup/</loc>
</url>
<url>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/version/migrate/</loc>
</url>
<url>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/super/</loc>
</url>
@ -30,12 +38,20 @@
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/startup/3-processor-develop/</loc>
</url>
<url>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/version/</loc>
</url>
<url>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/startup/4-console-guide/</loc>
</url>
<url>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/version/</loc>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/todo/</loc>
</url>
<url>
<loc>https://kfcfans.gitee.io/ohmyscheduler/docs/faq/</loc>
</url>
<url>

View File

@ -14,7 +14,7 @@
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<script defer src="/ohmyscheduler/en.search.min.8c0739389d262fcac555a16288129e832618f93ba193658e88e4cfeb51a71475.js" integrity="sha256-jAc5OJ0mL8rFVaFiiBKegyYY&#43;Tuhk2WOiOTP61GnFHU="></script>
<link rel="alternate" type="application/rss+xml" href="https://kfcfans.gitee.io/ohmyscheduler/tags/index.xml" title="OhMyScheduler" />
<!--
Made with Book Theme
@ -170,7 +170,7 @@ https://github.com/alex-shpak/hugo-book
<li>
<span>更新日志</span>
<span>版本与升级</span>
@ -181,12 +181,52 @@ https://github.com/alex-shpak/hugo-book
<ul>
<li>
<a href="/ohmyscheduler/docs/version/update/" class="">更新日志</a>
</li>
<li>
<a href="/ohmyscheduler/docs/version/migrate/" class="">迁移指南</a>
</li>
</ul>
</li>
<li>
<a href="/ohmyscheduler/docs/todo/" class="">开发计划</a>
</li>
<li>
<a href="/ohmyscheduler/docs/faq/" class="">FAQ</a>
</li>
</ul>