Я ищу решение для разделения кэша между двумя веб-приложениями tomcat, работающими на разных хостах. Кеш используется для синхронизации данных, поэтому он должен всегда быть актуальным между двумя экземплярами tomcat. (Извините, я не уверен на 100%, является ли правильной терминологией для этого требования "согласованность" или что-то более конкретное, например, наличие свойства ACID). Другое требование, конечно, заключается в том, что он должен быть быстрым, чтобы получить доступ к кешу, с примерно одинаковым количеством записей как чтения. У меня есть доступ к общей файловой системе, так что это важно.
Я рассмотрел что-то вроде ehcache, но для того, чтобы получить общий кеш между веб-приложениями, мне нужно было бы либо внедрить его поверх среды Terracotta, либо использовать новый сервер кеша ehcache. Первый (Terracotta) кажется излишним для этого, в то время как веб-сервер кеша не может обеспечить желаемую высокую скорость.
Другое решение, на которое я смотрел, - это создание чего-то простого на основе быстрого хранилища значений ключей, такого как Redis или memcachedb. Redis находится в оперативной памяти, но его легко настроить как централизованный кеш, а memcachedb - это постоянный кеш на диске, который может работать, потому что у меня общая файловая система.
Я ищу предложения о том, как наилучшим образом решить эту проблему. Решение должно быть относительно зрелой технологией, поскольку оно будет использоваться в производственной среде.
Заранее спасибо!