Перейти к основному содержимому

Гарантированная доставка

«1С:Шина» реализует гарантированную доставку сообщений. Сообщение хранится в приложении «1С:Шины» до тех пор, пока «1С:Шина» не получит подтверждение о том, что получатель это сообщение принял. Рассмотрим реализацию на примере взаимодействия двух систем «1С:Предприятия» через «1С:Шина»:

Пример взаимодействия двух систем «1С:Предприятия» через «1С:Шина»

Отправитель, приложение «1С:Предприятия», отправляет сообщение. Оно сохраняется в информационной базе и после этого служебными фоновыми заданиями отправляется в приложение «1С:Шины». До тех пор пока не будет получено подтверждение от «1С:Шины», что сообщение получено, будут выполняться повторные попытки отправить сообщение. Только после получения подтверждения от «1С:Шины» сообщение удаляется из информационной базы.

Приложение«1С:Шины» получает сообщение. Оно сразу его сохраняет во внутреннем хранилище, чтобы обеспечить гарантированную доставку. После этого приложение «1С:Шины» отправляет сообщение через канал получателю. Сообщение будет храниться во внутреннем хранилище, пока получатель не подтвердит получение.

Получатель, приложение «1С:Предприятия», асинхронно, в фоне, получает это сообщение. Сохраняет его в информационной базе и после этого дает подтверждение получения сообщения «1С:Шине». Обработчики на встроенном языке запускаются уже после отправки подтверждения.