Ищем простой постоянный буфер сообщений в Java

Я ищу простой постоянный буфер в качестве временного хранилища для сообщений JSON в приложении Java. Использование памяти должно быть относительно постоянным и не зависеть от количества сообщений в буфере. Было бы неплохо иметь возможность воспроизводить сообщения из какого-то момента в прошлом. Удаление старых сообщений должно быть эффективным. Должен быть в состоянии обрабатывать 1 млн сообщений в час.

В настоящее время мое приложение использует локального брокера RabbitMQ, который пересылает сообщения удаленному брокеру RabbitMQ. Когда удаленный брокер не работает или не принимает сообщения, использование памяти локальным брокером RabbitMQ увеличивается с увеличением длины очереди, и в конечном итоге он перестает принимать сообщения. Я хочу заменить это буфером на локальном диске и потоком, копирующим сообщения на удаленный брокер RabbitMQ.

У кого-нибудь есть идеи? Я посмотрел на Кафку, но это кажется излишним для моего случая использования -. MongoDB возможен, но меня беспокоит использование памяти.

7
задан David Tinker 13 August 2012 в 13:53
поделиться