##// END OF EJS Templates
Rewritten safe::debounce
Rewritten safe::debounce

File last commit:

r59:ba3ff79c2832 default
r163:4031b379ac68 v1.4.1 default
Show More
messaging.md
55 lines | 1.8 KiB | text/x-minidsrc | MarkdownLexer

Обмен сообщениями

Session

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

Сессия позволяет выполнить конфигурацию компонент обработки сообщений, до начала реального обмена и после окончания конфигурации выполнить метод start после которого начнется реальная обработка. Такой способ позволяет избежать ошибки и потерю сообщений по причине того, что часть компонент готова к работе и уже получает и отправляет сообщения, а часть еще не настроена.

// some provider related code
const connection = new StompService("ws://broker.329broker.com:15674/ws", { user: "user", pass: "secret" });
const session = connection.createSession();

// create and configure consumers and producers
const consumer = session.createConsumer("topic://notify");

// make event driven consumer
consumer.observe().on(msg => {
    // do something

    // mark the message as processed
    msg.ack();
});

const producer = session.createProducer("queue://requests");

// signal the session to start
session.start();

// await the session is started
await session.getCompletion();

start

Начинает сессию

createConsumer

createProducer

Consumer

Push-consumer

messages

Pull-consumer

read

Producer

post