Я следую примеру vertx sockjs для передачи данных через мост шины событий SockJS.
Код отправки:
eventBus.publish(ebAddress, data);
Код потребителя:
var eb = new EventBus("http://localhost:8088/eventbus");
eb.onopen = function () {
eb.registerHandler("/ebaddress", function (err, msg) {
var str = "<code>" + msg.body + "</code><br>";
console.log(str);
})
}
Первый клиент работает нормально. Однако для второго подключенного клиента, поскольку он подписывается на тот же адрес eb, он не может получить самые последние данные, которые были отправлены первому клиенту. Это не будет проблемой, если данные будут поступать быстро. Но если временной интервал между точками данных большой, у второго клиента не будет данных в течение долгого времени до прибытия следующей новой точки данных.
Итак, может ли шина событий Vert.x сохранять сообщение, чтобы при каждом подключении нового клиента он мог сразу получить самые свежие данные?
Я новичок в Vert.x, поэтому буду благодарен за любые комментарии.
.send()
определенному компоненту через EventBus. Подробную информацию см. В документации vertx.io/docs/vertx-core/java / # _ the_event_bus_api < / а> - person suenda   schedule 31.07.2018