What is Openjob?
Openjob is a distributed and high-performance task scheduling framework that supports multiple cronjob, delay task, workflow, lightweight distributed computing, unlimited horizontal scaling, with high scalability and fault tolerance. Also has perfect permission management, powerful alarm monitoring, and support multiple languages
Feature
Openjob not only supports basic cronjob, but also provides delayed jobs, distributed computing, and workflow
Cronjob
Delay Task
Distributed Computing
-
Sharding,like Elastic-Job model, configure sharding numbers on the management, which can be scheduled to different client by sharding, and supports multiple languages.
Processor
Visual operations
Alarms and permissions
-
Provides task event monitoring alarms, detailed alarm histories, and support notifications with WeChat, Feishu, and webhook triggers.
Multiple languages
Use cases
Openjob is well-suited for business scenarios that have task schedule and delay task. such as every day to clean data and report generation. It is also suitable for lightweight computing, and Map/MapReduce can process big data computing. For complex task flows or workflow, it can design workflow with UI
Open source
Item |
Quartz |
Elastic-Job |
XXL-JOB |
Openjob |
Cronjob |
Cron |
Cron |
Cron |
Cronjob second Onetime Fixed rate |
Delay task |
No |
No |
No |
Distributed, high-performance delay task based on Redis |
Workflow |
No |
No |
No |
Workflow design with UI |
Distributed Computing |
No |
Sharding |
Sharding |
Broadcast Map/MapReduce Sharding |
Multiple languages |
Java |
Java Shell |
Java Shell |
Java Go(Gin、beego) PHP(Swoft) Python(Agent) Shell HTTP Kettle |
Visualization |
No |
Weak |
Task history Task log(Not support storage) Dashboard |
Task history Task log(support H2/Mysql/Elasticsearch) Dashboard Full permissions Task log stack |
Manageable |
No |
enable、disable task |
enable、disable task execute once stop |
enable、disable task execute once kill stop |
Alarms |
No |
|
|
custom event webhook |
Performance |
Every task scheduling try to acquire a lock through the database, causes a high pressure on the database |
ZooKeeper is performance bottleneck |
Task scheduling is only by master, causes a high pressure on master |
Uses sharding algorithm, each node can be scheduled without lock, supports unlimited horizontal scaling, and supports big task scheduling |
More
from Hacker News https://ift.tt/E8LIC5Z
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.