1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/KFCFans-PowerJob

06.03.2025 07:42
GitLife Service Account

Основной фреймворк PowerJob

🏮Команда PowerJob поздравляет вас с Лошадиным годом! Желаем вам здоровья, успехов во всех начинаниях, семейного благополучия и счастья!🏮

Возможности 🚀

  • Улучшение Map/MapReduce
    • Оптимизация производительности: обновление нижнего уровня архитектуры выполнения, использование SWAP для поддержки миллионов/миллиардов задач
    • Оптимизация стратегий: поддержка конфигурации поведения TaskTracker (настройки задач — продвинутые настройки — поведение TaskTracker), введение режима PADDLING (погружение) главного узла. Включив этот режим, главный узел будет заниматься только управлением, не участвуя в вычислениях, что обеспечивает максимальную стабильность. Этот подход особенно полезен при работе со множеством узлов, когда потеря одного вычислительного узла может привести к увеличению стабильности системы.
  • Улучшенное обслуживание: открытое представление подзадач для задач типа Map/MapReduce, позволяющее четко следить за состоянием кластера
  • Расширенные стратегии распределения: новый режим SPECIFY (определение) главного узла. Часто используется в контексте Map/MapReduce, где масштабируемость вычислений требует создания изолированной среды для главного узла, чтобы минимизировать влияние обычных рабочих узлов. Указание синтаксически эквивалентно указанию адреса машины исполнения, можно использовать IP или TAG.## Исправления ошибок 🐛
  • FIX: Совместимость сериализации HTTP протокола между версиями (низкие версии могут быть решены путём отдельного обновления зависимости до последней версии)

Совместимость 👀

  • База данных job_info таблицы в сервере powerjob была расширена новыми полями dispatch_strategy_config и advanced_runtime_config по сравнению с предыдущими версиями
  • Полная совместимость с предыдущей версией, то есть общая совместимость с версиями 4.2.x и 4.3.x (при использовании HTTP протокола требуется обновление зависимости powerjob-remote-impl-http для решения проблемы сериализации)
Последнее сообщение коммита: Merge branch '4.3.8_zjlab_v2'
Предпросмотр версии
06.03.2025 07:42
GitLife Service Account

Основной фреймворк PowerJob

🏮Команда PowerJob поздравляет всех с Лунным Новым Годом! Желаем вам процветания, здоровья, благополучия и семейного счастья в новом году!🏮


В этом выпуске был внедрен механизм управления пользователями и правами доступа. Хотя основные функции остались без изменений, улучшения были сделаны на уровне административного интерфейса. Это может повлиять на некоторых уже использующих систему пользователей и может вызвать некоторые совместимости, которые ещё не были полностью учтены.

Поэтому версия 5.0.0 выходит как тестовая версия (BETA) и мы просим вас:

  • Новым пользователям рекомендуется активно использовать и провести полное тестирование перед запуском в рабочую среду.
  • Уже использующим пользователям рекомендуется прочитать соответствующие руководства по функциям и руководство по миграции. Если возможно, попробуйте обновление в менее критических сценариях и сообщите любые проблемы в ISSUE, чтобы избежать проблем при будущих обновлениях.
  • В период тестирования (BETA) приветствуем отзывы от любого пользователя. PowerJob стремится предоставить максимально возможные возможности.

Возможности 🚀

  • Полная поддержка системы управления пользователями и правами доступа подробнее здесь## Совместимость 👀

Основные изменения в версиях 5.x заключаются в введении системы учетных записей пользователей и прав доступа, что затрагивает серверную часть. Часть работников (workers) остаётся совместимой (то есть powerjob-worker 5.x и 4.x имеют одинаковое поведение и могут использоваться вместе с версией 5.x сервера).

  • powerjob-server: подробнее здесь
  • powerjob-worker: 4.x и 5.x совместимы, сервер 5.x может управлять работниками 4.x, а сервер 4.x может управлять работниками 5.x.
Последнее сообщение коммита: chore: fix some problem then upgrade project version to 5.0.0-beat2
06.03.2025 07:41
GitLife Service Account

Основной фреймворк PowerJob

🏮Команда PowerJob поздравляет вас с Лунным Новым Годом! Желаем вам процветания, здоровья, благополучия и семейного счастья в новом году!🏮

Возможности 🚀

  • Улучшение сетевой библиотеки: автоматическое получение IP, доступного для связи с сервером при запуске worker'а, что значительно снижает вероятность возникновения проблем связи из-за неправильной привязки сетевых карт #762
  • Обновление базовых библиотек: обновление зависимостей основных компонентов h2, logback, Spring и других, решение потенциальных вопросов безопасности #762
  • Оптимизация производительности: отсеивание бесполезных результатов в задачах Map, что повышает производительность узлов TaskTracker при расчётах в крупных кластерах
  • Базовая оптимизация: улучшение логирования, корректировка уровней логирования, некорректных ранее, добавление ключевых логов, таких как медленные запросы, для помощи в диагностике стабильности системы #657## Исправления ошибок 🐛
  • fix: исправлена ошибка, связанная с некорректно закрытым потоком файла при использовании MySQL для хранения логов. by @yuhan0501 in https://github.com/PowerJob/PowerJob/pull/807
  • fix: исправлена ошибка, вызванная отсутствием адреса электронной почты, что приводило к ошибкам в отправке уведомлений. #808 by @lvhjean in https://github.com/PowerJob/PowerJob/pull/810
  • fix: исправлена потенциальная ошибка, которая могла привести к непредвиденному завершению задачи планировщика, что повысило её стабильность. by @dudiao
  • fix: исправлена ошибка, которая могла препятствовать нормальному отображению детальной информации о задаче при развертывании кластера серверов.
  • fix: исправлена ошибка, когда наличие пользовательского аннотированного метода делало аннотацию @PowerJobHandler недействительной, что затрудняло поиск обработчика. #770
  • fix: исправлена ошибка циклической записи логов при проверке состояния сервера, что могло привести к переполнению жёсткого диска. #769## Совместимость 👀
  • Полная совместимость со всеми предыдущими версиями, то есть совместимость со всеми версиями 4.2.x и 4.3.x
Последнее сообщение коммита: Merge branch '4.3.7_v2'
06.03.2025 07:41
GitLife Service Account

Основной фреймворк PowerJob

Возможности 🚀

  • Добавлена поддержка MinIO в хранилище данных, спасибо за вклад @Yusanku
  • Worker теперь поддерживает возможность отложенного соединения с сервером (#725), связанные параметры конфигурации были изменены следующим образом:
    • PowerJobWorkerConfig: enableTestMode -> allowLazyConnectServer
    • Spring Boot Properties: powerjob.worker.enable-test-mode -> powerjob.worker.allow-lazy-connect-server

Исправление ошибок 🐛

  • При монтировании хранилища с бесконечной емкостью произошло переполнение метрик дисковой системы, что привело к невозможности распределения задач worker (#720), спасибо за вклад @zhihui1999
  • Устранено сообщение об ошибке при копировании выходных логов процессора скриптов (в действии это никак не влияет) (#682) автор @dudiao

Совместимость 👀

  • Полностью совместим с предыдущими версиями, то есть совместим с версиями 4.2.x и 4.3.x
Последнее сообщение коммита: Merge branch '4.3.6'
06.03.2025 07:40
GitLife Service Account

Основной фреймворк PowerJob

Возможности 🚀

  • Поддержка развертывания вне локальной сети, с использованием powerjob.network.external.address и powerjob.network.external.port для привязки внешнего фактического адреса связи, что решает проблемы использования при неравенстве адресов NAT и других сценариях #502 #579
  • Абстракция удалённого файлового хранилища, включая встроенные реализации для MongoDB, AliyunOSS и MySQL-подобных баз данных, а также возможность легкого расширения для пользовательских реализаций #130 #706

Улучшения ⭐️

  • Устранение высокой задержки при отображении онлайн-журналов
  • Улучшение вывода ошибочных журналов протокола HTTP
  • Улучшение логики получения IP-адресов из сетевой адресной базы @oSunnyo

Исправление ошибок 🐛

  • Исправлено некорректное управление таймаутами #678
  • Исправлена проблема невозможности очистки отправителей уведомлений #676 @archibald-nice

Совместимость 👀

  • Полная совместимость со всеми версиями 4.2.x и 4.3.x
Последнее сообщение коммита: Merge branch '4.3.5'
06.03.2025 07:40
GitLife Service Account

Официальный процессор PowerJob

Перейти к руководству по использованию

Возможности 🚀

  • Новая версия: универсальный валидационный процессор, помогает новым пользователям быстро ознакомиться с функциями PowerJob: tech.powerjob.official.processors.impl.VerificationProcessor
Последнее сообщение коммита: Merge branch '4.3.4'
06.03.2025 07:40
GitLife Service Account

Основной фреймворк PowerJob

Возможности 🚀

  • Поддержка методического уровня процессора в Spring, подробное описание можно найти в официальной документации или в #610, благодарим за вклад @vannewang
  • Поддержка режима FatJar для powerjob-server, подробнее см. GITEE#I6H8JF

Исправление ошибок 🐛

  • Устранена проблема с невозможностью передачи результата выполнения задач почти нулевой длительности при экстремальных условиях #620

Совместимость 👀

  • Полная совместимость со всеми версиями 4.2.x и 4.3.x
Последнее сообщение коммита: Merge branch '4.3.3'
06.03.2025 07:40
GitLife Service Account

Основной фреймворк PowerJob

Устранение ошибок 🐛

  • Исправлено добавление лишних кавычек при прямом добавлении строки в рабочий процесс #307
  • Исправлено отсутствие работы конфигурации префикса таблиц oms.table-prefix #584
  • Исправлено отсутствие возможности запуска при активированном тестовом режиме powerjob.worker.enable-test-mode, даже если нет соединения с сервером #580
  • Исправлено блокирование общего старта при неудачном активировании продвинутых возможностей Netty #591

Совместимость 👀

  • Полностью совместим с версиями 4.2.x и Yöntem 4.3.x
Последнее сообщение коммита: Merge branch '4.3.2-main'
06.03.2025 07:40
GitLife Service Account

Основной фреймворк PowerJob

Возможности 🚀

  • [Новая функция] Поддержка нового расписания: DailyTimeInterval (ежедневный фиксированный интервал) #558
  • [Новая функция] Поддержка экспорта и импорта задач, теперь не стоит беспокоиться о синхронизации конфигураций задач между различными окружениями #571
  • [Новая функция] Поддержка новых типов логов: LOCAL_AND_ONLINE #553
  • [Новая функция] Информация о процессорах теперь включает полное имя класса и дополнительную возможность конфигурации через SpringBeanName, см. пример tech.powerjob.samples.tester.TestFindByBeanNameProcessor
  • [Совместимость] powerjob-worker-spring-boot-starter адаптирован для SpringBoot3 @dudiao

Исправление ошибок 🐛

  • Устранена проблема совместимости протокола HTTP в многоязычных средах @dudiao

Совместимость 👀

  • Полностью совместим с предыдущими версиями, то есть совместим со всеми версиями 4.2.x и 4.3.x
Последнее сообщение коммита: Merge branch '4.3.1-main'
06.03.2025 07:40
GitLife Service Account

🏮PowerJob всем коллективом желает вам кроличьего года счастья, здоровья в новом году, всего самого лучшего, семейного счастья и благополучия!🏮

Основной фреймворк PowerJob

Возможности 🚀

Версия 4.3.0 была переработана для внутреннего уровня связи PowerJob, теперь она полностью отвязана от конкретной реализации.- Абстрактный уровень сетевой архитектуры powerjob-remote-framework, который предоставляет два официальных варианта реализации — AKKA (протокол связи предыдущих версий) и HTTP, а также позволяет пользователям расширять свои протоколы связи #520
- powerjob-server: Внутренний протокол связи в версиях 4.3.0 и выше был заменён с AKKA на HTTP. Пользователи, переходящие с более ранних версий, должны проверить следующее:
- Если вы хотите использовать протокол HTTP (рекомендовано), убедитесь, что порт внутренней HTTP-связи сервера (по умолчанию oms.http.port=10010) открыт
- Если вы предпочитаете использовать протокол AKKA или другой пользовательский протокол, это можно указать через параметр конфигурации oms.transporter.main.protocol
- powerjob-worker: Для обеспечения обратной совместимости используется по умолчанию протокол AKKA. Чтобы поменять протокол, используйте свойства конфигурационного файла protocol

  • Абстрактный фабрика процессора ProcessorFactory, которая позволяет пользователям создавать логику загрузки процессоров для различных пользовательских расширений (например, неподдерживаемых официально IOC-фреймворков, микросервисов и т.д.) #508
  • Поддерживает возможность задания рабочей директории worker через параметры запуска -Dpowerjob.worker.workspace= #521## Исправление ошибок 🐛
  • Устранена проблема зависания модели легковесных задач в версии 4.2.1 при возникновении ошибок в параметрах

Совместимость 👀

  • Общая совместимость с версией 4.2.x, то есть сервер версии 4.2.x может управлять worker'ами версии 4.3.x, а сервер версии 4.3.x может управлять worker'ами версии 4.2.x
Последнее сообщение коммита: Merge branch '4.3.0'
06.03.2025 07:39
GitLife Service Account

Основной фреймворк PowerJob

Оптимизация ⭐️

Версия 4.2.1 значительно оптимизирована для сценариев высокой конкурентности. Если вам требуются такие сценарии, настоятельно рекомендуем обновиться!- В Worker добавлен легковесный модель задачи, чтобы уменьшить использование вычислительных ресурсов простыми задачами.
- Легковесная задача: это задача, выполняющаяся на одном сервере и не требующая выполнения с постоянной частотой или задержкой.
- По умолчанию прекращение работы легковесной задачи запрещено; можно включить его через параметр -Dpowerjob.worker.allowed-force-stop-thread=true.

  • В процессе распределения задач добавлен обратный механизм давления, что решает проблему перегрузки и отказа Worker при высокой конкуренции.
    • Когда количество успешно полученных и ещё не завершённых задач (включая легковесные и тяжёлые) достигнет установленного максимума (который можно указать через параметры maxLightweightTaskNum и maxHeavyweightTaskNum), Worker перестанет принимать новые запросы от Server и будет сообщать о своём состоянии при отправке пульса.
    • Server не будет направлять задачи на перегруженные Worker. Если все доступные Worker для конкретного приложения находятся в состоянии перегрузки, система будет логировать предупреждение и пропустит все последующие задачи этого приложения до следующего цикла распределения.
  • Улучшение кода модуля Server.
    • Глобальное применение конструкторного внедрения зависимостей для решения проблемы циклической зависимости. - Улучшение логики проверки состояния экземпляров задач для предотвращения потенциальных повторных распределений.
  • Улучшение дизайна индексов таблиц данных.## Исправление ошибок 🐛
  • Исправлена ошибка, вызванная конкурентным обновлением, которая приводила к аномалиям в состоянии узлов вложенного рабочего процесса. (#465)

Совместимость 👀

  • Улучшена совместимость с версией 4.1.x.
Последнее сообщение коммита: Merge pull request #531 from PowerJob/4.2.1-main
06.03.2025 07:39
GitLife Service Account

Основной фреймворк PowerJob

Возможности 🚀

  • Поддержка динамических логов, позволяющая использовать конфигурацию консоли для изменения используемого Logger и уровня логирования для Job.
    • Поддерживает 4 типа логирования: SERVER (лог сервера, по умолчанию), LOCAL (локальный лог), STDOUT (системный вывод) и NULL (пустое реализация)
    • Поддерживает 5 уровней логирования: DEBUG, INFO, WARN, ERROR и OFF
    • Совет по использованию: вначале можно использовать лог сервера для отладки, а затем после стабилизации функциональности перейти на локальные логи и повысить уровень логирования, чтобы снизить нагрузку на коммуникацию и устранить производственные ограничения
  • Поддержка меток задач (Job#tag), которая может использоваться для классификации задач и вторичной разработки #358
  • Поддержка механизма распределения задач с приоритетом здоровья (по умолчанию) и случайного распределения #461
  • Обычная версия доработки, обновление зависимостей Spring и других

Исправленные ошибки 🐛

  • Устранена проблема, когда новые версии консоли не могут активировать/деактивировать задачи напрямую #455
  • Устранены проблемы совместимости с JDK17 #457

Совместимость 👀

Возможности 🚀

  • Новый выпуск: Динамически конфигурируемый процессор (использует широковещательные задачи для распространения конфигураций консоли на каждую рабочую станцию, что позволяет использовать его как простой центр управления конфигурациями): tech.powerjob.official.processors.impl.ConfigProcessor
  • Новое изменение: Поддержка скриптов CMD и PowerShell
Последнее сообщение коммита: Merge branch 'v4.2.0'
06.03.2025 07:39
GitLife Service Account

PowerJob-Framework

Основные возможности 🚀

  • Поддержка вложенных узлов и узлов принятия решений в рабочих процессах. #188 #266, Как использовать? -> wiki
  • Поддержка меток для запуска PowerJob-worker.
  • Поддержка настраиваемых оповещений для часто выполняемых задач. #370
  • Поддержка мониторинга жизненного цикла экземпляров задач. #208

Улучшения ⭐️

  • Оптимизация конфигурации Akka.
  • Оптимизация управления параллелизмом экземпляров задач.
  • Оптимизация внедрения контекста в рабочие процессы. #307
  • Замена дефолтного сериализатора Kyro на совместимый CompatibleFieldSerializer для повышения совместимости.
  • Поддержка ручной доставки instanceParams в консоли PowerJob. #381
  • Замена реализации cron. #382
  • Обновление версии библиотеки FastJSON до 1.2.83, JDBC драйвера MySQL до 8.0.28.

Исправления ошибок 🐛

  • Исправлено проблему с невозможностью отмены экземпляра задачи через OpenAPI. #324
  • Исправлено проблему с невозможностью получения правильного IP адреса первой сетевой карты методом NetUtils. #345
  • Исправлено возможное исключение при обработке большого количества задач модулем Map Processor. #355
  • Исправлено проблему с некорректным завершением одноразовых задач cron в рабочих процессах. #316
  • Исправлено проблему с повторным выполнением часто выполняемых задач. #375
  • Исправлено проблему с аномальным переходом состояний экземпляров задач. #404## Совместимость 👀
    Выпущенная версия совместима с 4.0.X, пожалуйста, запустите скрипт базы данных в соответствии с инструкциями.

PowerJob-OfficialProcessor

  • Добавлен модуль InjectWorkflowContextProcessor, как использовать? -> wiki
Последнее сообщение коммита: chore: update console resources
06.03.2025 07:38
GitLife Service Account

Возможности 🚀

  • Поддержка PostgreSQL
  • Улучшение передней панели управления, добавление информации о worker'ах (теги, последнее время пребывания в сети и т.д.), что облегчает выявление проблем с отсутствием соединения.

Исправления ошибок 🐛

  • Исправлено проблемное поведение выбора главного сервера в кластере
  • Исправлена ошибка NullPointerException при отсутствии подключенных worker'ов к серверу
  • Исправлено неправильное отображение списка worker'ов в передней панели управления
Последнее сообщение коммита: [release] v4.0.1
06.03.2025 07:38
GitLife Service Account

Основной фреймворк PowerJob

Возможности 🚀

  • Поддержка копирования задач и рабочих процессов, повышение эффективности конфигураций
  • Поддержка запуска нескольких powerjob-worker в одном приложении
  • Использование Kryo вместо Jackson-CBOR как основного сериализационного фреймворка, что увеличивает производительность связи и снижает вероятность возникновения конфликтов зависимостей
  • Улучшение базовых возможностей управления рабочими процессами, поддерживающее повторное импорт задач, личные параметры, отключение узлов и пропуск ошибок
  • Улучшение операционных возможностей управления рабочими процессами, поддерживающее маркировку успешного завершения узлов и местное повторное выполнение
  • Обновление интерфейса конфигурирования рабочих процессов, используя AntV-G6 для перезаписи компонента рабочего процесса и выделение его в отдельный модуль power-workflow

Совместимость 👀

Версия PowerJob 4.x является шагом вперёд к новому времени и целям, поэтому были сделаны значительные изменения. Из-за некоторых улучшений и изменений некоторые части стали несовместимыми. Но не стоит беспокоиться, мы предоставляем серию решений для облегчения перехода.

  • Краткий обзор изменений в PowerJob 4.x: Подробнее
  • Руководство по обновлению до PowerJob 4.x: Подробнее## Отзывы 🎉

Благодарю всех за ваш труд!

Официальный обработчик PowerJob

Перейти к руководству по использованию

Возможности 🚀

  • Новое: Spring SQL данные обработчик
  • Новое: Dynamic SQL данные обработчик
Последнее сообщение коммита: chore: fix github CI failed
06.03.2025 07:38
GitLife Service Account

Есть 99,99% вероятность того, что это последняя версия PowerJob в линейке v3.x. Проект прошел длительный процесс улучшения функциональности и исправления ошибок, поэтому этот выпуск будет очень стабильным. В ближайшее время планируется выход версии v4.x с множеством усовершенствований функциональности (включая рабочие процессы, разделение логики кластера, фильтрацию выполнителей и многое другое). Ожидайте новых обновлений!

Основной фреймворк PowerJob

Возможности 🚀

  • Поддержка настройки адреса IP для привязки (через параметры запуска JVM powerjob.network.local.address) для возможности работы через публичные сети

Официальный обработчик PowerJob

Перейти к руководству по использованию

Исправление ошибок 🐛

  • Исправлено возникновение ошибки ClassNotFoundError при сборке проекта
Последнее сообщение коммита: [release] v3.4.8
06.03.2025 07:38
GitLife Service Account

Основной фреймворк PowerJob

Возможности 🚀

  • Встроенные скриптовые процессоры ShellProcessor и PythonProcessor будут отключены и заменены официальными процессорами. Подробнее см. документацию: https://www.yuque.com/powerjob/guidence/official_processor

Исправление ошибок 🐛

  • Устранена проблема с некорректной работой скриптовых процессоров (#222)

Официальные процессоры PowerJob

Перейти к руководству по использованию

Возможности 🚀

  • Поддержка HttpProcessor
  • Поддержка ShellProcessor
  • Поддержка PythonProcessor
  • Поддержка FileCleanupProcessor

Дополнительные сведения см. в документации

Последнее сообщение коммита: [release] v3.4.7
06.03.2025 07:37
GitLife Service Account

Возможности 🚀

  • Поддержка отключения конфигурации swagger-ui
  • Добавлена поддержка нескольких языков для протокола HTTP (работа над версией для Python ведется, ожидайте!)
  • Добавлены API для фильтрации worker'ов, чтобы разработчики могли реализовать свою логику фильтрации

Исправление ошибок 🐛

  • Устранена проблема негативной обратной связи сервера при возникновении исключений базы данных, что приводило к смерти системы
  • Устранена проблема некорректного распределения задач сервером при передаче недопустимых параметров
Последнее сообщение коммита: [release] v3.4.6
06.03.2025 07:37
GitLife Service Account

Возможности 🚀

  • Поддержка указания сетевой карты по имени устройства

Исправление ошибок 🐛

  • Исправлена проблема повторного запуска задач после их завершения
  • Исправлена проблема невозможности сериализации JobQuery, приводящая к провалу запросов через OpenAPI
  • Исправлена проблема сбоев задач, несоответствующих ожиданиям (задача успешно выполнена, но система расценивает её как неудачную)
Последнее сообщение коммита: [release] v3.4.5
06.03.2025 07:37
GitLife Service Account

Возможности 🚀

  • Улучшена поддержка OpenAPI с возможностью запроса задач
  • Добавлена возможность настройки времени проверки задач через параметры запуска JVM -Dpowerjob.worker.status-check.normal.period

Исправление ошибок 🐛

  • Исправлено некорректное управление параллелизмом
  • Исправлено возникновение NullPointerException при очистке таблицы instance_info
Последнее сообщение коммита: [release] v3.4.4
1
https://api.gitlife.ru/oschina-mirror/KFCFans-PowerJob.git
git@api.gitlife.ru:oschina-mirror/KFCFans-PowerJob.git
oschina-mirror
KFCFans-PowerJob
KFCFans-PowerJob