Предложить продукт для обмена сообщениями с поддержкой кэширования для последней версии каждого сообщения - PullRequest
1 голос
/ 20 ноября 2011

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

  1. Издатель может публиковать сообщения по теме.
  2. Всякий раз, когда потребитель подписывается на тему, он должен сначала получить сообщения, опубликованные по этой теме (поскольку издатель начал публикацию) и далее.
  3. Сообщение может иметь несколько версий,Например, сообщение относится к информации для акций.Когда эта информация изменяется, издатель публикует версию 2 сообщения.В этом случае клиенты, которые подключаются позже, должны видеть только версию 2 сообщения, а не версию 1.

  4. Это не является строгим требованием, но если издатель хочет удалить какое-либо сообщение изкэш брокера, поэтому, если какой-либо клиент подключится позже, он не получит какое-то конкретное сообщение в потоке предыдущих сообщений.

Я смотрел на продукты Red Hat MRG и Apache Active MQ, но онипохоже, предоставляют эту функциональность.

Red Hat Mrg Experience-

Red Hat MRG имеет функцию обмена начальными значениями, которая кэширует только одно сообщение при обмене.Он также предлагает очереди с последними значениями, которые поддерживают версионные сообщения, но для них необходимо заранее создать очередь для потребителя.Я хочу что-то динамическое, чтобы, если подключается новый подписчик (о котором я заранее не знаю), он сможет отправлять последние версии всех сообщений, опубликованных по этой теме.Буду очень признателен за ваши входные данные / решения для приведенного выше варианта использования.

Ответы [ 3 ]

1 голос
/ 21 ноября 2011

Hornetq имеет эту функцию.Другие варианты (все коммерческие) включают Informatica Ultra Messaging, мои каналы Nirvana и утешение.

0 голосов
/ 31 декабря 2011

наконец нашел ответ Это возможно с помощью RedHat Mrg. Вы должны использовать только просмотр очередей и создать потребителя (не отправляющего ack), чтобы получить исходное изображение и обновления.

0 голосов
/ 20 ноября 2011

На самом деле MRG-M будет поддерживать то, что вам нужно.MRG-M имеет концепцию последней очереди значений.Последний тип очереди значений приводит к тому, что логически обновленные версии предыдущих сообщений перезаписывают старые сообщения.

...