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

OSCHINA-MIRROR/thoughtworks-nodebpm

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
readme.md 4.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 29.11.2024 21:17 efb8239

Nodebpm

Высокопроизводительный динамический механизм процессов, управляемый рабочим процессом.



Nodebpm — это полнофункциональный микросервис для поддержки высокопроизводительного планирования задач на основе графов. Граф задач определяется протоколом BPMN версии 2 и может быть разработан с помощью редактора моделей Activiti (https://github.com/gmlove/activiti-modeling-app).

Проведя простое тестирование производительности, мы можем получить около 1000 rps только в рамках одного узлового процесса.

Производительность

В настоящее время поддерживаются следующие задачи:

  • стартовое событие;
  • конечное событие;
  • сервисная задача;
  • параллельный шлюз;
  • эксклюзивный шлюз.

Большинство других видов задач не предназначены для автоматического выполнения, поэтому в настоящее время их поддержка отсутствует.

Использование

Демонстрационная версия была развёрнута на heroku (Спасибо heroku.com!), и вы можете попробовать онлайн-версию здесь (https://node-bpm.herokuapp.com/).

Соответствующий редактор моделей Activiti был развёрнут здесь (https://node-bpm-modeler.herokuapp.com/).

Для тестирования выполните команду:

npm run test

Чтобы запустить службу, выполните команду:

npm start

Затем откройте http://localhost:3000/ и попробуйте.

Модифицированный редактор моделей Activiti можно использовать для разработки рабочих процессов, который можно найти здесь (https://github.com/gmlove/activiti-modeling-app). Основные изменения: 1. удалена авторизация; 2. предварительно определены некоторые фиктивные данные. С помощью модифицированной версии вы можете быстро запустить редактор без других компонентов Activiti. Но обратите внимание, что все функции, связанные с сохранением данных, не поддерживаются, поскольку теперь это чистое интерфейсное приложение.

API

  • POST /bp/: создать процесс.
  • PUT /bp/: создать новую версию существующего процесса.
  • GET /bp/: запросить существующие процессы.
  • GET /bp/:process-id: получить существующий процесс по идентификатору.
  • GET /bp/:process-id/versions/:version: получить существующий процесс по идентификатору и версии.
  • POST /bp/:process-id/versions/:version/run: запустить процесс.
  • POST /bp/test: провести тест против нового процесса.

Подробное описание использования этих API можно найти в тестовых примерах (https://github.com/gmlove/nodebpm/blob/master/routes/bp.spec.js).

Лицензирование

Если не указано иное, исходный код лицензирован под лицензией Apache 2.0 (./LICENSE).

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/thoughtworks-nodebpm.git
git@api.gitlife.ru:oschina-mirror/thoughtworks-nodebpm.git
oschina-mirror
thoughtworks-nodebpm
thoughtworks-nodebpm
master