Size: a a a

Camunda BPM Group

2019 June 12

NM

Nurbek Mussabayev in Camunda BPM Group
Понял. Спасибо всем
источник

SD

Serg D. in Camunda BPM Group
Сервис таски из камунды можно пачками при помощи rest забирать. Размер пачки/таймаут - можно регулировать частоту обращения к камунде. Видел решения когда external таски самой камундой пушились в промежуточный брокер, а уже оттуда выбирались на исполнение, но в таком решении есть свои минусы.
источник

NM

Nurbek Mussabayev in Camunda BPM Group
Serg D.
Сервис таски из камунды можно пачками при помощи rest забирать. Размер пачки/таймаут - можно регулировать частоту обращения к камунде. Видел решения когда external таски самой камундой пушились в промежуточный брокер, а уже оттуда выбирались на исполнение, но в таком решении есть свои минусы.
По идее я также планировал сделать. Какие минусы вы видете ?
источник

SD

Serg D. in Camunda BPM Group
Возможно я не прав, я еще не сильно спец по камунде. Но вижу ситуацию так:  наверняка у вас будет ОДИН процесс, который будет выбирать ExternalTask и раскладывать по очередям/топикам, при запросе он будет указывать ОДИН workerID и ОДИН lock duration. Тут сразу вы теряете гибкость настройки локов  (разные таски могут выполняться разное время) и worker id (если что-то пошло не так, понять кто конкретно выполняет таск будет то еще расследование. Т.е. по хорошему еще какой-нибудь ELK и сквозное логирование), Если процессов будет несколько, то с добавлением новых тасков, вам придется править код или усложнять логику.   + сопровождение кластера брокера, мониторинг, репликации, персист и прочие радости.
Пока штатный REST выполняет свою задачу и с ним нет проблем, зачем усложнять? Использование любого инструмента должно решать определенную проблему, какую проблему будет решать промежуточный брокер?
источник

DK

Denis Kotov in Camunda BPM Group
А зачем экстернал таск вообще процессом выбирать?
источник

DK

Denis Kotov in Camunda BPM Group
Просто листнер на сервис таски глобальный, который параметры из таска шлёт в кафку
источник

SD

Serg D. in Camunda BPM Group
имеется в виду java/kotlin thread. видимо неудачно выразился
источник

DK

Denis Kotov in Camunda BPM Group
Denis Kotov
Просто листнер на сервис таски глобальный, который параметры из таска шлёт в кафку
Все работает как работает прямо щас + екстернал таск ещё и из очереди можно услышать
источник

SD

Serg D. in Camunda BPM Group
А в чем профит работать через очереди?
источник

DK

Denis Kotov in Camunda BPM Group
Коннектов избежать как раз
источник

SD

Serg D. in Camunda BPM Group
Это большая проблема?
источник

SD

Serg D. in Camunda BPM Group
Я так понял, что в кластере камунды можно выделить несколько нод с rest starter бута, которые будут только рест запросы обрабатывать, и не обрабатывать бизнес процессы
источник

DK

Denis Kotov in Camunda BPM Group
Serg D.
Это большая проблема?
Не, не большая
источник

SD

Serg D. in Camunda BPM Group
Если не ошибаюсь, у kafka в документации отмечено, что при определенном стечении обстоятельств возможны дубли сообщений. И это может стать проблемой в бизнес процессе
источник

DK

Denis Kotov in Camunda BPM Group
Это я хз, вроде как раз exactly one delivery гарантирует
источник

SD

Serg D. in Camunda BPM Group
one delivery да, но одно и то же сообщение может быть записано в топик дважды. если producer не получит подтверждение
источник

SD

Serg D. in Camunda BPM Group
https://www.confluent.io/blog/exactly-once-semantics-are-possible-heres-how-apache-kafka-does-it/

Durability in Kafka depends on the producer receiving an ack from the broker. Failure to receive that ack does not necessarily mean that the request itself failed. The broker can crash after writing a message but before it sends an ack back to the producer. It can also crash before even writing the message to the topic. Since there is no way for the producer to know the nature of the failure, it is forced to assume that the message was not written successfully and to retry it. In some cases, this will cause the same message to be duplicated in the Kafka partition log, causing the end consumer to receive it more than once.
источник

DK

Denis Kotov in Camunda BPM Group
Да хрен с ней, можно в реббит или куда там писать
источник

DK

Denis Kotov in Camunda BPM Group
Не принципиально
источник

SD

Serg D. in Camunda BPM Group
Кафка даёт писать и читать пачками. Не все брокеры дают такую возможность. Тут нужно учитывать производительность
источник