Распределенная высокопроизводительная система управления задачами
Openjob — это распределенная высокопроизводительная система для управления задачами, поддерживающая различные задачи с периодическим выполнением, задержкой, рабочие процессы, легковесные распределенные вычисления, бесконечное горизонтальное масштабирование, а также обладающая высокой масштабируемостью и отказоустойчивостью. Система также имеет полный набор средств управления доступом, мощные средства мониторинга и оповещения, а также нативную поддержку нескольких языков программирования.## Основные характеристики
Распределенная отказоустойчивая архитектура, использующая архитектуру Master/Worker, поддерживает различные базы данных (MySQL/PostgreSQL/Oracle).
Основана на согласованной стратегии шардинга, полностью бесблокированный дизайн, точное расписание задач до секундного уровня, поддерживает легковесные распределенные вычисления и бесконечное горизонтальное масштабирование.
Поддерживает распределенные задачи с периодическим выполнением, задачи с фиксированной частотой, высокопроизводительные задачи до секундного уровня, а также одноразовые задачи.
Поддерживает одиночные, широковещательные, Map, MapReduce и шардинговые модели распределенного программирования, что позволяет легко реализовать распределенные вычисления больших данных.
Основана на Redis для реализации высокопроизводительных задач с задержкой, использует многоуровневое хранение задач, что обеспечивает богатые статистические данные и отчеты.
Включает встроенный движок для управления рабочими процессами, поддерживает визуальное проектирование DAG, что позволяет эффективно реализовать сложные задачи.
Полный набор метрик для мониторинга, богатые и своевременные способы оповещения, что позволяет операторам быстро находить и решать проблемы в реальном времени.
Нативная поддержка нескольких языков программирования (Java/Go/PHP/Python), а также интеграция с фреймворками Spring Boot, Gin, Swoft и др.## Сравнение с открытыми проектами
Проект | Quartz | Elastic-Job | XXL-JOB | Openjob |
---|---|---|---|---|
Расписание задач | Cron | Cron | Cron | 1. Задачи с периодическим выполнением 2. Задачи до секундного уровня 3. Одноразовые задачи 4. Задачи с фиксированной частотой |
Задачи с задержкой | Нет | Нет | Нет | Основана на Redis для реализации распределенных высокопроизводительных задач с задержкой, что позволяет объединить расписание и задержку |
Расписание задач | Нет | Нет | Нет | Через графическое проектирование задач (workflow) |
Распределенное вычисление | Не поддерживается | Статическое шарпинг | БROADCAST | 1. БROADCAST 2. Map/MapReduce 3. Многомеждучное статическое шарпинг |
Многоязычность | Java | 1. Java 2. Скриптовые задачи | 1. Java 2. Скриптовые задачи | 1. Java 2. Go(Gin, beego) 3. PHP(Swoft)* Python(Agent) 4. Скриптовые задачи 5. HTTP задачи 6. Kettle |
Визуализация | Нет | Слабая | 1. История 2. Запущенные логи (не поддерживается хранение) | 1. История 2. Запущенные логи (поддерживается H2/Mysql/Elasticsearch) 3. Мониторинг панели 4. Запись действий 5. Просмотр логов стека |
Управляемость | Нет | Включение/отключение задач | 1. Включение/отключение задач 2. Ручное запуск задач 3. Остановка задач | 1. Включение/отключение задач 2.Ручное запуск задач 3. Остановка задач |
Уведомления и мониторинг | Нет | Электронная почта | Электронная почта | 1. Электронная почта 2. webhook 3. WeCom 4. Lark |
Производительность | Каждое расписание через DB захватывает блокировку, создает нагрузку на DB | ZooKeeper является бутылем производительности | Расписание осуществляется узлом Master, создается нагрузка на узел Master | Задачи используют алгоритм шарпинга, каждый узел может расписание, нет бутылей производительности, поддерживает бесконечное горизонтальное масштабирование, поддерживает расписание массовых задач |
<openjob.worker.version>1.0.7</openjob.worker.version> io.openjob.worker openjob-worker-core ${openjob.worker.version}
io.openjob.worker openjob-worker-spring-boot-starter ${openjob.worker.version} ```Discord: https://discord.gg/ZUmX57fKa5
QQ группа: 849015265
Бот в WeChat:
Публичный аккаунт WeChat:
Электронная почта:
Этот проект существует благодаря всем людям, которые вносят свой вклад. [Сотрудники].
Openjob находится под лицензией Apache 2.0. Подробнее в файле LICENSE.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )