Поведение веб-службы Websphere Business Process Manager
Я пишу бизнес-процессы в BPEL для Websphere BPM 8.0, используя IBM Integration Designer. Некоторые из наших процессов содержат действия для вызова веб-сервисов. На днях я занимался поиском и устранением неисправностей процесса, который пытался вызвать веб-службу на неработающем сервере. Я заметил, что, согласно журналу, BPM пять раз пытался вызвать веб-сервис, прежде чем окончательно вернуть ошибку "тайм-аут соединения" в бизнес-процесс.
Я пытаюсь понять это повторное поведение. Бизнес-процесс не содержит явного цикла для повторного вызова веб-службы, и нет свойства бизнес-процесса, которое я вижу, чтобы указать поведение повторных попыток.
Я попробовал поискать в Google, и меня привели на несколько страниц об общем поведении отката транзакций. Мне не ясно, что такое поведение, связанное с транзакциями, и я не видел никаких настроек, таких как "попытаться каждую транзакцию пять раз".
Являются ли эти попытки веб-службы просто примером повторных попыток транзакции? Или это отдельно? Может ли кто-нибудь указать мне конкретную документацию по этому поведению "попробуйте n раз", или где я бы его настроить?
2 ответа
Как только вы работаете с продуктом IBM, вы заключаете сделку с WebSphere Application Server, это означает, что большая часть вашего кода является приложением j2ee.
5 раз - стандартное поведение.
В последних версиях BPM и WebSphere ESB (v8 или новее) логика повторения управляется непосредственно в модели визуального программирования.
Поэтому, если вам нужна точная настройка этого поведения, я предлагаю вам ввести компонент-посредник, который в вызове calloke предоставляет множество функций:
Узлы вызова и вызова службы> Повторить
Еще одним преимуществом этого подхода является то, что вы можете настроить различную логику повторения для каждого вызова. Другими словами, два разных вызова могут реализовывать два разных поведения в зависимости от бизнес-логики и ожиданий бэкэнд-системы.