Image

Category:

WAN distributed cache

Привет, Ув. Олл
Назрела необходимость воспользоваться подобием распределённого кеширования через WAN

Немного о системе:
довольно большая распределенная система, толстые клиенты, кластер в центре, ejb
Апдейты через ejb в центре, отсылка изменений асинхронно через publish-subscribe.
Так же существует иерархия: локальные удалённые центры с так называемыми прокси-серверами, которые помогают кешировать изменения рассылаемые через publish-subscribe
Т.е. в конечном итоге имеем архитектуру звезды с многими ответвлениями(клиентами) на концах

Недавно пришли к понимаю, что для данных не требующих быстрой рассылки изменений удобнее использовать обычный request-response. Как правило, эти данные изменяются редко.
Еще один важный момент: существуют ограничения по network-bandwidth(локальный сервер с центральным соединены WAN)
=> Хотелось бы кешировать данные в прокси-серверах и на самих клиентах
Посмотрел на несколько продуктов кеширования: Еhcache, JbossCache
В общем, решил использовать для локального кэша Еhcache + создать иерархию кеша вручную через ejb(по типу партийной системы :)
клиенту нужно данное - ищет у себя, при miss обращается в прокси-сервер, тот ищет у себя, при miss обращается выше, в центр хе-хе. Если данное нашлось на каком-то уровне, нужно выполнить проверку на валидность по дате последнего изменения(по дате в DB)

Хотелось бы услышать соображения на счет идеи. Может уже существуют какие-то готовые продукты?
Просто большинство distributed cache решений подразумевают что-то наподобие кеширования сессий в кластере, который сидит в одном LAN.

Заранее спасибо.