
Асинхронный вызов
Если компонент службы вызывается асинхронно, клиент службы и поставщик службы выполняются в разных нитях. При асинхронном вызове вызывающий компонент в IBM® Process Server не блокируется на время обработки запроса поставщиком. Среда выполнения SCA немедленно возвращает управление клиенту, позволяя ему продолжить обработку.
В рамках асинхронных вызовов в SCA существует три типа стилей асинхронного взаимодействия: односторонний, отложенный ответ и запрос с обратным вызовом. При использовании всех трех типов асинхронного вызова среда выполнения SCA немедленно возвращает управление клиенту.
- Асинхронный с отложенным ответом, при котором клиент вызывает операцию поставщика служб, а затем продолжает работу. Впоследствии клиент вызывает поставщика служб для получения ответа.
- Асинхронный с обратным вызовом, при котором клиент вызывает операцию поставщика служб и указывает обработчик обратного вызова. Когда появляется ответ, среда выполнения SCA возвращает ответ клиенту путем вызова этого обработчика обратного вызова.
Асинхронный вызов SCA с отложенным ответом
Асинхронный вызов SCA с отложенным ответом удобно использовать, если клиенту требуется продолжить работу независимо от информации, получаемой в ответе.

Пример сценария

Клиент создает запрос к поставщику служб A и вызывает среду выполнения SCA. Среда выполнения SCA немедленно возвращает управление клиенту, позволяя ему продолжить обработку. Затем клиент может создать второй запрос к поставщику служб B.
Затем клиент вызывает среду выполнения SCA для сбора ответов. Они обрабатываются, и в результате пользователю возвращается окончательный ответ.
асинхронный вызов SCA с обратным вызовом.
При использовании данного стиля вызова вызывающий компонент (клиент) указывает обработчик, который будет использоваться для получения и обработки ответа. После отправки запроса клиентом нить, отправившая запрос, продолжает работу. Ресурсы среды выполнения SCA, связанные с этой нитью, освобождаются. При появлении ответа от поставщика служб используется новая нить среды выполнения SCA для вызова обработчика обратного вызова, который выполнит обработку, требуемую для клиента.

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